Xem mẫu

  1. 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
  2. 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
  3. 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
  4. 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
  5. CNPM/NN 5
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. Yêu cầu phi chức năng CNPM/NN 11
  12. 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
  13. 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
  14. 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
  15. Quy trình RE CNPM/NN 15
  16. 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
  17. 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
  18. 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
  19. 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
  20. 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