Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 40 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
40
Dung lượng
8,23 MB
Nội dung
CHƯƠNG CHƯƠNG 88:: LLượượcc đđôồ̀ llớớpp thithiêế́tt kkêế́ (Design class diagram (Design class diagram –– DCD)DCD) PTTKHT bang UML - BM HTTT 1 NNôộ̣ii dung dung PTTKHT bang UML - BM HTTT 2 Lớp thiết kế Phân loại các operation Các loại lớp thiết kế Cách tạo lược đồ DCD LLớớpp thithiêế́tt kkêế́ Trong UML, lớp thiết kế bao gồm 2 thành phần chính: ◦ Thuộc tính (attribute) ◦ Thao tác (operation) PTTKHT bang UML - BM HTTT 3 4 ThaoThao tatá́cc (Operation)(Operation) Là hành vi (behavior) liên quan đến 1 lớp. Một operation có 4 thành phần: ◦ Tầm nhìn (visibility) ◦ Tên thao tác (Operation name) ◦ Các tham số ngõ vào: argument1, argument2 ◦ Giá trị trả về (return type) Ký hiệu: Visibility Operation Name(argument1 : argument1 data type, argument2 : argument2 data type, …) : return type PTTKHT bang UML - BM HTTT BBôố́nn kikiêể̉uu ttâầ̀mm nhinhì̀nn (visibility)(visibility) Public (+) cho phép tất cả các lớp khác bên ngoài được xem và sử dụng operation này. Private (-) giới hạn việc truy xuất chỉ trong phạm vi của class. Ví dụ chỉ có các operation của class mới được truy xuất đến thuộc tính riêng (private) của lớp đó PTTKHT bang UML - BM HTTT 5 BBôố́nn kikiêể̉uu ttâầ̀mm nhinhì̀nn (visibility)(visibility) Protected (#) cho phép chỉ các lớp con (subclass) của lớp đó mới được xem và sử dụng operation. Do tính kế thừa các lớp con phải truy xuất được đến các thuộc tính và thao tác của lớp cha. Package (~) cho phép các đối tượng khác trong cùng gói (package) được phép xem và sử dụng operation. PTTKHT bang UML - BM HTTT 6 ViVí́ dudụ̣ vvêề̀ thaothao tatá́cc + totalOrderAmount (order : Order) : Dollar {The total is the sum of all line items less the volume discount. Each line item is the product of the unit price and quantity} PTTKHT bang UML - BM HTTT 7 8 OperationOperation Có 4 loại operations: ◦ implementor ◦ manager ◦ access ◦ helper. PTTKHT bang UML - BM HTTT 9 ImplementorImplementor OperationsOperations Thực thi 1 số chức năng nghiệp vụ. Operation loại này thường được tìm thấy trong lược đồ Interaction vì lược đồ này tập trung chủ yếu vào chức năng nghiệp vụ. Mỗi message trong lược đồ có thể ánh xạ thành 1 implementor operation. Mỗi implementor operation cũng có thể lần ngược về lại yêu cầu ban đầu. PTTKHT bang UML - BM HTTT 10 ImplementorImplementor OperationsOperations Vì mỗi operation được suy từ message trên lược đồ interaction, mà lược đồ này lại được suy từ flow of events, và flow of event đến từ use case và use case thì suy được từ requirement. Khả năng lần theo vết này (trace) bảo đảm rằng mỗi requirement đều đuợc hiện thực hoá thành code và mỗi đoạn code đều có thể suy ngược về lại requirement. PTTKHT bang UML - BM HTTT [...]... UML - BM HTTT 21 Lược đồ DCD ược PTTKHT bang UML - BM HTTT 22 Cách tạ ược Cách tạo lược đồ DCD Bước 1: Nhận dạng các lớp phần mềm và mô tả chúng: duyệt qua tất cả các lược đồ tương tác và liệt kê các lớp đã thiết kế Đối với hệ thống POS, các lớp này sẽ là: Register ProductCatalog Store Payment Sale ProductSpecification SalesLineItem Bước 2: Vẽ lược đồ class từ... trong lược đồ interaction PTTKHT bang UML - BM HTTT 14 Khai báo loại operation bá loạ Khai báo loại (stereotypes) operation giúp nhận biết nó thuộc loại nào để hiểu được mục đích sử dụng nó Cách khai báo loại: operationName Ví dụ: thao tac Promote thuộc loại implementor Promote() PTTKHT bang UML - BM HTTT 15 Tạ ược Tạo lược đồ... PTTKHT bang UML - BM HTTT 25 Cách tạ ược Cách tạo lược đồ DCD Bước 3: Thêm các operation vào các lớp dựa vào phân tích các lược đồ tương tác.Ví dụ nếu thông điệp makeLineItem được gửi đến 1 điển hình của lớp Sale thì lớp Sale phải chứa method makeLineItem ◦ Tập hợp tất cả các thông điệp gửi đến lớp X ngang qua tất cả lược đồ tương tác sẽ là các operation của lớp... cho thuộc tính đó PTTKHT bang UML - BM HTTT 12 Access Operations Các operation get và set thường quá thông dụng, không cần đưa vào lược đồ class để tránh gây rườm rà Ví dụ với n thuộc tính thì có tới 2n method loại này Vì vậy trong lược đồ class của hệ thống POS , ta bỏ qua không đưa method getPrice() vào lớp ProductSpecification PTTKHT bang UML - BM HTTT 13 Helper... PTTKHT bang UML - BM HTTT 15 Tạ ược Tạo lược đồ lớp thiết kế thiê Design Class Diagram- DCD Diagram DCD có thể được thực hiện tiếp theo ngay sau khi tạo lược đồ tuần tự nhưng trong thực tế thì DCD thường được tạo song song với lược đồ tuần tự PTTKHT bang UML - BM HTTT 16 Interface Theo lập trình OO thì cần tách rời phần thực thi của 1 lớp ra khỏi giao diện của nó Hầu hết... các lớp này thường không cần chỉ ra 1 cách tường minh trong DCD, vì chúng cho biết thông tin thì ít nhưng gây nhiễu cho lược đồ thì nhiều PTTKHT bang UML - BM HTTT 32 Thông báo đến đa đối tượng bá đế ượng PTTKHT bang UML - BM HTTT 33 Cách tạ ược Cách tạo lược đồ DCD Bước 4: Thêm mối kết hợp giữa các lớp thiết kế: mỗi đầu của mối kết hợp thường được gọi là role và... method makeLineItem ◦ Tập hợp tất cả các thông điệp gửi đến lớp X ngang qua tất cả lược đồ tương tác sẽ là các operation của lớp X PTTKHT bang UML - BM HTTT 26 PTTKHT bang UML - BM HTTT 27 Lược đồ DC của hệ thống POS ược củ thông PTTKHT bang UML - BM HTTT 28 Thông báo Create() bá Thông báo Create() trong UML là dạng độc lập ngôn ngữ dùng để chỉ sự khởi đầu Khi chuyển... ProductSpecification SalesLineItem Bước 2: Vẽ lược đồ class từ các lớp vừa nhận dạng kèm theo các thuộc tính đã đươc xác định trong mô hình domain PTTKHT bang UML - BM HTTT 23 Cách tạ ược Cách tạo lược đồ DCD Chú ý là một số lớp trong mô hình domain như Cashier không xuất hiện trong mô hình thiết kế ở lần lặp này Tuy nhiên trong các lần lặp sau đó khi có thêm yêu cầu mới hay... lớp nguồn đến lớp đích Chiều mũi tên ngầm định khả năng nhìn thấy – thường là khả năng nhìn thấy tượng trưng (attribute visibility) PTTKHT bang UML - BM HTTT 34 Cách tạ ược Cách tạo lược đồ DCD Thường thì mối kết hợp với mũi tên có hướng được hiểu như khả năng nhìn thấy tượng trưng từ lớp nguồn sang lớp đích Khi chuyển sang ngôn ngữ lập trình OO, lớp nguồn sẽ... được dùng để nhấn mạnh ý nghĩa nghiệp vụ PTTKHT bang UML - BM HTTT 35 Khả Khả năng nhìn thấy lớp khác nhì thâ khá Khả năng nhìn thấy và mối kết hợp giữa các lớp được chỉ ra trong lược đồ tương tác Mối kết hợp có mũi tên đi từ lớp A đến lớp B nếu: ◦ A gửi thông báo đến B ◦ A tạo điển hình của B ◦ A cần duy trì mối kết nối với B PTTKHT bang UML - BM HTTT 36 . Operation loại này thường được tìm thấy trong lược đồ Interaction vì lược đồ này tập trung chủ yếu vào chức năng nghiệp vụ. Mỗi message trong lược đồ có thể ánh xạ thành 1 implementor operation. . 10 ImplementorImplementor OperationsOperations Vì mỗi operation được suy từ message trên lược đồ interaction, mà lược đồ này lại được suy từ flow of events, và flow of event đến từ use case và use. thông dụng, không cần đưa vào lược đồ class để tránh gây rườm rà. Ví dụ với n thuộc tính thì có tới 2n method loại này. Vì vậy trong lược đồ class của hệ thống POS