Phân tích và Thiết kế hướng đối tượng dùng UML: THiết kế class doc

131 669 2
Phân tích và Thiết kế hướng đối tượng dùng UML: THiết kế class doc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 1 Phân tích Thiết kế Hướng đối tượng dùng UML Module 13: Thiết kế Class PT & TK Hướng đối tượngThiế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ế Class vò trí của công đoạn này trong qui trình w Xác đònh bổ sung các class quan hệ của chúng cần để hỗ trợ cho việc cài đặt các cơ chế kiến trúc đã chọn w Xác đònh phân tích việc chuyển đổi trạng thái các đối tường trong các class kiểm soát được trạng thái w Tinh chỉnh các quan hệ, operation, thuộc tính PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 3 Vò trí của Thiết kế Class 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ượngThiết kế kiến trúc Dương Anh Đức 4 Tổng quan về Class Supplementary Specifications Class Design Architecture Document Design Model Design Guidelines Use-Case Realization Design Classes Design Classes PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 5 Các bước thiết kế Class w Tạo các Design Class ban đầu w Xác đònh các Persistent Class w Đònh nghóa các Operation w Đònh nghóa Class Visibility w Đònh nghóa các Method w Đònh nghóa các trạng thái w Đònh nghóa các thuộc tính w Đònh nghóa các phụ thuộc w Đònh nghóa các mỗi kết hợp w Đònh nghóa các quan hệ tổng quát hóa w Giải quyết đụng độ giữa các Use-Case w Xử lý các yêu cầu phi chức năng nói chung w Checkpoints PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 6 Các bước thiết kế Class w Tạo các Design Class ban đầu w Xác đònh các Persistent Class w Đònh nghóa các Operation w Đònh nghóa Class Visibility w Đònh nghóa các Method w Đònh nghóa các trạng thái w Đònh nghóa các thuộc tính w Đònh nghóa các phụ thuộc w Đònh nghóa các mỗi kết hợp w Đònh nghóa các quan hệ tổng quát hóa w Giải quyết đụng độ giữa các Use-Case w Xử lý các yêu cầu phi chức năng nói chung w Checkpoints PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 7 Các khảo sát khi thiết kế Class w Class stereotype § Boundary § Entity § Control w Các design pattern khả dụng w Các cơ chế kiến trúc § Persistence § Distribution § … PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 8 Một class phải có một mục tiêu rõ ràng. Một class phải làm một việc gì đó phải làm tốt điều này ! Cần bao nhiêu Class ? w Nếu nhiều class đơn giản. Nghóa là mỗi class: § Đóng gói một phần ít hơn trên toàn bộ hệ thống § Nhiều khả năng dùng lại hơn § Dễ cài đặt hơn w Nếu nhiều class phức tạp. Nghóa là mỗi class: § Đóng gói một phần nhiều hơn trên toàn bộ hệ thống § Ít khả năng dùng lại hơn § Khó cài đặt hơn PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 9 MainForm SubWindow DropDownListButton MainWindow Thiết kế các Boundary Class w Các User interface (UI) boundary class § Công cụ xây dựng giao diện người dùng nào sẽ được sử dụng? § Bao nhiêu giao diện có thể được xây dựng bởi công cụ? w Các External system interface boundary class § Thường được mô hình như subsystem PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 10 Analysis Design FatClass - transientBookeeping + getCommonlyUsedAtt1() + getCommonlyUsedAtt2() + getRarelyUsedAtt3() + getRarelyUsedAtt4() FatClassDataHelper + commonlyUsedAtt1 + commonlyUsedAtt2 FatClassLazyDataHelper + rarelyUsedAtt3 + rarelyUsedAtt4 1 1 FatClass - transientBookeeping + commonlyUsedAtt1 + commonlyUsedAtt2 + rarelyUsedAtt3 + rarelyUsedAtt4 << entity >> Thiết kế các Entity Class w Các Entity object thường thụ động persistent w Các yêu cầu về hiệu năng có thể buộc ta phải tái xây dựng w Xem thêm bước xác đònh Persistent Class [...]... các object thay vì “data bits” PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 20 Phát hiện Additional Classes Relationships ClassA Class2 op1(var1 :Class2 ): Class3 Class3 Additional classes relationships có thể được thêm vào để hỗ trợ signature PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 21 Operation Visibility w Tính khả kiến được dùng để cung cấp tính đóng gói w Giá.. .Thiết kế Control Class w Chuyện gì xảy ra với các Control Class? § Chúng thật sự cần thiết? § Có phải tách chúng ra không? w Dựa vào đâu để quyết đònh? § § § § Độ phức tạp Khả năng thay đổi Tính phân tán hiệu năng Transaction management PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 11 Các bước thiết kế Class w w w w w w w w w w w w w Tạo các Design Class ban đầu Xác... Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 25 Utility Classes w Thế nào là một Utility Class? § Utility là một class stereotype § Dùng để chỉ các class chứa một bộ các chương trình con miễn phí w Tại sao lại dùng chúng? § Để cung cấp các dòch vụ có thể hữu dụng trong các ngữ cảnh khác nhau § Để gói các hàm thư viện hay các ứng dụng phi đối tượng MathFunctions PT & TK Hướng đối tượng. .. Tầm vực Operation • Class operation hay instance operation PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 16 Nhắc lại: Operation là gì ? Class Operation PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức CourseOffering addStudent deleteStudent getStartTime getEndTime 17 Operation: Tìm chúng ở đâu? w Các thông điệp trong các interaction diagram :ClassA :ClassB :ClassA // Perform responsibility... một use case cụ thể (còn tiếp) PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 29 Bài tập: Define Operations (tt.) w Với các design class, hãy xác đònh: § Các Operation mô tả hoàn chỉnh của chúng § Operation scope visibility § Mọi mối quan hệ các class bổ sung để hỗ trợ cho các operation đã đònh nghóa (còn tiếp) PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 30 Bài tập:... strategy must be coordinated w Ở đây, nhớ rằng các class đều persistent Class Design Class Designer Database Designer PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức Database Design Data Model 14 Các bước thiết kế Class w w w w w w w w w w w w w Tạo các Design Class ban đầu Xác đònh các Persistent Class Đònh nghóa các Operation Đònh nghóa Class Visibility Đònh nghóa các Method Đònh nghóa... Đònh nghóa các Operation (tt.) w Xây dựng lược đồ sau: § VOPC class diagram, chứa tất cả các operation, operation signature, các quan hệ PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 31 Các bước thiết kế Class w w w w w w w w w w w w w Tạo các Design Class ban đầu Xác đònh các Persistent Class Đònh nghóa các Operation Đònh nghóa Class Visibility Đònh nghóa các Method Đònh nghóa các trạng... của attribute / operation § Instance: 1 instance cho mỗi class instance § Classifier: 1 instance cho tất cả class instance w Tầm vực mức Classifier được ký hiệu bằng cách gạch dưới tên attribute/operation Class - classifierScopeAttribute - instanceScopeAttribute classifierScopeOperation() instanceScopeOperation() PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 24 Ví dụ: Scope Student... operations Protected operations Public operations PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 22 Ký hiệu tính khả kiến? w Các ký hiệu sau được dùng: § § § + Public access # Protected access - Private access Class - privateAttribute # protectedAttribute +publicOp() # protectedOp() - privateOp() PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 23 Tầm vực w Xác đònh số lượng thể... Đònh nghóa các mỗi kết hợp Đònh nghóa các quan hệ tổng quát hóa Giải quyết đụng độ giữa các Use-Case Xử lý các yêu cầu phi chức năng nói chung Checkpoints PT & TK Hướng đối tượngThiết kế kiến trúc Dương Anh Đức 32 Nhắc lại: Package Element Visibility PackageA Class A1 A B Class A2 Class A3 Chỉ có thể tham chiếu tới các public class từ bên ngoài package chứa nó PackageB +Class B1 -Class B2 Public visibility . 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 13: Thiết kế Class PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương. Class Supplementary Specifications Class Design Architecture Document Design Model Design Guidelines Use-Case Realization Design Classes Design Classes PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 5 Các bước thiết kế Class w. năng thay đổi § Tính phân tán và hiệu năng § Transaction management PT & TK Hướng đối tượng – Thiết kế kiến trúc Dương Anh Đức 12 Các bước thiết kế Class w Tạo các Design Class ban đầu w Xác

Ngày đăng: 27/06/2014, 03:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan