Bài giảng Nhập môn công nghệ phần mềm - Chương 2: Phương phá hâ tí h thi p phân tích thiết kế hướng đối tượng với UML - Trần Ngọc Bảo

pdf 87 trang cucquyet12 2960
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn công nghệ phần mềm - Chương 2: Phương phá hâ tí h thi p phân tích thiết kế hướng đối tượng với UML - Trần Ngọc Bảo", để 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_2_phuong_pha_ha.pdf

Nội dung text: Bài giảng Nhập môn công nghệ phần mềm - Chương 2: Phương phá hâ tí h thi p phân tích thiết kế hướng đối tượng với UML - Trần Ngọc Bảo

  1. Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học NHẬP MÔN CÔNG NGH Ệ PHẦNMN MỀM Phương pháp phâ n tí ch thi ếttk kế hướng đốiit tượng vớiiUML UML Object Oriented Analysis and Design Us ing the UML Người trình bày: Trần Ngọc Bảo Email: tnbao.dhsp@gmail.com
  2. MỤC TIÊU MM ỀỀ • Biết được một số khái niệm cơ bản và các N MN M ẦẦ HH LL PPPP thành ph ầntn trong ongUML UML ỆỆ UM UM Ề Ề V V G NGHG NGH • Biết được phươngpg pháp pp phân tích thiết kế hướng đối tượng với UML QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ • Biết được các công cụ hỗ trợ biểu diễn mô NG NG ỔỔ TT NG NH NG NH hình UML ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN2 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  3. NỘI DUNG TRÌNH BÀY MM ỀỀ N MN M • Giới thiệu sơ lược về UML ẦẦ HH LL PPPP ỆỆ • Kiến trúc các thành phần trong UML UM UM Ề Ề V V G NGHG NGH • Vii(ews (Hướng nhìn/kh ung n hìn) QUAN QUAN MÔN CÔNMÔN CÔN P P • Diagrams (L ược đồ/sơ đồ) Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN3 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  4. History of the UML MM ỀỀ Nov ‘97 UML approved by the OMG N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI Copyright © 1997 by Rational Software Corporation TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN4 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  5. History of the UML MM ỀỀ “The 3 Amigos” N MN M ẦẦ HH LL Booch Jacobson Rumbaugh PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN5 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  6. UML – Unified Modeling Language MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ Logical View Component View UM UM Ề Ề V V G NGHG NGH End-user Analysts/Designers Programmers Functionality Structure Software management Use-Case View QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG Process View Deployment View ỔỔ System integrators System engineering TT NG NH NG NH Performance System topology ẢẢ Scalability Delivery, installation Throughput communication BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN6 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  7. Use case View MM ỀỀ • Chức năng N MN M – Use case view được dùng để mô tả chức năng của hệ ẦẦ HH LL thống nhìn từ phía người dùng PPPP ỆỆ – Use case view là cơ sở để tạo ra các View còn lại. UM UM Ề Ề – Thông thường dùng Use case diagram, Activity V V G NGHG NGH Diagram để mô tả UiUse case view. – Use case view cũng là cơ sở để tạo ra kịch bản khai thác, test case, QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG • Đối tượng sử dụng ỔỔ TT – End-User NG NH NG NH ẢẢ – System Engineer BÀI GIBÀI GI – Programmer TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN7 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  8. Use case View Xem TKB Giáo vụ kh o a Giảng viên Nhập TKB Sinh viên Sửa TKB Đăng nhập Xóa TKB Chọn TKB Ví dụ minh họa Use case View Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN -TIN- TIN8 H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  9. Logical View MM ỀỀ • Chức năng N MN M – Logical view dùng để mô tả các chức năng ẦẦ HH LL được thiết kế như thế nào bên trong hệ PPPP thống. ỆỆ UM UM – Mô tả cấu trúc dữ liệu, mối liên hệ giữa dữ Ề Ề liệu và xử lý thông qua các lược đồ tĩnh và V V G NGHG NGH động • Class Diagrams • Object Diagrams QUAN QUAN MÔN CÔNMÔN CÔN P P • Stat e Di agrams Ậ Ậ • Activity Diagrams NG NG ỔỔ • . TT NG NH NG NH ẢẢ • Đốiti tượng sử dụng – System Engineer BÀI GIBÀI GI – Programmer TRẦN NGỌC BẢO ” KHOA TOÁN -TIN-TIN9 HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  10. Logical View Huan luyen vien TrongTai - MaHLV : string MM - TenHLV : string - MaTT : string ỀỀ - DiaChi : string - TenTT : string - DienThoai : string - DiaChi : string - MucLuong : Double - DienThoai : string N MN M - Gia : Double ẦẦ HH LL 0*0 * PPPP DieuKhien 0 * - VaiTro : string ỆỆ Huan luyen CThamGia - NgayBD : int - TongSoBT : int UM UM - NgayKT : int - SoBanThua : int 0 * Ề Ề - Vaitro : string - TongSoCauThu : int CTranDau V V G NGHG NGH 0 * - MaTD : String - Ngay : DateTime - GioBD : DateTime CDoiBong 2 2 - GioKT : DateTime - MaDB : string 0 * - San : string - Ten : string - TrongTai : string San bong - HLV : String - TheVang : int - DonVi : string - MaSB : string - TheDo : int QUAN QUAN MÔN CÔNMÔN CÔN 0 * - TP : string - TenSan : string - Khan Gia : itint 1 1 P P - SoCT : int - DiaChi : string - BanThang : int - TySo : string Ậ Ậ - XepHang : int - SucChua : int - MauAo : int - VongDau : int NG NG 0 * ỔỔ 0 * TT CCauThu NG NH NG NH 0 * CRaSan ẢẢ - MaCT : string - HoTen : string - ThoiDiemVaoSan : DateTime CThiDau 0 * - DiaChi : string - ThoiDiemRaSan : DateTime - NgayBD : DateTime - NgaySinh : DateTime - ViTri : string - NgayKT : DateTime - ChieuCao : Double - SoBanThang : int - GiaMua : Double - CanNang : Double - TheVang : int BÀI GIBÀI GI - Luong : Double - ViTri : string - TheDo : int - GiaBan : Double - SoAo : int - SoAo : int - TrangThai : int - SoThePhat : int - SoBanThang : int Ví dụ minh họa Logical View TRẦN NGỌC BẢO ” KHOA TOÁN 10-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  11. Component View MM ỀỀ • Chức năng N MN M – Component View còn được gọi là ẦẦ HH LL PPPP Implementation View ỆỆ UM UM – Mô tả tổ chức module và source code Ề Ề V V G NGHG NGH chương trình • Hệ thống được phân chia thành những module nào ? QUAN QUAN MÔN CÔNMÔN CÔN • MỗiModulei Module đượcct tổ chứcccài cài đặtnht như thế nào ? P P Ậ Ậ • Sử dụng ngôn ngữ gì ? DB loại gì ? NG NG ỔỔ • . TT NG NH NG NH ẢẢ • Đối tượng sử dụng BÀI GIBÀI GI – Programmer TRẦN NGỌC BẢO ” KHOA TOÁN 11-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  12. Component View MM ỀỀ He thong quan ly thoi khoa bieu He thong dich vu nhan tin SMS Mobi N MN M _ ẦẦ Giao dien SMS Service HH LL SMS Message PPPP ỆỆ Viettel UM UM Ề Ề SMS Data V V G NGHG NGH Xu ly Vina Port_2 QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG Du lieu ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI Ví dụ minh họa Component View TRẦN NGỌC BẢO ” KHOA TOÁN 12-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  13. Deployment View MM ỀỀ • Chức năng N MN M ẦẦ – Deployment View dùng để mô tả kiến trúc HH LL PPPP vậtlýtit lý triểnkhaihn khai hệ thống. ỆỆ UM UM • Hệ thống được triển khai trên máy đơn ? Ề Ề • Hệ thống được triển khai theo mô hình V V G NGHG NGH Client/Server ? • Hệ thống được triển khai tại văn phòng công ty ? Các phòng ban ? QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ • Yêu cầu phần cứng máy tính ? NG NG • . ỔỔ TT NG NH NG NH ẢẢ • Đốiti tượng sử dụng – Tester BÀI GIBÀI GI – Deliverer TRẦN NGỌC BẢO ” KHOA TOÁN 13-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  14. Deployment View Xét hệ thống quản lý nhân sự tiền lương tại các công ty, gồm có 2 phân hệ (module) • Quản lý nhân sự • Quản lý tiền lương • Triển khai theo mô hình tất cả gom chung vào một máy tính – Modul e qu ản lýýâs nhân sự – Module quản lý tiền lương – Database Server Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 14-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  15. Deployment View MM ỀỀ • Triển khai theo mô hình Client/Server N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 15-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  16. Deployment View MM • TiTriển khai theo mô hình Client/Se rver e ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 16-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  17. Deployment View MM ỀỀ www.acb.com.vn www.vcb.com.vn Client N MN M ẦẦ Currency Rate Currency Rate Web Browser HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH Web Server OneCall Web site IIS Server QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ Currency Rate Retrieval NG NG Database Server ỔỔ TT Windows Service NG NH NG NH ẢẢ SQL Server BÀI GIBÀI GI OneCall Co side TRẦN NGỌC BẢO ” KHOA TOÁN 17-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  18. Process View/Concurrency view MM ỀỀ • Chức năng N MN M – Chỉ ra sự tồn tại song song trong hệ thống hướng đến ẦẦ HH vấn đề giao tiếp và đồng bộ hóa trong hệ thống LL PPPP ỆỆ – Chia hệ thống thành các tiến trình (process), tiểu trình UM UM (Thread) (thuộc yêu cầu phi chức năng của hệ thống) Ề Ề V V G NGHG NGH – Bao gồm các lược đồ ((gdiagram ) • State diagram • Sequence Diagram QUAN QUAN MÔN CÔNMÔN CÔN • Collaboration Diagram P P Ậ Ậ • Activity Diagram NG NG ỔỔ • Component Diagram TT NG NH NG NH ẢẢ • Deployment Diagram • Đối tượng sử dụng BÀI GIBÀI GI – Develope r/P rog rammer amme TRẦN NGỌC BẢO ” KHOA TOÁN 18-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  19. Lược đồ trong UML MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 19-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  20. Lược đồ trong UML MM ỀỀ ™ Class N MN M Static ẦẦ ™ HH Object LL PPPP ỆỆ ™ Use-Case UM UM Ề Ề ™ Interaction/Scenario Diagrams: V V G NGHG NGH Behavior ™ Sequence ™ Collaboration QUAN QUAN MÔN CÔNMÔN CÔN P P ™ Stat e [ -Titi]Transition] Ậ Ậ NG NG ™ Activity ỔỔ TT NG NH NG NH ẢẢ IlImplement ttiation ™ CtComponent (Static) ™ Deployment BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 20-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  21. Mô hình thác nước & UML Sequence Diagram Khảo sát Collaboratoin Diagram Phân tích Activity Diagram State Diagram Thiếtkt kế Component Cài đặt Diagram Object Diagram Kiểm tra Class Di agram Triển khai Use Case Diagram Deployment Diagram Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 21-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  22. Use Case Diagram • Use case diagrams được dùng để mô tả tương tác giữa người dùng và hệ thống • Mỗi use case mô tả một chức năng của hệ thống Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 22-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  23. Ví dụ: Xét ứng dụng quản lý TKB • Hệ thống cho phép bộ phận giáo vụ Khoa nhập thời khóa biểu, cập nhật thời khóa biểu của tất cả các lớp • Hệ thốngcg ch opo ph épsép sinh vi ên tr aca cứutu thời khóa biểu theo từng học kỳ của lớp • Hệ thống cho phép giảng viên tra c ứu thời khóa biểu giảng dạy trong học kỳ Copyright © 1997 by Rational Software Corporation Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 23-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  24. Ví dụ minh họa • Use case diagrams mô tả hệ thống quản lý thời khóa biểu Xem TKB Giáo vụ khoa Giảng viên Nhập TKB Sinh viên Sửa TKB Đăng nhập Xóa TKB Chọn TKB Ví dụ minh họa Use case diagram Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 24-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  25. Các thành phần trong Use case diagram Xem TKB • Actor Giáo vụ kh o a Giảng viên Nhập TKB Actor Name Sinh viên Sửa TKB Đăng nhập • Use case Xóa TKB Use case Chọn TKB • Mối liên hệ giữa các Use case Use case 1 Use case 2 Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 25-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  26. Ví dụ minh họa: ứng dụng TKB • Use case Xem TKB • Action Steps – Chọn chức năng xem thờikhói khóa bi ểu – Hiển thị màn hình cho phép người dùng chọn thông tin cần xem – Chọn niên khóa từ danh sách hiện có trong hệ thống – Chọnhn họckc kỳ từ danh sách hi ệncótronghn có trong hệ thống – Chọn lớp hoặc tên giảng viên cần xem trong dháhldanh sách lớp vàià giảng viên hi ện cóót trong h ệ thống – Hiển thị thông tin chi tiết thời khóa biểu lớp hoặc thời khóa biểu của giảng viên Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 26-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  27. Sequence Diagrams MM ỀỀ • Lược đồ tuần tự (Sequence N MN M ẦẦ HH Diagram) mô tả tương tác giữa LL PPPP ỆỆ actor và các đối tượng hệ thống. UM UM Ề Ề V V G NGHG NGH • Lược đồ tuần tự môtô tả sự tươnggtác tác giữa các đối tượng theo trình tự QUAN QUAN MÔN CÔNMÔN CÔN thời gian P P Ậ Ậ NG NG • Lược đồ tuần tự thường được dùng ỔỔ TT NG NH NG NH ẢẢ để biểudiu diễn các bướccth thựcchi hiện trong một kịch bản khai thác BÀI GIBÀI GI (Scenario) củaam mộttuse use-case Copyright © 1997 by Rational Software Corporation TRẦN NGỌC BẢO ” KHOA TOÁN 27-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  28. Ví dụ minh họa: ứng dụng TKB MM Xem TKB ỀỀ • Use case N MN M ẦẦ • Action Steps HH LL PPPP – Chọn chức năng xem thờikhói khóa bi ểu ỆỆ UM UM – Hiển thị màn hình cho phép người dùng chọn Ề Ề V V G NGHG NGH thông tin cần xem – Chọn niên khóa từ danh sách hiện có trong hệ thống QUAN QUAN MÔN CÔNMÔN CÔN P P – Chọnhn họckc kỳ từ danh sách hi ệncótronghn có trong hệ Ậ Ậ thống NG NG ỔỔ – Chọn lớp hoặc tên giảng viên cần xem trong TT NG NH NG NH ẢẢ dháhldanh sách lớp vàià giảng viên hi ện cóót trong h ệ thống BÀI GIBÀI GI – Hiển thị thông tin chi tiết thời khóa biểu lớp hoặc thời khóa biểu của giảng viên TRẦN NGỌC BẢO ” KHOA TOÁN 28-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  29. Ví dụ minh họa • Sequence Man hinh chinh Man hinh xem TKB Lop Nien khoa TKB Lop Sinh viên diagram 1: Chon chuc nang xem TKB 2: Hien thi man hinh xem TKB môtô tả 3: Lay DS Lop 4: Danh sach lop use-case 5: Lay danh sach Nien khoa xem TKB Danh sach nien khoa hệ thống Y/C Chon thong tin can xem stri ct {Condition} Chon lop quản lý Chon niem khoa thời khóa Chon hoc ky Chon Xem TKB biểu Lay TKB Lop TKB lop Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 29-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  30. Sequence diagram ứng dụng quản lý TKB • Sequence Man hinh chinh Man hinh dang nhap ThanhVien Man hinh QL TKB Giáo v? khoa diagram 1: Yeu cau dang nhap he thong mô tả 2: Hien thi man hinh dang nhap scenario đăng 3: Yeu cau giao vu nhap user/pass nhập hệ 4: Nhap User/pass 5: Dang nhap thống 6: Kiem tra user/pass thành 7: Kiem tra user/pass công 8: Kiem tra hop le 10: Thong bao dang nhap thanh cong 9: Hien thi man hinh quan ly TKB Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 30-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  31. Collaboration Diagrams MM ỀỀ • Lược đồ cộng tác (Collaboration N MN M ẦẦ Diagram) mô tả tương tác giữa HH LL PPPP ỆỆ actàátor và các đốiti tượng hệ thống. UM UM Ề Ề • Lược đồ cộng tác thường được dùng V V G NGHG NGH để biểu diễn mộtkt kịchhb bản khai thá c (Scenario) của một use-case QUAN QUAN MÔN CÔNMÔN CÔN P P • Có thể tạo nhiều collab orati on Ậ Ậ NG NG diagram cho một use case ỔỔ TT NG NH NG NH ẢẢ • Có thể xác định được các lớp đối tượng và mối liên hệ giữa các lớp từ BÀI GIBÀI GI collaboration diagram Copyright © 1997 by Rational Software Corporation TRẦN NGỌC BẢO ” KHOA TOÁN 31-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  32. Collaboration diagram ứng dụng quản lý TKB • Collaboration diagram mô tả use-case xem TKB lớp 14: Hien thi thong tin TKB lop 11: Chon Xem TKB 10: Chon hoc ky 9: Chon niem khoa 4: Danh sach lop 8: Chon lop 3: Lay DS Lop 7: Y/C Chon thong tin can xem Man hinh xem TKB Lop Sinh viên 13: TKB lop 12: Lay TKB Lop 2: Hien thi man hinh xem TKB 6: Danh sach nien khoa 5: Lay danh sach Nien khoa TKB Lop 1: Chon chuc nang xem TKB Man hinh chinh Nien khoa Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 32-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  33. Class Diagrams • Sơ đồ lớp (Class Diagram) mô tả thành phần dữ liệu trong hệ thống • Mô tả cấu trúc tĩnh của các Class và mối quan hệ giữa các lớp trong hệ thống • Một class là một tập hợp các đối tượng có cùng cấu trúc, cùng hành vi • Có thể xác định các class dựa vào các đối tượng tồn tại lược đồ tuần tự và lược đồ cộng tác Copyright © 1997 by Rational Software Corporation Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 33-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  34. Ví dụ: Xét ứng dụng quản lý TKB Thời khóa biểu lớp: Toán 4C Copyright © 1997 by Rational Software Corporation Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 34-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  35. Ví dụ: Xét ứng dụng quản lý TKB Thời khóa biểu giảng viên: Copyright © 1997 by Rational Software Corporation Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 35-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  36. Ví dụ: Xét ứng dụng quản lý TKB • Hệ thống quản lý thời khóa biểu bao gồm các thông tin sau: – Thứ – Tiết – Môn – Giảng viên – Phòng – Lớp – Họckc kỳ – Năm học – Khoa Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 36-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  37. Ví dụ: Xét ứng dụng quản lý TKB • Hệ thống quản lý thời khóa biểu bao gồm các thông tin sau: – Thứ – Tiết – Môn – Giảng viên – Phòng – Lớp Có bao nhiêu lớp đối tượng ? – Họckc kỳ Thuộctínhcc tính củama mỗili lớp?p ? – Năm học Mối liên hệ giữa các lớp đối tượng ? – Khoa Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 37-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  38. Ví dụ minh họa • Class diagram mô tả hệ thống quản lý CLOP CKhoa CNganh + LOPID : long + NganhID : long + KhoaID : int 0 1 thời khóa biểu + MaNganh : string 0 * + MALOP : string + MaKhoa : string + TENLOP : string + TenKhoa :string: stri n g + TenNganh :string: stri n g 010 1 0 * + TenVT : string + NAMTS : short + TenVT : string 0 1 0 1 0 * 0 1 CLOPNK 0 * + LOPNKID : long 0 * + NAM : short + NAMHOC : short CGiangVien CTKB CBoMon + GVID : long + TKBID : long + BMID : long + MaGV : string 0 * + TKB : string 0 * + MaBM : string + HocVi : string + HOCKY : short 0 1 + TenBM :string: stri n g + ChucDanh :string: stri n g + NAMHOC : short + TenVT : string + NGAYBD : DateTime CTKBLOP 0 1 + Ho : string 0 10 * + NGAYKT : DateTime + TKBLOPID : long + Ten : string 1 1 + DiaChi : string + DienThoai : string + Email : string 1 1 0 * CMONHOC 0 * CTKBLOP_CHITIET + MonID : long + THU : short + MaMon : string + TIETBD : short + TenMon : string + TIETKT : short 0 * + TinChi : short + LYTHUYET : short + SoTietLT :short: sh o rt 111 1 + PHONG :string: stri n g + SoTietBT : short + TenVT : string Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 38-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  39. Các thành phần trong Class diagram MM CMONHOC ỀỀ + MonID : long • Class + MaMon : string N MN M + TenMon : string ẦẦ + TinChi : short HH LL + SoTietLT : short PPPP + SoTietBT : short ỆỆ + TenVT : string + Them () : void UM UM + Xoa () : void Ề Ề + Sua () : void V V + LayDL () : void G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN • Mối liên hệ giữa các class P P Ậ Ậ NG NG CGiangVien ỔỔ + GVID : long + MaGV : string TT NG NH NG NH + HViHocVi : stitring ẢẢ + ChucDanh : string CKhoa + TenVT : string 0 1 + Ho : string + KhoaID : int + Ten : string 0 * + MaKhoa : string BÀI GIBÀI GI + DiaChi : string + TenKhoa : string + DienThoai : string +Email : string TRẦN NGỌC BẢO ” KHOA TOÁN 39-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  40. Các thành phần trong Class diagram MM ỀỀ CMONHOC Tên lớp (Class Name) • Class + MonID : long N MN M + MaMon : string ẦẦ + TenMon : string HH + TinChi : short LL Thuộc tính (()Attribute) PPPP + SoTietLT : short + SoTietBT : short ỆỆ + TenVT : string UM UM + Them () : void + Xoa () : void Ề Ề Hành động (Operation) + Sua () : void V V G NGHG NGH + LayDL () :void: void QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG • Mỗi class có 3 thành phần ỔỔ TT NG NH NG NH – Tên lớp (Class Name) ẢẢ – Thuộc tính (Attribute) BÀI GIBÀI GI – Hành động (Operation) TRẦN NGỌC BẢO ” KHOA TOÁN 40-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  41. Các thành phần trong Class diagram MM ỀỀ • Thuộc tính N MN M ẦẦ – Là các đặc trưng mô tả về đối tượng HH LL PPPP ỆỆ • Đối tượng và lớp đối tượng UM UM Ề Ề V V G NGHG NGH – Đối tượng là một thể hiện của lớp đối tượng QUAN QUAN MÔN CÔNMÔN CÔN – Thuộc tính của đối tượnggg có giá trị cụ P P Ậ Ậ thể NG NG CMONHOC Co so du lieu:CMONHOC Cau truc du lieu:CMONHOC ỔỔ + MonID : long MonID = 01 MonID = 02 TT NG NH NG NH + MaMon :string: stri n g MMMaMon = TH01 MMMaMon = TH02 ẢẢ + TenMon : string TenMon = Co so du lieu TenMon = Cau truc du lieu + TinChi : short TinChi = 4 TinChi = 4 + SoTietLT : short SoTietLT = 45 SoTietLT = 45 + SoTietBT : short SoTietBT = 30 SoTietBT = 30 BÀI GIBÀI GI + TenVT : string TenVT = CSDL TenVT = CTDL Lớp đối tượng Đối tượng TRẦN NGỌC BẢO ” KHOA TOÁN 41-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  42. Các thành phần trong Class diagram MM ỀỀ • Phân loạithi thuộc tính N MN M ẦẦ – Thuộc tính private HH LL PPPP ỆỆ – Thuộc tính protected UM UM Ề Ề – Thuộc tính public V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI Biểuudi diễn các lo ạiithu thuộc tính trong class diagram như thế nào ? TRẦN NGỌC BẢO ” KHOA TOÁN 42-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  43. Các thành phần trong Class diagram MM ỀỀ CMONHOC • Thuộc tính + MonID : long N MN M + MaMon : string ẦẦ + TenMon : string HH LL + TinChi : short PPPP + SoTietLT : short + SoTietBT : short ỆỆ + TenVT : string UM UM + Them () : void Ề Ề + Xoa () : void + Sua () : void V V G NGHG NGH + LDL()LayDL () : void • Phân loại thuộc tính QUAN QUAN MÔN CÔNMÔN CÔN P P – Thuộc tính khó a (P ri mary Id entifi er ) Ậ Ậ NG NG – Thuộc tính có giá trị rời rạc ỔỔ TT NG NH NG NH ẢẢ – Thuộctínhc tính đatra trị – Thuộc tính là đối tượng phụ (+) BÀI GIBÀI GI – Thuộc tính tính toán (*) TRẦN NGỌC BẢO ” KHOA TOÁN 43-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  44. Các thành phần trong Class diagram MM ỀỀ • Thuộc tíóính khóa N MN M ẦẦ – Giá trị của thuộc tính khóa hai đối HH LL PPPP ỆỆ tượng thuộc cùng một lớp không UM UM Ề Ề được phép trùng nhau V V G NGHG NGH CMONHOC Co so du lieu:CMONHOC Cau truc du lieu:CMONHOC Cau truc du lieu:CMONHOC + MonID : long MonID = 01 MonID = 01 MonID = 02 + MaMon : string MaMon = TH01 MaMon = TH02 MaMon = TH02 + TenMon : string TenMon = Co so du lieu TenMon = Cau truc du lieu TenMon = Cau truc du lieu QUAN QUAN MÔN CÔNMÔN CÔN + TinChi : short TinChi =4= 4 TinChi = 4 TinChi =4= 4 P P + SoTietLT : short SoTietLT = 45 SoTietLT = 45 SoTietLT = 45 Ậ Ậ + SoTietBT : short SoTietBT = 30 SoTietBT = 30 SoTietBT = 30 + TenVT : string TenVT = CSDL TenVT = CTDL TenVT = CTDL NG NG ỔỔ TT NG NH NG NH Lớp đốiti tượng Đốiit tượng ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 44-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  45. Các thành phần trong Class diagram • Thuộc tính có giá trị rời rạc – Thuộc tính phái của Sinh viên chỉ có 2 giá trị: Nam hoặc Nữ – Thuộc tính phái của Sinh viên chỉ có 2 giá trị: 0 hoặc 1 (0: Nam, 1: Nữ) – Thuộc tính điểm học phần chỉ có các giá trị 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. – Thuộc tính loại nhân viên chỉ có các giá trị: Nhân viê n văn phòng, n hân v iên bá n hà ng, nhân viên sản xuất . – . Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 45-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  46. Các thành phần trong Class diagram • Thuộctínhloc tính loại nhân viên ch ỉ có các giá tr ị: Nhân viên v ăn phòng, nhân viên bán hàng, nhân viên sản xuất. 46Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN -TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  47. Các thành phần trong Class diagram MM ỀỀ • Thuộc tính đa trị N MN M ẦẦ HH LL PPPP – Thuộctínhc tính điệnthon thoại của nhân viên ỆỆ UM UM là thuộc tính đa trị: 081234567, Ề Ề V V G NGHG NGH 09081234567, – Thuộc tính email của sinh viên cũng QUAN QUAN là một thuộc tính đa trị: MÔN CÔNMÔN CÔN P P Ậ Ậ tnbao@yahoo.com, NG NG ỔỔ tnbao@gmail.com, TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 47-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  48. Các thành phần trong Class diagram MM ỀỀ • Thuộc tính là đốiit tượng phụ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Tìm nhân viên Ề Ề có địa chỉ ở Nha Trang, V V G NGHG NGH Tp.HCM, ? QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 48-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  49. Các thành phần trong Class diagram MM ỀỀ • Thuộc tính là đốiit tượng phụ N MN M ẦẦ – Thuộc tính địa chỉ của sinh viên, nhân HH LL PPPP viên là m ột đốiti tượng phụ, bao g ồmmcác các ỆỆ UM UM thông tin: Ề Ề V V G NGHG NGH • Số nhà • Đường • Phường/xã QUAN QUAN MÔN CÔNMÔN CÔN P P • Quận/huyện Ậ Ậ NG NG • Tỉnh thành ỔỔ TT NG NH NG NH – Thuộc tính ngày sinh c ủa sinh viên , nhân ẢẢ viên cũng là một đối tượng phụ gồm các BÀI GIBÀI GI thông tin: ngày, tháng, năm TRẦN NGỌC BẢO ” KHOA TOÁN 49-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  50. Các thành phần trong Class diagram MM ỀỀ • Thuộc tííính tính toá n N MN M ẦẦ – Thuộc tính thành tiền trong hóa đơn là HH LL PPPP ỆỆ một thuộc tííính tính toá n, được tính bằng UM UM Ề Ề tổng số lượng * đơn giá của các mặt V V G NGHG NGH hàng – Thuộc tính điểm trung bình của học sinh, QUAN QUAN MÔN CÔNMÔN CÔN P P sinh viên c ũng là m ộtthut thuộc tính tính Ậ Ậ NG NG toán ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 50-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  51. Các thành phần trong Class diagram MM ỀỀ • Phân loại thuộc tính N MN M ẦẦ HH LL – Thuộc tính khóa (Primary Identifier) PPPP ỆỆ UM UM – Thuộc tính có giá trị rời rạc Ề Ề V V G NGHG NGH – Thuộctínhc tính đatra trị – Thuộc tính là đối tượng phụ (+) QUAN QUAN MÔN CÔNMÔN CÔN – Thuộc tính tính toán (*) P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI Biểu diễn các loại thuộc tính trong class diagram như thế nào ? TRẦN NGỌC BẢO ” KHOA TOÁN 51-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  52. Quan hệ giữa các lớp đối tượng CGiangVien + GVID : long + MaGV : string + HocVi : string + ChucDanh : string CKhoa + TenVT : string 0 1 + KhoaID :int: int + Ho :string: stri n g + MaKhoa : string + Ten : string 0 * + TenKhoa : string + DiaChi : string + DienThoai : string + Email : string • Phân loại quan hệ – Association • Reflexive association • Aggregation • Composition – Generalization – DdDependency Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 52-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  53. Quan hệ giữa các lớp đối tượng CGiangVien MM + GVID : long ỀỀ + MaGV : string + HocVi : string N MN M + ChucDanh : string CKhoa ẦẦ + TenVT : string 0 1 + KhoaID : int HH LL + Ho : string + MKhMaKhoa : stitring PPPP + Ten : string 0 * + TenKhoa : string + DiaChi : string ỆỆ + DienThoai : string UM UM + Email : string Ề Ề V V G NGHG NGH • Phân loại quan hệ dựa trên bản số QUAN QUAN MÔN CÔNMÔN CÔN – Quan hệ “1-1” P P Ậ Ậ NG NG – Quan hệ “1-nhiều” ỔỔ TT NG NH NG NH – Quan hệ “nhiều-nhiều” ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 53-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  54. Mô hình đối tượng – Object Diagram • Quan hệ phản thân CNhanVien : 1 CNhanVien : 2 - MaNV : string 0 * - MaNV :string: stri n g - HoNV : string Duoc quan ly boi - HoNV : string - TenNV : string - TenNV : string - Diachi : string 0 1 - Diachi : string - DienThoai : string Nguyen Van A:CNhanVien Quan ly - DienThoai : string - Email : string MaNV = NV001 - Email : string HNVHoNV = NVNguyen Van TenNV = A Nguyen Van C:CNhanVien Nguyen Van B:CNhanVien MaNV = NV002 MaNV = NV003 HoNV = Nguyen Van HoNV = Nguyen Van TenNV = C TenNV = B Tran Van A:CNhanVien Tran Van B:CNhanVien MaNV = NV004 MNVMaNV = NV005 HoNV = Tran Van HoNV = Tran Van TenNV = A TenNV = B Tran Ngoc TRBaoẦ N NG Ọ C B Ả O ” KHOA TOÁN 54-TIN- TIN H Ọ C ” ĐẠ I H Ọ DaiDaC iS hocƯ PH Su ẠPhamM TP.HCM TP.HCM
  55. State Diagram MM ỀỀ • Sơ đồ trạng thái (State Diagram) N MN M ẦẦ HH biểu diễn mối liên hệ giữa các trạng LL PPPP ỆỆ thái của đối tượng UM UM Ề Ề V V G NGHG NGH Khởi tạo BC QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ Quân trắng đi Quân đen đi NG NG ỔỔ TT NG NH NG NH ẢẢ Quân đen thắng Quân trắng thắng Hòa BÀI GIBÀI GI Copyright © 1997 by Rational Software Corporation TRẦN NGỌC BẢO ” KHOA TOÁN 55-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  56. Ví dụ minh họa MM ỀỀ • Stat e di agram môtô tả trạng thái th ời N MN M khóa biểu ẦẦ HH LL PPPP Có lớp mới được phân [Còn lớp chưa được phân phòng] ỆỆ [Bắt đầu học kỳ mới] UM UM Ề Ề V V G NGHG NGH Khởi tạo [Một số lớp chưa được phân phòng] Chờ phân phòng do / Khoi tao TKB Có lớp mới được phân() / Cap nhat Phong [Tất cả các lớp đã được phân phòng] QUAN QUAN MÔN CÔNMÔN CÔN [Tấtct cả các lớp đã được phân phòng] P P Ậ Ậ NG NG Yêu cầu tra cứu TKB ỔỔ Đang sử dụng TT NG NH NG NH Đóng Yêu cầuutrac tra cứu TKB(Lop) / TKB Lop ẢẢ Yêu cầu tra cứu TKB(GV) / TKB Giảng viên do / Ket thuc hoc ky [Kết thúc học kỳ] BÀI GIBÀI GI Ví dụ minh họa State diagram TRẦN NGỌC BẢO ” KHOA TOÁN 56-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  57. Ví dụ minh họa MM ỀỀ • Stat e di agram môtô tả trạng thái của N MN M màn hình quản lý danh mục giáo ẦẦ HH LL PPPP ỆỆ viên UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 57-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  58. Ví dụ minh họa MM ỀỀ • Stat e di agram môtô tả trạng thái của N MN M màn hình quản lý danh mục giáo ẦẦ HH LL PPPP ỆỆ viên UM UM Ề Ề V V G NGHG NGH Khoi tao MH entry / Load entry / Show do / ThemMH do / SuaMH do / XoaMH Ket thuc them GV do / Thoat QUAN QUAN MÔN CÔNMÔN CÔN Ket thuc sua GV P P ThemGV Ậ Ậ Sua GV [Da chon mon hoc] NG NG Thoat ỔỔ TT Dang them mon hoc NG NH NG NH Dang sua mon hoc ẢẢ Ket thuc GV entry / ThemGV entry / SuaGV do / LuuGV entry / Unload do / Luu do / KhongLuu do / Khong Luu exit / Xac lap trang thai cac control exit / Xac lap trang thai BÀI GIBÀI GI Ví dụ minh họa State diagram TRẦN NGỌC BẢO ” KHOA TOÁN 58-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  59. Activity Diagram MM ỀỀ • Lược đồ hoạt động (Activity N MN M ẦẦ HH Diagram) biểu diễn mối liên hệ giữa LL PPPP ỆỆ các đối tượng UM UM Ề Ề V V G NGHG NGH • Lược đồ hoạt độnggt thường đượccs sử dụng để biểu diễn cho hoạt động QUAN QUAN MÔN CÔNMÔN CÔN của một use case P P Ậ Ậ NG NG • Lược đồ hoạt động cũng thường ỔỔ TT NG NH NG NH ẢẢ đượcmôtc mô tả quy trình x ử lý nghi ệp vụ BÀI GIBÀI GI Copyright © 1997 by Rational Software Corporation TRẦN NGỌC BẢO ” KHOA TOÁN 59-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  60. Ví dụ minh họa MM ỀỀ • AtiitdiActivity diagram biểu diễn use case N MN M xem thời khóa biểu Chon chuc nang xem TKB Lop ẦẦ HH LL PPPP Man hinh xem TKB [Khoi tao] ỆỆ UM UM Lay DS Lop Lay DS Nien khoa Ề Ề V V G NGHG NGH Man hinh xem TKB [San sang] [Exception] Co Lop Thong bao chua co Lop [Su cce ss] Chon Lop QUAN QUAN MÔN CÔNMÔN CÔN P P Chon nien khoa Ậ Ậ Chon Xem TKB NG NG Lay TKB Lop ỔỔ [Exception] Co TKB Lop Thong bao chua co TKB TT NG NH NG NH ẢẢ [Su cce ss] Hien thi TKB lop len man hinh Man hinh xem TKB [TKB Lop] BÀI GIBÀI GI Chon ket thuc Chon in TKB Ví dụ minh họa Activity diagram TRẦN NGỌC BẢO ” KHOA TOÁN 60-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  61. Ví dụ minh họa • Activity diagram biểudiu diễnnquytrìnhnh quy trình nhậppkho kho MM ỀỀ B u si n e ss De p t Warehouse Dept N MN M ẦẦ [RO.GR.Pending] HH LL PPPP Create RO ỆỆ UM UM [Exception] Goods Receiving Ề Ề [RO.KD.Pending] V V G NGHG NGH [S u cce ss] [RO.GO.Processing] Print Receiving Note Verify RO Send to WH QUAN QUAN MÔN CÔNMÔN CÔN P P [RO.PWP.Processing] Ậ Ậ [RO.WH.Pending] Put Away Plan NG NG ỔỔ TT [RO.PA.Processing] NG NH NG NH Put Away ẢẢ [RO.Closed] Close RO BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 61-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  62. Component Diagrams MM ỀỀ • Lược đồ thành phần (Component N MN M ẦẦ HH Diagram) mô tả mối liên hệ giữa LL PPPP ỆỆ các thành phần trong hệ thống. UM UM Ề Ề V V G NGHG NGH • Mỗi tàthành p hần – Tập tin source code QUAN QUAN MÔN CÔNMÔN CÔN – Thư viên liên k ết (DLL) P P Ậ Ậ NG NG – Chương trình thực thi (EXE) ỔỔ TT NG NH NG NH ẢẢ – Web site – Cơ sở dữ liệu BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 62-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  63. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ He thong quan ly thoi khoa bieu HH LL PPPP ỆỆ Giao dien UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN Xu ly P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ Du lieu BÀI GIBÀI GI Ví dụ minh họa Component diagram TRẦN NGỌC BẢO ” KHOA TOÁN 63-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  64. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ He thong quan ly thoi khoa bieu HH LL PPPP ỆỆ Giao dien UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN Xu ly P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ Du lieu BÀI GIBÀI GI Thành phần giao diện TRẦN NGỌC BẢO ” KHOA TOÁN 64-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  65. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ HH Giao dien LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH User Interface (Win Form) User Interface (Web Form) QUAN QUAN MÔN CÔNMÔN CÔN P P Windows Form Web Form Ậ Ậ NG NG ỔỔ User Process (Web) TT User Process (Win) NG NH NG NH ẢẢ BÀI GIBÀI GI Ví dụ minh họa Component diagram TRẦN NGỌC BẢO ” KHOA TOÁN 65-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  66. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ He thong quan ly thoi khoa bieu HH LL PPPP ỆỆ Giao dien UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN Xu ly P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ Du lieu BÀI GIBÀI GI Thành phần dữ liệu TRẦN NGỌC BẢO ” KHOA TOÁN 66-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  67. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ He thong quan ly thoi khoa bieu HH LL PPPP ỆỆ Giao dien UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN Xu ly P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ Du lieu BÀI GIBÀI GI Thành phần dữ liệu TRẦN NGỌC BẢO ” KHOA TOÁN 67-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  68. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ He thong quan ly thoi khoa bieu HH LL PPPP ỆỆ Giao dien UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN Xu ly P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ Du lieu BÀI GIBÀI GI Thành phần xử lý TRẦN NGỌC BẢO ” KHOA TOÁN 68-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  69. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ Xu ly thời khóa biểu CBoMon CGiangVien CKhoa N MN M + BMID : long + GVID : long # KhoaID : int + MaBM : string + MaGV : string + MaKhoa : string ẦẦ + TenBM : string + HocVi : string - TenKhoa : string HH LL + It()Insert () : itint + ChucDanh :string: st ri n g PPPP + TenVT : string + Ho : string ỆỆ + Ten : string + DiaChi : string UM UM + DienThoai : string + Email : string Ề Ề V V G NGHG NGH CLOP CLOPNK CMONHOC + LOPID : long + LOPNKID : long + MonID : long + MALOP : string + NAM : short + MaMon : string + TENLOP : string + NAMHOC : short + TenMon : string + NAMTS : short + TinChi : short + TenVT : string + SoTietLT : short + SoTietBT : short + TenVT : string QUAN QUAN MÔN CÔNMÔN CÔN + Them () :void: void + Xoa () : void P P + Sua () : void Ậ Ậ + LayDL () : void NG NG CNganh CTKB CTKBLOP + NganhID : long + TKBID : long + TKBLOPID : long ỔỔ + MaNganh : string + TKB : string TT + TenNganh : string + HOCKY : short NG NH NG NH +TenVT : string + NAMHOC : short ẢẢ + NGAYBD : DateTime + NGAYKT : DateTime CTKBLOP_CHITIET BÀI GIBÀI GI + THU : short + TIETBD : short + TIETKT :short: sh o rt + LYTHUYET : short + PHONG : string Ví dụ minh họa Component diagram TRẦN NGỌC BẢO ” KHOA TOÁN 69-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  70. Ví dụ minh họa MM • CdiComponent diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ HH LL HethongquanlythoikhoabieuHe thong quan ly thoi kh o a bieu HethongdichvunhantinSMSHe thong dich vu nhan tin SMS Mobi PPPP ỆỆ _ Giao dien SMS Service UM UM SMS Message Ề Ề V V G NGHG NGH Viettel SMS Data Xu ly QUAN QUAN MÔN CÔNMÔN CÔN P P Vina Ậ Ậ NG NG Port_2 ỔỔ TT NG NH NG NH ẢẢ Du lieu BÀI GIBÀI GI Ví dụ minh họa Component diagram TRẦN NGỌC BẢO ” KHOA TOÁN 70-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  71. Deployment Diagrams MM ỀỀ • Lược đồ triển khai (Deployment N MN M ẦẦ HH Diagram) mô tả kiến trúc cài đặt LL PPPP ỆỆ vật lý các thành phần bên trong hệ UM UM Ề Ề thống và tương tác giữa chúng, bao V V G NGHG NGH gồm kiến trúc phần cứng cũng như phần mềm. QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG • Lược đồ triển khai thường được sử ỔỔ TT NG NH NG NH dụnggpyg trong Deployment View ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 71-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  72. Deployment Diagram MM ỀỀ • Một hệ thống có thể được triển khai N MN M ẦẦ theo nhiều lược đồ khác nhau HH LL PPPP ỆỆ – Hệ thống được triển khai trên máy UM UM Ề Ề đơn ? V V G NGHG NGH – Hệ thống được triển khai theo mô hình Client/Server ? QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ – Hệ thống được triển khai tại văn NG NG ỔỔ phòng công ty ? Các phòng ban ? TT NG NH NG NH ẢẢ – Yêu cầu phần cứng máy tính ? BÀI GIBÀI GI – . TRẦN NGỌC BẢO ” KHOA TOÁN 72-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  73. Deployment Diagrams MM ỀỀ • Một hệ thống có thể được triển khai N MN M ẦẦ HH theo nhiều lược đồ khác nhau LL PPPP ỆỆ UM UM Ề Ề Server V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH User A User B ẢẢ User C User D BÀI GIBÀI GI Triển khai hệ thốngg() LAN (1) TRẦN NGỌC BẢO ” KHOA TOÁN 73-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  74. Deployment Diagrams MM ỀỀ • Một hệ thống có thể được triển khai N MN M ẦẦ HH theo nhiều lược đồ khác nhau LL PPPP ỆỆ UM UM Wireless Clients Access Point Server Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH User A User B User C User D ẢẢ BÀI GIBÀI GI Triểnkhaihn khai hệ thống LAN-WLAN (2) TRẦN NGỌC BẢO ” KHOA TOÁN 74-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  75. Deployment Diagrams MM ỀỀ • Mộtht hệ thống cóóth thể được titriển khai N MN M ẦẦ theo nhiều lược đồ khác nhau HH LL PPPP ỆỆ UM UM Internet Ề Ề Remote User Remote V V G NGHG NGH Wireless Clients Access Point Moodle Server QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI User A User B User C User D Triển khai hệ thống LAN-WLAN-WAN (3) TRẦN NGỌC BẢO ” KHOA TOÁN 75-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  76. Ví dụ minh họa MM ỀỀ • Depldiloyment diagram mô tả hệ thống N MN M quản lý thời khóa biểu ẦẦ HH LL PPPP – Sử dụng môhìhCliô hình Clien t server ỆỆ UM UM Ề Ề – Sử dụng công nghệ Web (Asp.net) V V G NGHG NGH – Sử dụng IIS Web sever 5.5 – Sử dụng trình duyệt (IE) version 6.0 QUAN QUAN MÔN CÔNMÔN CÔN P P trở lên Ậ Ậ NG NG ỔỔ – Sử dụng CSDL SQL server 2000 TT NG NH NG NH ẢẢ – Sử dụng công nghệ nhắn tin di động SMS BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 76-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  77. Ví dụ minh họa MM • DlDeployment diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu Client N MN M ẦẦ Web Browser HH LL PPPP ỆỆ UM UM Server QLGV Ề Ề Web Server V V G NGHG NGH Hệ thống quản lý giáo vụ Hệ thống quản lý TKB IIS Server QUAN QUAN MÔN CÔNMÔN CÔN P P SMS Server Database Server Ậ Ậ NG NG SMS Service ỔỔ SQL Server TT NG NH NG NH ẢẢ BÀI GIBÀI GI SMSC Gateway SMS Web Service TRẦN NGỌC BẢO ” KHOA TOÁN 77-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  78. Ví dụ minh họa MM • DlDeployment diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ HH LL PPPP Web Server ỆỆ UM UM Ề Ề V V IIS Server G NGHG NGH Hệ thống quảnlýTKBn lý TKB QUAN QUAN MÔN CÔNMÔN CÔN P P Data Access Ậ Ậ NG NG ỔỔ TT Database Server NG NH NG NH ẢẢ SQL Server ADO.NET BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 78-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  79. Ví dụ minh họa MM • DlDeployment diagram mô tả hệ thống quản lý ỀỀ thời khóa biểu N MN M ẦẦ HH LL PPPP Web Server ỆỆ UM UM IIS Server Ề Ề Hệ thống quản lý TKB V V G NGHG NGH Report QUAN QUAN MÔN CÔNMÔN CÔN P P Data Access Ậ Ậ NG NG ỔỔ Database Server TT Seagate Crystal Report NG NH NG NH ẢẢ SQL Server ADO.NET BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 79-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  80. CASE Tools MM ỀỀ N MN M • Rational Rose (IBM Rational) ẦẦ HH LL PPPP ỆỆ • Power Designer – Object Model UM UM Ề Ề V V G NGHG NGH • Viiisio – UML Modldel QUAN QUAN MÔN CÔNMÔN CÔN P P • Visual Paradigm Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 80-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  81. IBM Rational Rose MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 81-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  82. IBM Rational Rose MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 82-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  83. Power Designer (Version 12) MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 83-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  84. Microsoft Visio MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 84-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  85. Visual Paradigm MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 85-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  86. Tài liệu tham khảo MM ‰ Ronald J . N orman (1999) ,Object -OiOrient ed dS Syst ems ỀỀ Analysis & Design, Second Edition N MN M ‰ Dana Herlea, Stephen Lam, Michael Wu, Structured and ẦẦ HH LL Object-Oriented Analyygsis and Design PPPP ỆỆ ‰ Japan Information-Technology Engineers Examination UM UM Center (2002), Object-Oriented Development. Ề Ề ‰ Booch, G. (1994): Object-Oriented Analysis and V V G NGHG NGH Design with Applications , Addison-Wesley Publishing Co . ‰ Coad, P. and Yourdon, E. (1991): OOA-Object-Oriented Analysis. Englewood Cliffs, N.J.: Prentice Hall QUAN QUAN MÔN CÔNMÔN CÔN ‰ httpp//://www.uml.or g/ P P Ậ Ậ ‰ NG NG ‰ ỔỔ ‰ TT NG NH NG NH ẢẢ ‰ urce=google&campaign=3&group=1&creative=2&wcw=go ogle&gclid=CPeU5t2y144CFRaTTAodNQgl9w BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 86-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM
  87. MM ỀỀ N MN M ẦẦ HH LL PPPP ỆỆ UM UM Ề Ề V V G NGHG NGH QUAN QUAN MÔN CÔNMÔN CÔN P P Ậ Ậ NG NG ỔỔ TT NG NH NG NH ẢẢ BÀI GIBÀI GI TRẦN NGỌC BẢO ” KHOA TOÁN 87-TIN-TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM87