Bài giảng Phân tích và Thiết kế hệ thống - Chương 7: Xây dựng cấu trúc hệ thống với lớp phân tích (Analysis class) - Từ Thị Xuân Hiền
Hoàn chỉnh sơ đồ lớp thiết kế của hoạt động tạo khóa học trong hệ thống quản lý đào tạo. Các đối tượng trong hệ thống
Một khóa học (course) c1
Một đối tượng nội dung (content), c2,
c2 có liên quan đến c1;
Một đối tượng học kỳ (session);
các đối tượng học kỳ (session) liên kết với c1;
c1 có liên quan đến ít nhất một chủ đề (Theme)
34 trang |
Chia sẻ: huongthu9 | Lượt xem: 500 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Phân tích và Thiết kế hệ thống - Chương 7: Xây dựng cấu trúc hệ thống với lớp phân tích (Analysis class) - Từ Thị Xuân Hiền, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 7Xây dựng cấu trúc hệ thống với lớp phân tích (Analysis class)Thiết kế cấu trúc của hệ thốngGiai đoạn thiết kế hệ thống gồm các công việc:Tinh chỉnh các mô hình trong giai đoạn phân tíchXác định kiến trúc của hệ thốngSử dụng sơ đồ tương tác xác định tương tác giữa các đối tượng phần mềmSử dụng các mẫu stereotype bổ sung vào sơ đồ lớp: >, > và >Bổ sung các phương thức vào sơ đồ lớp thiết kếBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền2Thiết kế cấu trúc của hệ thốngTinh chỉnh các mô hình trong giai đoạn phân tíchSử dụng package để tổ chức lại các mô hình trong giai đoạn phân tích: use case model, domain model.Có thể dựa trên các tiêu chí: Theo nhóm actorTheo chức năng, Ví dụ: hệ thống ATM, nhóm use case theo ActorBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền3Thiết kế cấu trúc của hệ thốngVí dụ: cấu trúc lại sơ đồ use case của hệ thống ATMBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền4Thiết kế cấu trúc của hệ thốngXác định kiến trúc của hệ thốngTùy theo loại dự án, chọn một kiến trúc phù hợpTrong UML, cơ chế tổ chức các lớp thành các nhóm là package. Một kiến trúc được mô tả bằng một sơ đồ tĩnh bao gồm các gói và mối quan hệ phụ thuộcBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền5Thiết kế cấu trúc của hệ thốngVí dụ: kiến trúc 3 tầngBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền6Thiết kế cấu trúc của hệ thốngSử dụng sơ đồ tương tác:Xác định tương tác giữa các đối tượng phần mềm.Chọn đối tượng phần mềm nào tương tác nhau để thực hiện chức năng của hệ thống.Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền7Thiết kế cấu trúc của hệ thốngSử dụng các stereotype vào sơ đồ lớp để hiện thực use caseCác stereotype classes: >>Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền8Lớp phân tíchLớp phân tích đại diện cho một mô hình khái niệm ban đầu bao gồm các đối tượng trong hệ thống với trách nhiệm và hành vi, lớp phân tích được phát triển thành các lớp phần mềm và hệ thống con trong mô hình thiết kế.Trong thiết kế các lớp phân tích cần được phân loại và bổ sung các lớp khác để có thể hiện thực được các lớp thực thể.Tiêu chí phân loại: dựa vào khả năng thay đổi của các thành phần trong hệ thống.Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền9Lớp phân tíchCó ba khía cạnh của hệ thống có khả năng thay đổiGiao diện giữa hệ thống và các actor của hệ thống,Các thông tin hệ thống sử dụng,Điều khiển logic của hệ thống.Nguyên tác thực hiện:Đóng gói giao diện người dùng thành các lớp riêng biệtTách chức năng điều khiển khỏi giao diện người dùngBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền10Lớp phân tíchĐể cô lập các phần của hệ thống mà có thể sẽ thay đổi, lớp phân tích được chia thành 3 loại khác nhau được xác định theo tập trách nhiệmLớp giao diện - Boundary classes, Lớp thực thể - Entity classesLớp điều khiển - Control classesBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền11Lớp phân tích - stereotypeSystem boundaryUse-case behavior coordinationSystem information>>>Lớp thực thể - Entity classLớp thực thể: được sử dụng để mô hình hóa thông tin được lưu trữ và cập nhật trong hệ thống. Lớp thực thể có các thuộc tính, các mối quan hệ và được lưu trữ lâu dài trong hệ thốngCác lớp thực thể thể hiện cấu trúc dữ liệu trong hệ thống, giúp người dùng hiểu những gì hệ thống cung cấp cho người dùng.Lớp thực thể vẫ tồn tại sau khi use case kết thúc.Ký hiệu trong UML: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền13Lớp thực thể - Entity classTìm lớp thực thểDựa vào đặc tả use caseDanh mục các thuật ngữTập các danh từ trong yêu cầu của bài toánBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền14Lớp giao diện – Boundary classLớp giao diện là một lớp dùng để mô hình tương tác giữa môi trường xung quanh của hệ thống và hoạt động bên trong của nó. Khi thay đổi giao diện hoặc giao thức truyền thông thì chỉ ảnh hưởng đến lớp giao diện mà không ảnh hưởng đến những thành phần trong hệ thống.Có ít nhất là một giao diện (boundary object) ứng với một cặp actor và một use case.Ký hiệu trong UMLBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền15Loại lớp giao diệnLớp giao diện người dùng - User interface classes: Lớp trung gian giao tiếp giữa người dùng và hệ thống Tập trung vào những thông tin gì cần cung cấp cho người dùngCách tìm lớp giao diện người dùng:Ứng với một cặp actor và use case thì xác định một đối tượng của lớp giao diện.Đối tượng này có trách nhiệm điều phối việc tương tác với các actorBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền16Loại lớp giao diệnLớp giao diện hệ thống - System interface classesLớp trung gian giữa hệ thống với hệ thống khác. Tập trung vào việc xác định giao thứcLớp giao diện thiết bị - Device interface classesLớp cung cấp giao diện để kiểm tra các sự kiện bên ngoài. Lớp giao diện nắm bắt những trách nhiệm của thiết bị hoặc cảm biến.Tập trung vào việc xác định giao thứcBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền17Lớp điều khiển - Control ClassLớp điều khiển là một lớp được sử dụng để mô hình hóa việc điều khiển các hành vi của các use case. Hoạt động của lớp điều khiển là loại điều phối, Thông thường, một đối tượng của lớp điều khiển liên quan đến việc hiện thực một use case, Tuy nhiên, một số trường hợp, một đối tượng của lớp điều khiển có thể liên quan đến việc hiện thực nhiều use case, và ngược lại.Khi hệ thống thực hiện use case thì một đối tượng của lớp điều khiển được tạo ra và bị hủy khi hoạt động của use case hoàn tất.Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền18Lớp điều khiển - Control ClassKý hiệu trong UMLĐặc tính của lớp điều khiểnLiên kết giữa các lớp thực thể và các lớp giao diện, đảm bảo lớp thực thể không bị truy cập trực tiếp từ lớp giao diện. Tăng khả năng mềm dẻo trong thiết kế. Những thay đổi trên lớp giao diện không ảnh hưởng đến lớp thực thể và ngược lại.Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền19Ví dụHệ thống quản lý đào tạoBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền20Giao diện tạo Khóa họcĐiều khiển tạo Khóa họcThực thể Khóa họcSử dụng lớp phân tích trong sơ đồ tuần tựBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền21Sử dụng lớp phân tích trong sơ đồ tương tácBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền22Ví dụBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền23Xây dựng sơ đồ lớp thiết kếTừ các sơ đồ tương tác cho phép phát triển các sơ đồ lớp thiết kế, và được thực hiện bằng cách thêm các thông tin sau vào các lớp trong mô hình phân tíchHoạt động: một thông báo chỉ có thể được nhận bởi một đối tượng nếu lớp của nó có khai báo một hoạt động tương ứng.Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền24Xây dựng sơ đồ lớp thiết kếHướng của các kết hợp hoặc quan hệ phụ thuộc giữa các lớpVí dụ: A tương tác với B, nhận tham số từ c A phụ thuộc CBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền25Xây dựng sơ đồ lớp thiết kếXác định hoạt động của lớp thiết kếDựa vào hoạt động của lớp phân tích tương ứngCú pháp:operationName(parameter : class,..) : returnTypeTầm vực của hoạt độngTầm vực hoạt động là nguyên tắc chính trong đóng gói của thiết kế và lập trình hướng đối tượngBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền26Xây dựng sơ đồ lớp thiết kếTầm vực của hoạt độngPublic: có thể truy cập trực tiếp bởi các thành viên khác.Protected: chỉ được truy cập bởi những thể hiện của lớp con Private: chỉ được truy cập bởi chính lớp định nghĩa nó.Ký hiệu+ Public access # Protected access- Private accessBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền27- privateAttributeClass# protectedAttribute+publicOp()# protectedOp()- privateOp()Ví dụHoàn chỉnh sơ đồ lớp thiết kế của hoạt động tạo khóa học trong hệ thống quản lý đào tạo. Các đối tượng trong hệ thốngMột khóa học (course) c1Một đối tượng nội dung (content), c2, c2 có liên quan đến c1;Một đối tượng học kỳ (session);các đối tượng học kỳ (session) liên kết với c1;c1 có liên quan đến ít nhất một chủ đề (Theme)Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền28Ví dụSơ đồ tuần tự của hoạt động tạo c1Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền29Ví dụSơ đồ tuần tự của hoạt động tạo thêm đối tượng contentBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền30Ví dụSơ đồ hợp tác có lợi thế hơn sơ đồ trình tự: nó cho phép hiển thị các mối quan hệ cấu trúc giữa các đối tượng.Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền31Ví dụTách sơ đồ trên thành 2 phầnMột phần của hoạt động createCourse: tầng trình diễn và liên kết với tầng ứng dụngBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền32Ví dụTầng ứng dụng và liên kết với tầng nghiệp vụBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền33Ví dụTừ các sơ đồ hợp tác, phát triển các biểu đồ lớp thiết kếBài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền34
Các file đính kèm theo tài liệu này:
- bai_giang_phan_tich_va_thiet_ke_he_thong_chuong_7_xay_dung_c.pptx