Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 32 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
32
Dung lượng
210,42 KB
Nội dung
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
1
Phân tích và Thiết kế Hướng đối tượng
dùng UML
Module 12: Thiết kế Subsystem
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
2
Mục tiêu:
w Tìm hiêu mục đích của bước thiết kế
Subsystem và vò trí của công đoạn này trong
qui trình
w Đònh nghóa các hành vi đươc mô tả trong
interfaces của subsystem dưới dạng
collaboration của các class chưa bên trong
w Lập sưu liệu về cấu trúc bên trong của
subsystem
w Xác đònh các phụ thuộc cào các phần tử bên
ngoài subsystem
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
3
Vò trí của Thiết kế Subsystem
Architect
Designer
Architectural
Analysis
Architecture
Reviewer
Review the
Design
Review the
Architecture
Use-Case
Analysis
Architectural
Design
Describe
Concurrency
Describe
Distribution
Class
Design
Subsystem Design
Use-Case
Design
Design
Reviewer
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
4
Tổng quan về thiết kế Subsystem
Subsystem
Design
Use-Case Realization Use-Case Realization
(updated)
Design Subsystems and Interfaces
Design Subsystems and Interfaces
(updated)
Design Classes
Design
Guidelines
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
5
w Subsystem là sự “kết hợp” giữa package và
class
w Hiện thực hóa 1 hoặc nhiều interfaces đònh
nghóa hành vi của nó
<<subsystem>>
Subsystem Name
Interface Subsystem
<<subsystem>>
Subsystem Name
Interface
Realization (Canonical form)
Realization (Elided form)
<<interface>>
Interface
Nhắc lại: Subsystems và Interfaces
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
6
Chìa khóa là abstraction và encapsulation
A
<<subsystem>>
B
<<subsystem>>
C
<<subsystem>>
Subsystem Guidelines
w Mục tiêu
§ Giảm thiểu kết nối
§ Có tính cơ động, tương thích plug-and-play
§ Cách ly các thay đổi
§ Tiến hóa độc lập
w Những đề nghò
§ Đừng khảo sát chi tiết, chỉ interfaces
§ Chỉ phụ thuộc vào interfaces khác
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
7
Nhắc lại: Các qui ước mô hình hóa
CourseCatalogSystem
<<subsystem>>
ICourseCatalogSystem
ICourseCatalogSystem
CourseCatalogSystem
<<subsystem proxy>>
CourseCatalogSystem
<<subsystem>>
Interfaces start with an “I”
<<subsystem>> package
<<subsystem proxy>> class
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
8
Các bước thiết kế Subsystem
w Phân bố các hành vi của Subsystemcho các
phần tử của nó
w Lập sưu liệu về các phần tử của Subsystem
w Mô tả các phụ thuộc của Subsystem
w Checkpoints
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
9
Các bước thiết kế Subsystem
w Phân bố các hành vi của Subsystemcho các
phần tử của nó
w Lập sưu liệu về các phần tử của Subsystem
w Mô tả các phụ thuộc của Subsystem
w Checkpoints
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
10
CourseCatalogSystem
<<subsystem>>
ICourseCatalogSystem
getCourseOfferings()
<<interface>>
subsystem responsibility
Các nhiệm vụ của Subsystem
w Các interface operation xác đònh nhiệm vụ của
Subsystem
w Interface operations được hiện thực hóa bởi
§ Internal class operations
§ Internal subsystem operations
[...]... class hay subsystem) w Gán trách nhiệm của subsystem cho các phần tử của nó w Tích hợp các cơ chế khả dụng (persistence, distribution, …) w Lập sưu liệu về collaboration giữa các phần tử thiết kế trong “interface realizations” § Một hay nhiều interaction diagrams/interface operation § Class diagram(s) chứa các quan hệ cần thiết w Tham khảo lại phần thiết kế kiến trúc § Chỉnh subsystem boundaries và các... Subsystem w Phân bố các hành vi của Subsystemcho các phần tử của nó w Lập sưu liệu về các phần tử của Subsystem w Mô tả các phụ thuộc của Subsystem w Checkpoints PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 23 Describing Subsystem Dependencies w Subsystem phụ thuộc vào một subsystem Client Support Server Support Mềm dẻo Server w Subsystem phụ thuộc vào package... process transaction( ) 1.2.3 // close connection( ) PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 19 Các bước thiết kế Subsystem w Phân bố các hành vi của Subsystemcho các phần tử của nó w Lập sưu liệu về các phần tử của Subsystem w Mô tả các phụ thuộc của Subsystem w Checkpoints PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 20 Ví dụ: CourseCatalogSystem Subsystem Elements ... Services) University Artifacts (from Business Services) PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 26 Các bước thiết kế Subsystem w Phân bố các hành vi của Subsystemcho các phần tử của nó w Lập sưu liệu về các phần tử của Subsystem w Mô tả các phụ thuộc của Subsystem w Checkpoints PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 27 Checkpoints: Thiết Subsystems w Đã đònh nghóa realization... biết các điều sau: § Đònh nghóa các subsystem, các interface và các quan hệ của chúng với các phần tử thiết kế khác (các lược đồ trong ngữ cảnh của subsystem) (còn tiếp) PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 30 Bài tập: Thiết kế Subsystem (tt.) w Với một subsystem cụ thể, hãy xác đònh: § Các phần tử thiết kế chứa trong subsystem và các quan hệ của chúng § Các cơ chế kiến trúc khả dụng... w Đã đònh nghóa realization association cho mỗi interface đề nghò bởi subsystem? w Đã đònh nghóa một dependency association cho mỗi interface dùng bởi subsystem chưa? w Hãy chắc chắn rằn, không có một phần tử nào của subsystem có public visibility w Mỗi operation trên một interface được hiện thực hóa bởi subsystem đã được mô tả trên một interaction diagram chưa ? Nếu chưa, operation có được hiển thực... Anh Đức 31 Bài tập: Thiết kê Subsystem Design (tt.) w Với một subsystem cụ thể, hãy tạo các lược đồ: § “Interface realizations” • Interaction diagram cho mỗi interface operation • Class diagram chưa các phần tử của subsystem hiện thực hóa các chức năng của interface và quan hệ của chúng § Class diagram thể hiện subsystem và tất cả các phụ thuộc lên các external package và subsystem (subsystem dependencies . kế Subsystem
w Phân bố các hành vi của Subsystemcho các
phần tử của nó
w Lập sưu liệu về các phần tử của Subsystem
w Mô tả các phụ thuộc của Subsystem
w. kế Subsystem
w Phân bố các hành vi của Subsystemcho các
phần tử của nó
w Lập sưu liệu về các phần tử của Subsystem
w Mô tả các phụ thuộc của Subsystem
w