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

pdf 14 trang phuongnguyen 5661
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:

  • pdfbai_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

  1. 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
  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
  3. 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
  4. 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. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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
  14. 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