Bài giảng Nhập môn Công nghệ phần mềm: Chương 6 - ĐH Bách khoa TP HCM
lượt xem 7
download
Mời các bạn tham khảo bài giảng Nhập môn Công nghệ phần mềm: Chương 6 - Nắm bắt yêu cầu phần mềm sau đây để bổ sung thêm kiến thức về nhiệm vụ của phân tích yêu cầu chức năng, các artifacts cần tạo ra, các worker tham gia nắm bắt yêu cầu, qui trình nắm bắt yêu cầu phần mềm và một số kiến thức khác.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Nhập môn Công nghệ phần mềm: Chương 6 - ĐH Bách khoa TP HCM
- Chương 6 Nắm bắt yêu cầu phần mềm 6.1 Nhiệm vụ của phân tích yêu cầu chức năng 6.2 Các artifacts cần tạo ra 6.3 Các worker tham gia nắm bắt yêu cầu 6.4 Qui trình nắm bắt yêu cầu phần mềm 6.5 Tìm các actor và use-case 6.6 Lập thứ tự ưu tiên các use-case 6.7 Chi tiết hóa từng use-case 6.8 Cấu trúc lại mô hình use-case 6.9 Thiết kế prototype giao diện cho từng use-case 6.10 Kết chương Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 1 6.1 Nhiệm vụ của nắm bắt yêu cầu phần mềm Nhiệm vụ của nắm bắt yêu cầu phần mềm là xây dựng và duy trì mô hình use-case ₫ể ₫ặc tả góc nhìn từ ngoài vào hệ thống, cho ta thấy tất cả các chức năng mà phần mềm phải ₫áp ứng cho thế giới bên ngoài, ai là người thực hiện từng chức năng tương ứng. Các ₫iểm bắt ₫ầu cho hoạt ₫ộng nắm bắt yêu cầu có thể là : Từ mô hình nghiệp vụ (business model) cho các ứng dụng nghiệp vụ. Từ mô hình lĩnh vực (domian model) cho các ứng dụng nhúng. Từ ₫ặc tả yêu cầu phần mềm cần xây dựng nhưng ₫ược tạo rồi bởi nhóm khác và/hoặc dùng phương pháp ₫ặc tả khác, theo ₫ịnh dạng khác. Từ 1 ₫iểm nào ₫ó nằm giữa các ₫iểm xuất phát trên. Từ không có gì. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 2
- 6.2 Các artifacts cần tạo ra Mô hình use-case = hệ thống các use-case, nó chứa : các package, nếu có, mỗi package chứa : à các lược ₫ồ use-case, mỗi lược ₫ồ chứa : à 1 số Actor : người/hệ thống ngoại/thiết bị ngoài tương tác với hệ thống phần mềm. à 1 số Use-case : các chức năng có nghĩa mà hệ thống cung cấp cho actor. Thông tin chi tiết kèm theo từng use-case có thể là bảng ₫ặc tả chi tiết, flow of events, các yêu cầu phi chức năng kèm theo. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 3 6.2 Các artifacts cần tạo ra à các yêu cầu ₫ặc biệt của từng use-case, hay của toàn bộ các use-case Đặc tả kiến trúc hệ thống phần mềm theo góc nhìn use-case (view of use-case model) Bảng thuật ngữ chung. Các prototype giao diện với user (user-interface prototype) Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 4
- 6.2 Các artifacts cần tạo ra 1 Use-Case Model Use-Case System * * Use - Case Actor Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 5 6.2 Các artifacts cần tạo ra Ký hiệu miêu tả các phần tử trong lược ₫ồ use-case : Actor : Use-case : Note : Mối quan hệ giữa 2 phần tử : Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 6
- 6.2 Các artifacts cần tạo ra Mỗi lược ₫ồ use-case sẽ chứa 1 số actor, 1 số use-case, 1 số note và mối quan hệ giữa chúng : Mối quan hệ actor − actor thường chỉ là tổng quát hóa, actor tổng quát sẽ chứa những tính chất chung mà các actor con ít nhất sẽ có. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 7 6.2 Các artifacts cần tạo ra Mối quan hệ actor − use-case thường chỉ là quan hệ kết hợp (association). Actor và use-case 1 có quan hệ nhau, nhưng chưa cụ thể hóa mối quan hệ. Actor chủ ₫ộng quan hệ với use-case 2 và không chờ ₫ợi kết quả hay phản ứng. use-case 3 chủ ₫ộng quan hệ với actor và không chờ ₫ợi kết quả hay phản ứng. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 8
- 6.2 Các artifacts cần tạo ra Mối quan hệ use-case − use-case thường là 1 trong 3 mối quan hệ : tổng quát hóa, include, extend : usecase 1 chứa những ₫iểm chung mà usecase 2 và các usecase con khác sẽ có. Trong thời gian thực hiện usecase 1 có thể ta sẽ phải thực hiện usecase 3. Trong thời gian thực hiện usecase 1 ta luôn phải thực hiện usecase 4. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 9 6.3 Các worker tham gia nắm bắt yêu cầu Customer Use-case User-Interface Architect System Specifier Designer Analyst Domain Chịu trách nhiệm về Chịu trách nhiệm về Expert Chịu trách nhiệm về Chịu trách nhiệm về Use-Case Actor Glossary Use-Case User Interface Architecture Model Prototype Description Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 10
- 6.4 Qui trình nắm bắt yêu cầu phần mềm Find Actors & Structure the System Analyst Use-Case Model Use-Cases Prioritize Architect Use-Cases Use-Case Detail a Specifier Use-Case Prototype User-Interface Designer User-Interface Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 11 6.5 Tìm các actor và use-case Tìm các actor của hệ thống phần mềm Việc tìm các actor phụ thuộc vào ₫iểm xuất phát : • nếu xuất phát từ mô hình nghiệp vụ hay lĩnh vực của hệ thống thì việc tìm actor rất ₫ơn giản : dựa vào mô hình có sẵn, rút trích các actor của mô hình ₫ó. • Còn nếu xuất phát từ các ý niệm mơ hồ, thậm chí là null, thì hãy cố gắng trả lời các câu hỏi sau, nội dung trả lời sẽ chứa 1 hay nhiều actor : Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 12
- 6.5 Tìm các actor và use-case Tìm các actor của hệ thống phần mềm à Ai là người sử dụng chức năng chính yếu của hệ thống ? à Ai phải thực hiện công việc bảo dưỡng, quản trị và giữ cho hệ thống hoạt ₫ộng tốt theo thời gian ? à Hệ thống sẽ sử dụng, ₫iều khiển thiết bị phần cứng nào ? à Hệ thống cần tương tác với những hệ thống khác không ? Chúng là ai ? à Ai hoặc phần tử nào quan tâm ₫ến kết quả ₫ược tạo ra bởi hệ thống phần mềm ? à Ai hoặc phần tử nào chịu ảnh hưởng bởi kết quả ₫ược tạo ra bởi hệ thống phần mềm ? Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 13 6.5 Tìm các actor và use-case Tìm các use-case của hệ thống phần mềm Việc tìm các use-case cũng phụ thuộc vào ₫iểm xuất phát : • nếu xuất phát từ mô hình nghiệp vụ hay lĩnh vực của hệ thống thì việc tìm use-case rất ₫ơn giản : dựa vào mô hình có sẵn, rút trích các use-case của mô hình ₫ó. • Còn nếu xuất phát từ các ý niệm mơ hồ, thậm chí là null, thì hãy duyệt tuần tự từng actor tìm ₫ược, ứng với mỗi actor hãy cố gắng trả lời các câu hỏi sau, nội dung trả lời sẽ chứa 1 hay nhiều use-case : Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 14
- 6.5 Tìm các actor và use-case Tìm các use-case của hệ thống phần mềm à Actor này yêu cầu chức năng gì của hệ thống ? à Actor này có phải ₫ọc/tạo/xóa/hiệu chỉnh/lưu thông tin nào của hệ thống, chúng là gì ? à Hệ thống có cần cảnh báo những sự kiện nào cho actor này, chúng là gì ? à Actor này có cần phải báo hiệu cho hệ thống về vấn ₫ề nào không ? Chúng là gì ? à Hệ thống có phải hỗ trợ 1 số công việc thương nhật cho actor này, chúng là những công việc gì ? à … Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 15 6.5 Tìm các actor và use-case Nhận dạng các mối quan hệ giữa các phần tử tìm ₫ược à Cố gắng nhận dạng các mối quan hệ giữa các actor-actor, actor- usecase, usecase-usecase ìm ₫ược rồi phát họa lược ₫ồ use-case kết quả. User Maint enance POS Login Store Manager
- 6.6 Lập thứ tự ưu tiên các use-case Hệ thống phần mềm lớn thường cung cấp nhiều use-case, việc hiện thực tất cả use-case 1 lần duy nhất sẽ tốn nhiều thời gian, kinh phí,… dẫn ₫ến ₫ộ rủi ro cao. Do ₫ó thường ta sẽ phát triển phần mềm theo cơ chế lập thông qua nhiều version với chức năng tăng dần : verion 1 chỉ chứa 1 số ít các chức năng chính yếu, version 2 tăng cường theo 1 số tính năng cần thiết, … ₫ến khi xây dựng ₫ược version n chứa ₫ầy ₫ủ các chức năng mong muốn. Để phục vụ việc phát triển phần mềm theo cơ chế tăng tiến như trên, ta cần ₫ánh giá từng use-case, dựa vào 1 số tiêu chí ₫ể sắp ₫ộ ưu tiên cho các usecase, sắp xếp các use-case có thứ tự theo ₫ộ ưu tiên giảm dần. Việc phát triển phần mềm sẽ tuần tự hiện thực từng use-case, từng nhóm use-case theo thứ tự từ trôn xuống. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 17 6.7 Chi tiết hóa từng use-case Nhiệm vụ của chi tiết hóa từng use-case là xây dựng các artifacts sau ₫ể miêu tả use-case ở mức ₫ộ cụ thể, rõ ràng và chi tiết như có thể : Bảng ₫ặc tả use-case chứa những thông tin như : tên, nhiệm vụ, tầm vực, mức ưu tiên, actor chính, ₫iều kiện ₫i trước,… Thông tin quan trọng nhất trong bảng ₫ặc tả use-case là “flow of events” của use-case ₫ó, nó gồm : à 1 kịch bản chính miêu tả thứ tự các hoạt ₫ộng cần tiến hành ₫ể thực hiện use-case. Đây là kịch bản ₫ược ₫ánh giá là thường xảy ra nhất. à 1 số kịch bản phụ. Các lược ₫ồ ₫ộng ₫ể thể hiện hành vi ₫ộng trong khi thực hiện use-case tương ứng. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 18
- 6.7 Chi tiết hóa từng use-case Các kịch bản thi hành use-case phụ có thể xảy ra vì các lý do sau : Actor có thể chọn thực hiện 1 nhánh trong nhiều nhánh. Nếu hơn 1 actor dùng use-case, mỗi use-case có thể kích hoạt việc thực hiện 1 kịch bản riêng, và mỗi kịch bản có thể ảnh hưởng lẫn nhau. Hệ thống có thể phát hiện lỗi nhập thông tin từ user hay lỗi trong lúc thực hiện các hoạt ₫ộng. 1 số tài nguyên không hoạt ₫ộng tốt làm use-case không hoàn tất công việc ₫úng. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 19 6.7 Chi tiết hóa từng use-case Xây dựng các lược ₫ồ thể hiện hành vi ₫ộng cho use-case Khi sự tương tác giữa actor và các use-case liên quan có ₫ộ phức tạp cao, ta nên dùng dạng ₫ặc tả trực quan ₫ể diễn tả hành vi ₫ộng, nó sẽ giúp người phân tích hiiễu rõ hơn về use-case : Lược ₫ồ trạng thái ₫ể miêu tả sự chuyển trạng thái của thành phần phần mềm trong quá trình thực hiện use-case. Lược ₫ồ cộng tác ₫ể miêu tả sự cộng tác giữa các ₫ối tượng use-case và ₫ối tượng actor trong việc thực hiện use-case. Lược ₫ồ hoạt ₫ộng ₫ể miêu tả thuật giải vĩ mô ₫ể thực hiện use-case. Không nên lạm dụng các lược ₫ồ ₫ộng vì ₫ây là ngôn ngữ của người phát triển, user và khách hàng khó lòng hiểu nổi. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 20
- 6.8 Cấu trúc lại mô hình use-case Mô hình use-case ban ₫ầu thường còn rất lộn xộn, chưa ₫ầy ₫ủ, khó ₫ọc và duy trì. Do ₫ó, ta phải mô hình lại nó thông qua các hoạt ₫ộng sau : Nhận dạng actor tổng quát chứa các tính chất chung của nhiều actor khác. Nhận dạng usecase tổng quát chứa các tính chất chung của nhiều usecase khác. Nhận dạng các usecase nới rộng của từng usecase chính. Nhận dạng các usecase phụ thêm (include) của từng usecase chính. Di dời, phân phối lại các actor và use-case vào các lược ₫ồ use-case sao cho chúng thỏa mãn tính kết dính cao nhất và ₫ộ phụ thuộc ít nhất. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 21 6.9 Thiết kế prototype giao diện cho từng use-case Mỗi use-case là 1 chức năng mà phần mềm phải ₫áp ứng với bên ngoài. Thường ₫ể thực hiện 1 use-case, ta cần 1 hay nhiều ₫ối tượng giao diện, mỗi ₫ối tượng giao diện sẽ giúp actor tương tác ₫ược với phần mềm hầu cung cấp thông tin, chọn lựa option, kích hoạt chức năng chạy, xem và kiểm tra kết quả do phần mềm tạo ra. Dựa vào ₫ặc tả chi tiết của use-case, ta sẽ phát họa sơ lược (prototype) phần tử giao diện cho use-case. Lưu ý, prototype hoàn toàn mới ở mức ý niệm, chưa kết hợp với ₫ối tượng giao diện của công nghệ hiện thực cụ thể nào. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 22
- 6.10 Kết chương Chương này ₫ã giới thiệu các thông tin cơ bản về workflow phân tích yêu cầu chức năng như nhiệm vụ, các artifact cần tạo ra, các worker tham gia, qui trình thực hiện. Chương này còn giới thiệu chi tiết về hoạt ₫ộng phân tích kiến trúc phần mềm và hoạt ₫ộng phân tích từng use-case chức năng. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 6 : Nắm bắt yêu cầu phần mềm © 2010 Slide 23
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Nhập môn Công nghệ thông tin: Lab 1 - Th.S Dương Thành Phết
13 p | 225 | 44
-
Bài giảng Nhập môn Công nghệ thông tin: Hướng dẫn bài tập 3 - Th.S Dương Thành Phết
59 p | 170 | 21
-
Bài giảng Nhập môn Công nghệ thông tin: Hướng dẫn bài tập 1 - Th.S Dương Thành Phết
17 p | 157 | 20
-
Bài giảng Nhập môn Công nghệ phần mềm: Chương 3 - Nguyễn Thị Minh Tuyền
77 p | 146 | 18
-
Bài giảng Nhập môn công nghệ phần mềm - Chương 1: Tổng quan về công nghệ phần mềm (2011)
49 p | 105 | 14
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 9 - Ngô Chánh Đức
32 p | 122 | 13
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 2 - Ngô Chánh Đức
60 p | 123 | 11
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 3 - Ngô Chánh Đức
35 p | 90 | 11
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 4 - Ngô Chánh Đức
45 p | 111 | 10
-
Bài giảng Nhập môn công nghệ phần mềm - Chương 1: Tổng quan về công nghệ phần mềm
35 p | 31 | 9
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 1 - Ngô Chánh Đức
13 p | 101 | 8
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 5 - Ngô Chánh Đức
51 p | 76 | 8
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 7 - Ngô Chánh Đức
26 p | 112 | 8
-
Bài giảng Nhập môn Công nghệ phần mềm: Giới thiệu tổng quan về nội dung học phần - TS. Trần Ngọc Bảo
32 p | 126 | 7
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 6 - Ngô Chánh Đức
36 p | 91 | 6
-
Bài giảng Nhập môn Công nghệ thông tin 1: Chương 8 - Ngô Chánh Đức
29 p | 75 | 6
-
Bài giảng Nhập môn Công nghệ thông tin 1: Giới thiệu môn học - Ngô Chánh Đức
4 p | 107 | 5
-
Bài giảng Nhập môn công nghệ phần mềm - Chương 1: Nguyễn Văn Danh
9 p | 81 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn