Bài giảng Nhập môn Công nghệ phần mềm - Chương 5: Dùng UML để xây dựng các artifacts
Bạn đang xem tài liệu "Bài giảng Nhập môn Công nghệ phần mềm - Chương 5: Dùng UML để xây dựng các artifacts", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_nhap_mon_cong_nghe_phan_mem_chuong_5_dung_uml_de_x.pdf
Nội dung text: Bài giảng Nhập môn Công nghệ phần mềm - Chương 5: Dùng UML để xây dựng các artifacts
- Chương 5 Dùng UML ₫ể xây dựng các artifacts 5.1 Ngôn ngữ mô hình UML 5.2 Các phầntử cơ bảncủaUML 5.3 Đặctả phầnmềm thông qua nhiềumôhình 5.4 Các lược ₫ồ 5.5 Kếtchương Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 1 5.1 Ngôn ngữ mô hình UML Ngôn ngữ UML là ngôn ngữ₫ồhọa, nó cho phép ₫ặctả, xây dựng, lậptàiliệuvàhiểnthị trực quan hầuhết các artifacts củahệ thống mà ta có ý ₫ịnh tin học hóa. Ngôn ngữ UML cho phép miêu tả 4 thành phầnsau: Các phầntử cơ bảncủamôhìnhbấtkỳ (modeling elements). Các mốiquanhệ giữa các thành phần (relationships). Các cơ chế nớirộng phầntử gốc ₫ã có (extensibility mechanisms) Các lược ₫ồ ₫ể miêu tả từng mô hình (diagrams). Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 2
- 5.2 Các phầntử cơ bảncủaUML Các phầntử cơ bảncủamôhìnhbấtkỳ (modeling elements) có thể thuộc4 loạisau: Các phầntử cấu trúc : class, interface, component, node, Các phầntử thể hiện hành vi, trạng thái Các phầntử phụcvụ việcgộp nhóm : package, subsystem Các phầntử linh tinh khác : note Để thể hiện các phầntử cơ bản, ta dùng 1 trong 2 ký hiệu ₫ồ họa UML sau : Hình chữ nhật Vòng tròn Kích thước, màu nền, màu và ₫ộ dày ₫ường viềntự tùy chỉnh theo yêu cầucụ thể. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 3 5.2 Các phầntử cơ bảncủaUML Giữa các thành phầncóthể có 4 loại quan hệ sau : Tổng quát hóa (generalization) Phụ thuộc (dependency) Hiệnthực (Realization) Kếthợp (Association) Để thể hiệnmối quan hệ giữa2 phầntử, ta dùng ₫oạnthẳng (ký hiệu ₫ồ họathứ 3 củaUML) Màu và ₫ộ dày ₫oạnthẳng tự tùy chỉnh theo yêu cầucụ thể. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 4
- 5.2 Các phầntử cơ bảncủaUML Dùng 2 ký hiệugốc ₫ể miêu tả nhiềuloạiphầntử mô hình khác nhau sẽ dễ gây ra sự nhặpnhằng, nhầmlẫn, không trong sáng, rõ ràng. Tương tự chỉ dùng ký hiệu ₫oạnthẳng ₫ể miêu tả nhiềumối quan hệ₫adạng khác nhau cũng sẽ dễ gây ra sự nhặpnhằng, nhầmlẫn, không trong sáng, rõ ràng. Để khắcphụcnhược ₫iểm này, UML còn cung cấpcơ chế nới rộng. Cơ chế nớirộng là 1 hay nhiềuhoạt ₫ộng tăng cường thông tin vào ký hiệugốc ₫ể nó rõ nghĩahơn, dễ hiểuhơn. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 5 5.2 Các phầntử cơ bảncủaUML Có 3 cơ chế nốirộng chính ₫ược dùng : Thêm thông tin ràng buộc vào phầntử gốc (constraint). Gán giá trị cứng (tagged value) như version, release Định khuôn (stereotype) thông qua việctăng cường thông tin dạng ₫ồ họa hay vănbản. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 6
- 5.2 Các phầntử cơ bảncủaUML Chủ yếu dùng cơ chế stereotype : Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 7 5.3 Đặctả phầnmềm thông qua nhiềumôhình Phầnmềm ₫ược ₫ặctả tương ₫ối ₫ầy ₫ủ thông qua nhiềumô hình. Mỗimôhìnhchothấy toàn thể phầnmềmnhưng chỉ theo 1 góc nhìn xác ₫ịnh. Mỗimôhình₫ượccấu thành từ nhiềulược ₫ồ. Mỗilược ₫ồ cho thấy1 bộ phậnphầnmềm theo mô hình liên quan. UML cho phép ₫ặctả 9 loạilược ₫ồ phổ dụng, các lược ₫ồ này miêu tả 2 góc nhìn khác nhau về phầnmềm. Góc nhìn tĩnh : lược ₫ồ use-case (use-case diagram), lược ₫ồ class (class diagram), lược ₫ồ thành phầnhiệnthực (component diagram), lược ₫ồ ₫ốitượng (object diagram), lược ₫ồ triểnkhai phầnmềm (deployment diagram). Góc nhìn ₫ộng : lược ₫ồ trình tự (sequence diagram), lược ₫ồ cộng tác (colaboration diagram), lược ₫ồ trạng thái (state diagram), lược ₫ồ hoạt ₫ộng (activity diagram). Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 8
- 5.4 UML — Lược ₫ồ use-case Là artifact ₫ượcxâydựng trong workflow nắmbắtyêucầuphần mềm. Do phân tích viên, chuyên gia lĩnh vực liên quan và khách hàng hợptácxâydựng. Nó miêu tả góc nhìn từ ngoài vào hệ thống phầnmềm, nó cho thấy1 số chứcnăng củahệ thống phầnmềm (use-case) và ai (actor) sẽ thựchiện các use-case. Lược ₫ồ use-case gồmcácloạiphầntử : actor, use-case, note, mối quan hệ giữa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 9 5.4 UML — Lược ₫ồ use-case Lược ₫ồ use-case miêu tả việcbán hàng của nhân viên bán hàng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 10
- 5.4 UML — Lược ₫ồ class Là artifact ₫ượcxâydựng trong workflow phân tích hay thiếtkế. Lược ₫ồ class trong workflow phân tích ₫ượcgọilàlược ₫ồ class ở cấp phân tích, nó thường chỉ chứa thông tin sơ lượcvề các class chứcnăng. Lược ₫ồ class trong workflow thiếtkế ₫ượcgọilàlược ₫ồ class ở cấpthiếtkế, mỗi class thường chứa ₫ầy ₫ủ các thông tin chi tiếtcũng như các mối quan hệ vớinhững thành phần khác. Do phân tích viên, kỹ sư thiếtkế, ngườihiệnthực cùng nhau xây dựng và duy trì. Nó miêu tả góc nhìn tổ chức bên trong hệ thống phầnmềm, nó cho thấy1 số class chứcnăng hợptácvới nhau như thế nào ₫ể thựchiện use-case hay bộ phận use-case nào ₫ó. Lược ₫ồ class gồmcácloạiphầntử : actor, class, interface, note, mối quan hệ giữa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 11 5.4 UML — Lược ₫ồ class Lược ₫ồ class phân tích thựchiện use- case bán hàng Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 12
- 5.4 UML — Lược ₫ồ class Lược ₫ồ class thiết kế thựchiện use- case bán hàng (kiêm lược ₫ồ thành phần) Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 13 5.4 UML — Lược ₫ồ ₫ốitượng Là artifact ₫ượcxâydựng trong workflow phân tích hay thiếtkế. Do phân tích viên, kỹ sư thiếtkế, ngườilậptrìnhhợptácxâydựng và duy trì. Nó miêu tả góc nhìn bên trong hệ thống phầnmềm, tại 1 thời ₫iểmcụ thể trong lúc phầnmềmhoạt ₫ộng mà ta cầnlưuý nhất, nó cho thấycụ thể các ₫ốitượng, trạng thái cụ thể của chúng, mối quan hệ giữachúngtạithời ₫iểm ₫ó. Lược ₫ồ ₫ốitượng gồmcácloạiphầntử : actor, ₫ốitượng, note, mối quan hệ giữa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 14
- 5.4 UML — Lược ₫ồ ₫ốitượng Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 15 5.4 UML — Lược ₫ồ thành phầnthựctế Là artifact ₫ượcxâydựng trong workflow hiệnthực. Do kiếntrúcsư, lập trình viên hợptácxâydựng. Nó miêu tả góc nhìn tổ chức bên trong hệ thống phầnmềm, nó cho thấy các thành phầnthựctế ₫ượcxâydựng, công nghệ xây dựng và mốiquanhệ của chúng ₫ể thựchiện 1 use-case hay 1 phần use-case nào ₫ó. Lược ₫ồ use-case gồmcácloạiphầntử : component, note và mối quan hệ giữa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 16
- 5.4 UML — Lược ₫ồ thành phầnthựctế Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 17 5.4 UML — Lược ₫ồ triểnkhai Là artifact ₫ượcxâydựng trong workflow thiếtkế. Do kiếntrúcsư, kỹ sư hệ thống và kỹ sư mạng hợptácxâydựng. Nó miêu tả cách tổ chức, nốikết các thành phầnphầncứng ₫ể vận hành hệ thống phầnmềmtương ứng. Lược ₫ồ triểnkhaigồmcácloạiphầntử : từng thiếtbị, mạng nối kết chúng, chứcnăng và tính chấtcủa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 18
- 5.4 UML — Lược ₫ồ triểnkhai Lược ₫ồ triểnkhai hệ thống OPFS Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 19 5.4 UML — Lược ₫ồ trình tự Là artifact ₫ượcxâydựng trong workflow nắmbắtyêucầu, phân tích, thiếtkế. Do phân tích viên, kỹ sư thiếtkế xây dựng. Nó miêu tả 1 kịch bản ₫iểnhình₫ể thựchiện use-case hay 1 phần use-case nào ₫ó. Kịch bản là danh sách có thứ tự theo thờigian các hoạt ₫ộng tương tác giữacác₫ốitượng tham gia. Lược ₫ồ trình tự gồmcácloạiphầntử : actor, ₫ốitượng, sự tương tác giữa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 20
- 5.4 UML — Lược ₫ồ trình tự Lược ₫ồ trình tự thựchiện use-case Login : LoginForm : Database : People 1: submit(uname, psswd) 1.1: verify(uname, psswd) 1.2: welcome Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 21 5.4 UML — Lược ₫ồ cộng tác Là artifact ₫ượcxâydựng trong workflow nắmbắtyêucầu, phân tích, thiếtkế. Do phân tích viên, kỹ sư thiếtkế xây dựng. Nó miêu tả sự cộng tác giữacác₫ốitượng hầuthựchiệnuse-case hay 1 phần use-case nào ₫ó. Lược ₫ồ cộng tác gồmcácloạiphầntử : actor, ₫ốitượng, sự tương tác giữa chúng. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 22
- 5.4 UML — Lược ₫ồ cộng tác Lược ₫ồ cộng tác thực hiện use-case thanh toán 5: Get hóa ₫ơn. : Order Confirmation 4: Get : Order Handler 3: Check Invoice 2: Browse : Invoice 6: Schedule InVoice for payment 9: setStatus(scheduled) 1: Browse Invoice : Buyer : Payment Request UI 7: Schedule payment 8: New : Payment Scheduler : Payment Request Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 23 5.4 UML — Lược ₫ồ hoạt ₫ộng Là artifact ₫ượcxâydựng trong workflow nắmbắtyêucầu, phân tích, thiếtkế. Do phân tích viên, kỹ sư thiếtkế xây dựng. Nó miêu tả thuậtgiảicụ thể ₫ược dùng ₫ể thựchiện use-case hay 1 phần use-case nào ₫ó. Trong lược ₫ồ hoạt ₫ộng, ta còn thấy ₫ược các thông tin phụ au ₫ây : Mỗi công việcsẽ do ₫ốitượng nào thựchiện. Chỗ nào các công việc ₫ượcthựchiệntuầntự, chỗ nào các công việc ₫ượcthựchiện ₫ồng thời. Lược ₫ồ hoạt ₫ộng gồmcácloạiphầntử : actor, ₫ốitượng, nút bắt ₫ầu, nút kết thúc, nút công việc, nút quyết ₫ịnh, làn bơi, thanh khởi ₫ộng việcxử lý song song, thanh kết thúc xử lý song song Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 24
- 5.4 UML — Lược ₫ồ hoạt ₫ộng Lược ₫ồ hoạt ₫ộng thực LoginForm Database hiện use-case Login. Show input for username and password Verify [ psswd invalid ] [ psswd valid ] Reject Welcome Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 25 5.4 UML — Lược ₫ồ trạng thái Là artifact có thể ₫ượcxâydựng trong workflow nắmbắtyêucầu, phân tích, thiếtkế. Do phân tích viên, kỹ sư thiếtkế xây dựng. Nó miêu tả các trạng thái, các sự kiệnkíchhoạtsự chuyểntrạng thái củatậpcác₫ốitượng trong khi thựchiện use-case hay 1 phần use-case nào ₫ó. Lược ₫ồ trạng thái gồmcácloạiphầntử : nút bắt ₫ầu, nút kết thúc, nút trạng thái, cung chuyểnvàsự kiệnkíchhoạt Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 26
- 5.4 UML — Lược ₫ồ trạng thái Lược ₫ồ trạng thái khi thực hiện use-case Thanh toán hóa ₫ơn. Browsing schedule reject Invoice Scheduled pay on due date Invoice Paid Invoice Cancelled Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 27 5.5 Kếtchương Chương này ₫ãgiớithiệu các thông tin cơ bảnvề ngôn ngữ mô hình UML như chứcnăng của ngôn ngữ UML, các phầntử cơ bản, các lược ₫ồ. Chúng ta sẽ dùng những kiếnthức này ₫ể xây dựng và duy trì các artifacts trong qui trình phát triểnphầnmềm. Khoa Khoa học& Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phầnmềm Trường ĐH Bách Khoa Tp.HCM Chương 5 : Dùng UML ₫ể xây dựng các artifacts © 2010 Slide 28