Sử dụng những kỹ thuật mang tính hệ thống để đảm bảo yêu cầu:.. Complete ( đầ y đủ ).[r]
(1)(2)Nội dung trước Mô hình hóa u cầu:
Lược đồ Use-case
Khái niệm Actor Usecase Ví dụ
Mơ hình hóa dịng liệu Use-case Mơ hình hóa dòng liệu Use-case
Giới thiệu Mơ hình DFD
(3)Nội dung Quản lý yêu cầu:
Giới thiệu
Chi tiết quản lý yêu cầu Các kỹ
Các kỹ
(4)Giới thiệu
Một hoạt động Mục tiêu: tìm cần xây dựng
Giao tiếp người dùng người phát triển,
Khơng có ký hiệu phức tạp (ngoại trừ lĩnh vực chuyên môn) Thường dùng ngôn ngữ tự nhiên
Hợp đồng Hợp đồng
Các cách thức để xác định yêu cầu Các cách thức để chuẩn hóa yêu cầu
Scenarios, Use Cases, Mockups / Prototypes, Feature, Lists
Stakeholders
(5)Thế quản trị yêu cầu
Là tiến trình tìm hiểu, sưu liệu quản lý các yêu cầu.
Sử dụng kỹ thuật mang tính hệ thống để đảm bảo yêu cầu:
Complete (đầy đủ)
(6)Thế quản trị u cầu Diễn tả văn xi,
Tìm hiểu người dùng muốn Tổ chức thông tin lại
Sưu liệu thông tin Sưu liệu thông tin
Theo vết thay đổi thông tin Quản lý tất thay đổi
Đáp ứng nhu cầu người dùng cuối
(7)Thế quản trị yêu cầu
Hầu hết tổ chức phát triển phần mềm làm việc theo cách thức khác
Nhưng thường chúng không mang tính hình thức mang tính khơng thống từ dự án qua dự án khác
CMM Level vs CMM Level
(8)Thế yêu cầu
Là khả phần mềm được người dùng yêu cầu, để giải một vấn đề nhằm đạt mục tiêu đó
(9)Nguồn yêu cầu: Khách hàng
Phỏng vấn khách hàng
Người trả tiền cho Những stakeholders
• Người sử dụng • Người quản lý
Vấn đề:
Khách hàng khơng biết họ muốn Khách hàng khơng biết họ muốn
• Phần mềm khái niệm trừu tượng phức tạp KH thay đổi ý kiến
KH khơng có khả diễn tả nhu cầu theo thuật ngữ chuyên mơn
• Giao tiếp người chun làm p.mềm <> người bình thường
Các kỹ thuật
(10)Nguồn yêu cầu: thị trường
Đánh giá sản phẩm cạnh tranh Những trước thực hiện?
Nơi nơi thích hợp cho
Lưu ý vấn đề quyền, thương hiệu sáng chế Tự đánh giá khả
Tự đánh giá khả
(11)Nguồn yêu cầu: thị trường Khảo sát thị trường
Phỏng vấn khách hàng (cũ, tiềm năng, …)
Lưy ý tới quảng cáo, tạo nhu cầu thị trường Quan tâm tới xu hướng phát triển thị trường Quan tâm tới xu hướng phát triển thị trường
Vấn đề
Người ta khơng biết người ta muốn gì? Thị trường thay đổi nhanh
(12)Nguồn yêu cầu: chuẩn
Các chuẩn hệ thống chuyển đổi
System standard, file formats, network protocols Usability standards
Domain standards
Official standards
written by a standards body written by a standards body
• ANSI
• ISO (e.g Unicode)
• IEEE (e.g Posix)
Industry standards
Java, Dot-Net
(13)Các loại yêu cầu Chức năng
Features
User interface Input/Output
Phi chức năng Phi chức năng
Hướng người dùng
• Performance, Precision, Reliability
Hướng người phát triển
(14)Những vấn đề quản trị yêu cầu Nhiều hệ thống thường
Chuyền giao trễ vượt ngân sách cho phép Không đáp ứng đầy đủ yêu cầu người dùng Không hoạt động hiệu
Bước để giải vấn đề Bước để giải vấn đề
xác định nguyên nhân cốt lõi
Ví dụ nguyên nhân cốt lõi
Thiếu liệu người dùng
(15)Tăng chi phí yêu cầu sai thiếu sót 0.1
0.5 1
Requirements
Design
Coding
2 5 20
Tỷ lệ chi phí để sửa chữa theo giai đoạn
Unit testing
Acceptance - testing
(16)Thế quản trị yêu cầu tốt Ngăn:
Vượt chi phí thời gian Huỷ dự án
Một dự án thành công cần yếu tố:
Sự quan tâm người dùng Sự quan tâm người dùng Hỗ trợ người quản lý
(17)Chất lượng yêu cầu: tính ổn định
Ổn định
Khơng có mâu thuẫn
Chương trình khơng thể hoạt động u cầu
mâu thuẫn
Khó đảm báo
Số lượng yêu cầu lớn
Mâu thuẫn tiềm ẩn
Bản chất VĐ: mâu thuẫn dẫn đến thứ … Vấn đề
Khó giải thích mâu thuẫn cho khách hàng
(18)Chất lượng yêu cầu: quản lý được
Tài nguyên phải đáp ứng yêu cầu
Có thể làm thời gian
Với chi phí cho phép
Trong khả (kỹ năng) có thể?
Quản lý rủi ro
Xếp độ ưu tiên yêu cầu
Xếp độ ưu tiên yêu cầu
Phải có thay khơng hoạt động
Mở vấn đề để nói đến yêu cầu có
thể làm
Quản lý độ phức tạp
Đừng làm thứ lúc
(19)Chất lượng yêu cầu: đặc tả
Càng xác chi tiết tốt Không tốt
“program shall be fast”
“it takes a number as input”
Tốt
“program shall give a response in less than 1s” “program shall give a response in less than 1s” “it takes a 16-bit signed integer as input”
Những định nghĩa
Luôn ý tưởng tốt
Vd: “by 'Number', we always mean a 16-bit signed integer”
(20)Chất lượng yêu cầu không thiên cài đặt
Thiên cài đặt:
Đưa thông tin thiết kế
Đưa thông tin mã nguồn
Sử dụng thuật ngữ chuyên môn
Không dùng từ ngữ chuyên môn kỹ thuật
Bạn muốn tập trung vài CÁI GÌ
Bạn muốn tập trung vài CÁI GÌ
Bỏ LÀM THẾ NÀO lại phần sau
Ví dụ khơng tốt
“store the checked-out books in an array”
“calculate the square root with Newton's algorithm” Ví dụ tốt