UML là sự cố gắng hợp nhất nhiều kỹ thuật mô hình hóa hướng đối tượng. Một phương pháp luận phát triển trong mô hình hướng đối tượng cần tận dụng tối đa các mô hình UML sẵn có. Tuy nhiên, không phải trong bất kỳ trường hợp nào cũng sử dụng cú pháp và ngữ nghĩa của mô hình UML đang tồn tại để mô tả các mô hình cho phương pháp luận phát triển cụ thể. Phân tích viên và người làm phương pháp luận tập trung nỗ lực kết hợp và mở rộng UML với cú pháp và ngữ nghĩa được yêu cầu cho phương pháp luận phân tích và thiết kế cụ thể. Có hai cách mở rộng khả năng mô hình hóa UML.
Cách thứ nhất và cũng là cách đơn giản nhất là sử dụng cơ chế mở rộng UML. UML cung cấp một vài cơ chế mở rộng cho nhiều cấu trúc mô hình hóa khác nhau như rập khuôn, ràng buộc, khai báo thẻ, và gán giá trị thẻ. Cách thứ hai khó hơn, là thêm các cấu trúc mô hình hóa mới vào ngôn ngữ. Phương pháp này được thực hiện tại mức siêu mô hình mà ở đó khái niệm trình diễn cấu trúc mới có liên quan đến các khái niệm UML khác được định nghĩa trong siêu mô hình UML. Các nhà thiết kế thường được khuyến cáo sử dụng phương pháp thứ nhất.
Cách thứ hai sử dụng các cấu trúc UML khác nhau để diễn tả cùng một khái niệm. Ví dụ, để mô hình hóa mẫu thiết kế trong UML, thiết kế viên tận dụng các cấu trúc UML khác nhau: biểu đồ lớp (class diagram), gói (package), tiêu bản (template), rập khuôn (stereotype).. Bởi vì UML được phát triển như một ngôn ngữ mô hình hóa tổng quát không thích hợp cho tiến trình thiết kế và phương pháp luận thiết kế cụ thể. Vì thế, mỗi một phương pháp luận thiết kế sử dụng cấu trúc UML một cách phù hợp để nêu bật các khía cạnh đặc biệt của phương pháp, khái niệm và tiến trình thiết kế.
Khi sử dụng mô hình thiết kế để biểu diễn mẫu thiết kế, chúng ta dựa trên các mô hình đang tồn tại là kết quả của việc nghiên cứu nghiêm túc và cố gắng. UML là một chuẩn mô hình hóa ứng dụng hướng đối tượng thực tế và vì vậy sự biểu diễn POAD của các mẫu và sự kết hợp của chúng nên gắn với cấu trúc mô hình hóa UML.
Sử dụng UML để mô tả mô hình quá trình phát triển, giúp đỡ các phương pháp viên và người làm mô hình trong quá trình hiểu và thực hành POAD bằng việc liên kết các mô hình thành mô hình UML đa năng.
Trong UML, chi tiết sự cộng tác được minh họa trong biểu đồ cộng tác hay biểu đồ tương tác. Ở đó, thông điệp giữa các đối tượng được thể hiện ra qua các mối quan hệ liên kết từ các lớp mẫu. Vì thế, mô hình thiết kế cho một mẫu sẽ có một biểu đồ lớp nắm bắt cấu trúc của nó và một biểu đồ tương tác để nắm bắt hành vi của đối tượng. Nhưng cả hai biểu đồ này đều mô tả thiết kế bên trong của mẫu. Ví dụ, hình 2.5 minh họa cấu trúc và hành vi của mẫu Observer. Các biều đồ này mô tả thiết kế bên trong và hành vi của mẫu quan sát nhưng không xem mẫu Observer như một đơn vị cấu thành.
Có thế biểu diễn sự cộng tác như một thực thể đơn mà có thể được quan sát từ phía ngoài như một mô hình cấu trúc. Ví dụ, sự cộng tác được sử dụng để xác định mẫu thiết kế trong thiết kế hệ thống. Hình 2.9 minh họa cấu trúc UML sử dụng để mô hình hóa một sự cộng tác.
(a) (b)
Hình 2.9 Biểu đồ lớp (a) và Biểu đồ tương tác (b) của mẫu Observer.
ConcreteObserver ObserverState Update() bservers ConcreteSubject SubjectState getState() Subject Attach(Observer) Detach(Observer) Notify() Observer Update() subjec t
Trong UML, mẫu tương đương với một sự cộng tác, mô tả cấu trúc của một mẫu thiết kế. Sự cộng tác là một cách mô hình hóa sự cộng tác giữa các bên tham gia khi các bên tham gia được xác định bởi tham số đầu vào. Khi thể hiện cấu trúc cộng tác tham số UML, các thành phần mô hình thực tế được thay thế bới các đối số trong khai báo mẫu. Cộng tác tham số trong UML được biểu diễn bằng một hình elip nét đứt chứa tên của nó. Một đường đứt nét gán nhãn được kéo từ ký hiệu cộng tác đến từng ký hiệu của các bên tham gia. Mỗi đường được gán nhãn vai trò của tác nhân tham gia trong ngữ cảnh cộng tác. Vì thế, sự cộng tác tham số chỉ ra cách sử dụng mẫu thiết kế và các bên tham gia cộng tác trong mẫu.
Chƣơng 3
HỆ THỐNG GIÁM SÁT TRẠNG THÁI HOẠT ĐỘNG TRONG TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG