Xem mẫu
- TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM
MÔN HỌC
CÔNG NGHỆ PHẦN MỀM
Chương 3
Kỹ thuật yêu cầu RE
(Requirements Engineering)
CNPM/NN 1
- Kỹ nghệ yêu cầu RE
1. Yêu cầu
2. Quy trình xác định yêu cầu
2.1 Phân tích khả thi
2.2 Phát hiện và phân tích yêu cầu
Các kỹ thuật phát hiện yêu cầu
2.3 Đặc tả yêu cầu
2.4 Đánh giá yêu cầu
3. Quản lý yêu cầu
CNPM/NN 2
- 1. Yêu cầu (Requirement - IEEE)
Yêu cầu là gì?
Yêu cầu là điều kiện hay khả năng mà người dùng
cần để hoàn thành mục tiêu của mình
Yêu cầu có thể được ràng buộc bởi hợp đồng hay
văn bản
Có những yêu cầu ngầm định (implicit)
Một yêu cầu có thể được nhận biết (known, spoken)/
không nhận biết (forgotten, unspoken…)
CNPM/NN 3
- Kỹ nghệ yêu cầu (Requirements Engineering)?
Dùng kỹ thuật yêu cầu (Requirements engineering)
thay cho phân tích yêu cầu (Requirement Analysis)
Nhấn mạnh tới tính cộng tác và lặp lại.
Tạo tài liệu cho những kết quả quan sát.
Kiểm tra.
Nó còn nhấn mạnh tới vai trò của kinh nghiệm và tính
xã hội.
CNPM/NN 4
- CNPM/NN 5
- Phân loại yêu cầu
Có 3 loại yêu cầu:
Yêu cầu chức năng: chức năng dịch vụ hệ thống cung cấp
Yêu cầu phi chức năng: những ràng buộc về tiêu chuẩn,
thời gian, qui trình phát triển…, chủ yếu là những yêu cầu
về chất lượng.
Yêu cầu miền ứng dụng: phản ảnh những đặc trưng của
miền ứng dụng
Ràng buộc (constraint)
CNPM/NN 6
- Yêu cầu chức năng
Yêu cầu chức năng chỉ ra những gì hệ thống làm,
chúng thường quan hệ với những nguồn đặc trưng,
thường là các use-case hay những qui tắc nghiệp vụ
(business rule)
Một số yêu cầu chức năng
Chức năng tính toán
Chức năng lưu trữ
Chức năng tìm kiếm
Chức năng kết xuất
Chức năng backup, restore
Chức năng đa người dùng
Chức năng đa phương tiện…
CNPM/NN 7
- Ví dụ
Trong hệ thống quản lý thư viện
Người dùng có thể tìm kiếm, download, in những bài báo
Người dùng được cấp một vùng lưu trữ riêng để có thể
copy để lưu trữ tài liệu lâu dài…
CNPM/NN 8
- Yêu cầu phi chức năng
Một số yêu cầu phi chức năng
Độ tin cậy, thời gian đáp ứng, các yêu cầu về lưu trữ…
Yêu cầu của người sử dụng: dễ sử dụng, thân thiện
Phù hợp với các chính sách của tổ chức sử dụng hệ thống:
ngân sách
Các chuẩn được sử dụng, các công cụ CASE, ngôn ngữ
lập trình…
Yêu cầu tương thích với hệ thống khác
Các yêu cầu từ các tác nhân ngoài khác…
CNPM/NN 9
- Phân loại yêu cầu phi chức năng
Các yêu cầu về sản phẩm: hiệu năng, độ tin cậy…
Các yêu cầu của tổ chức (khách hàng hay người phát triển):
thời gian bàn giao, yêu cầu phù hợp với hệ thống cũ…
Các yêu cầu ngoài: được xác định từ các tác nhân từ bên
ngoài như các yêu cầu về luật pháp, yêu cầu tôn trọng tính
riêng tư, tương tác với hệ thống bên ngoài…
CNPM/NN 10
- Yêu cầu phi chức năng
CNPM/NN 11
- Ví dụ
Trong hệ thống quản lý thư viện
Yêu cầu sản phẩm: giao diện người dùng không chứa
frame và applet java
Yêu cầu tổ chức: quy trình phát triển hệ thống và tài liệu
phân phối phải phù hợp theo tiêu chuẩn “STAN-07” (sử
dụng ngôn ngữ, phương pháp thiết kế…)
Yêu cầu ngoài: hệ thống không được lộ thông tin của
khách hàng (tên, số tham chiếu…)
CNPM/NN 12
- Yêu cầu miền ứng dụng
Yêu cầu miền ứng dụng được xác định từ lãnh vực
ứng dụng của hệ thống, nó phản ánh các thuộc tính
và ràng buộc của lãnh vực ứng dụng.
Nó có thể là yêu cầu chức năng hoặc phi chức năng.
VD:
Trong hệ thống Quản lý thư viện, do vấn đề bản quyền vài
tài liệu phải được xóa ngay sau khi in
CNPM/NN 13
- 2. Quy trình RE
Phân tích khả thi (Feasibility analysis)
Phát hiện yêu cầu (Requirement Elicitation) và
phân tích
Một số kỹ thuật
Đặc tả yêu cầu (specification)
Thẩm định yêu cầu (validation)
CNPM/NN 14
- Quy trình RE
CNPM/NN 15
- 2.1. Phân tích khả thi
Phân tích khả thi cho biết hệ thống với những yêu
cầu xác định có thể thực hiện trong những điều kiện
về kỹ thuật, tài nguyên, ngân sách… Một số vấn đề:
Hệ thống có đóng góp vào mục tiêu của tổ chức hay
không?
Hệ thống có thể được xây dựng bằng cách sử dụng công
nghệ hiện tại và ngân sách cho phép?
Hệ thống có được tích hợp với các hệ thống khác đang sử
dụng hay không?...
CNPM/NN 16
- Phân tích khả thi
Những câu hỏi đặt ra để phân tích khả thi:
Vấn đề xử lý hiện tại như thế nào?
Hệ thống đề nghị cung cấp những tiện ích gì?
Nếu hệ thống không được cài đặt thì sao?
Hệ thống đề xuất sẽ trợ giúp nghiệp vụ theo cách thức nào?
Những rắc rối về việc tích hợp là gì?
Có cần kỹ thuật mới không?
Cần có những kỹ năng gì để thực hiện và sử dụng?
CNPM/NN 17
- 2.2. Phát hiện yêu cầu
Nhân viên kỹ thuật và khách hàng cùng hợp tác để xác định:
các dịch vụ mà hệ thống cung cấp, các ràng buộc vận hành
của hệ thống…
Nguồn thông tin: tài liệu, stakeholders, đặc tả của hệ thống
tương tự…
Phải bao gồm những người có liên quan (Stakeholder) là:
Người sử dụng cuối
Người quản lý
Người phụ trách kỹ thuật
Chuyên gia lĩnh vực…
CNPM/NN 18
- Stakeholder – Vấn đề
Stakeholder không rõ những gì họ thật sự muốn
Stakeholder diễn đạt yêu cầu theo những thuật ngữ riêng của
họ
Những stakeholder có thể có những yêu cầu tranh chấp
Nhân tố quyền lực và tổ chức ảnh hưởng tới yêu cầu hệ thống
Những yêu cầu có thể thay đổi trong quá trình phân tích, có
thể xuất hiện những nhân tố mới, những thay đổi về môi
trường nghiệp vụ
CNPM/NN 19
- Các kỹ thuật thường dùng
Khung nhìn (Viewpoint)
Phỏng vấn (interview)
Kỹ thuật đặc tả ứng dụng thuận tiện FAST (Facilitated
Application Specification Techniques)
Triển khai chức năng chất lượng QFD (Quality Function
Deployment)
Phiên làm việc Brainstorm
CNPM/NN 20
nguon tai.lieu . vn