Các khối xây dựng (building blocks

Một phần của tài liệu Phân tích thiết kế hệ thống thời gian thực (Trang 58)

* Các sự vật cấu trúc (structural things)

1. Lớp (Class): Là một tập hợp các đối tượng có cùng một tập thuộc tính, các hành vi, các mối quan hệ với những đối tượng khác.

Hình 2.2. Biểu diễn lớp

2. Sự cộng tác (Collaboration): Thể hiện một giải pháp thi hành bên trong hệ thống, bao gồm các lớp/đối tượng, mối quan hệ và sự tương tác giữa chúng để đạt được một chức năng mong đợi của ca sử dụng.

Hình 2.3. Biểu diễn cộng tác

3. Giao diện (Interface): Là một tập hợp các phương thức (operation) tạo nên dịch vụ của một lớp hoặc một thành phần (component). Nó chỉ ra một tập các operation ở mức khai báo chứ không phải ở mức thực thi (implementation).

Hình 2.4. Biểu diễn giao diện

Tên lớp Các thuộc tính

Các phương phức

4. Ca sử dụng (Use case): là mô tả một tập hợp của nhiều hành động tuần tự mà hệ thống thực hiện để đạt được một kết quả có thể quan sát được đối với một actor cụ thể nào đó. Actor là những gì ở bên ngoài mà tương tác với hệ thống. Use case mô tả sự tương tác giữa actor và hệ thống. Nó thể hiện chức năng mà hệ thống sẽ cung cấp cho actor. Tập hợp các Use case của hệ thống sẽ tạo nên tất cả các trường hợp mà hệ thống có thể được sử dụng.

Hình 2.5. Biểu diễn ca sử dụng

5. Lớp hoạt động (Acitive class): là một lớp mà các đối tượng của nó thực hiện các hoạt động điều khiển. Lớp tích cực cũng giống như lớp bình thường ngoại trừ việc các đối tượng của nó thể hiện các phần tử mà ứng xử của chúng có thể thực hiện đồng thời với các phần từ khác. Lớp này thường dùng để biểu diễn tiến trình(process) và luồng(thread)

Hình 2.6. Biểu diễn lớp hoạt động

6. Thành phần (Component): là biểu diễn vật lý của mã nguồn. Trong hệ thống ta sẽ thấy các kiểu khác nhau của component như các thành phần COM+ hay JavaBeans cũng như là các thành phần như các file mã nguồn, các file nhị phân tạo ra trong quá trình phát triển hệ thống.

7. Nút (Node): là thể hiện một thành phần vật lý như là một máy tính hay một thiết bị phần cứng.

Hình 2.8. Biểu diễn nút

* Các sự vật hành vi (behavioral things)

1. Sự tƣơng tác (Interaction): bao gồm một tập các thông báo (message) trao đổi giữa các đối tượng trong một ngữ cảnh cụ thể nào đó để thực hiện một chức năng nào đó.

Hình 2.9. Biểu diễn thông báo

2. Máy trạng thái (States machine): thể hiện các trạng thái của một đối tượng trong thời gian sống của nó nhằm đáp ứng các sự kiện, các tác động từ bên ngoài.

* Các sự vật nhóm gộp (Grouping things)

Gói (Package): Dùng để nhóm các phần tử có một ý nghĩa chung nào đó vào thành nhóm. Không giống như các thành phần (component - tồn tại trong lúc thực thi), một package chỉ mang tính trừu tượng. Package dùng để nhìn hệ thống ở một mức độ tổng quát hơn so với việc xem xét từng phần tử trong package.

* Sự vật giải thích (Annotational thing): là các chú thích dùng để mô tả, làm sáng tỏ và ghi chú về bất cứ phần tử nào trong mô hình. Thường dùng nhất là Note gồm các ràng buộc hoặc ghi chú, được gắn với một phần tử hoặc một tập hợp các phần tử.

* Các quan hệ (Relationships)

1. Quan hệ phụ thuộc (Dependency): Là mối quan hệ ngữ nghĩa giữa hai sự vật, trong đó sự thay đổi của một sự vật (sự vật độc lập) có thể tác động đến ngữ nghĩa của một sự vật khác (sự vật phụ thuộc).

Hình 2.11. Biểu diễn quan hệ phụ thuộc

2. Quan hệ kết hợp ( Association): Là mối quan hệ cấu trúc mô tả một tập các mối liên kết giữa một số các đối tượng của một lớp. Nói một cách đơn giản, khi một đối tượng của lớp này gửi thông điệp tới hoặc nhận thông điệp từ một đối tượng của lớp kia thì ta nói giữa 2 lớp có mối quan hệ association.

Hình 2.12. Biểu điễn quan hệ kết hợp

3. Quan hệ tập hợp (Aggreagation): Là một dạng đặc biệt của quan hệ liên kết. Nó thể hiện sự liên kết ―chặt‖ hơn, đó là mối quan hệ toàn thể-bộ phận.

Hình 2.13. Biểu diễn quan hệ tập hợp

4. Quan hệ hợp thành (Composition): là một dạng đặc biệt của quan hệ tập hợp (aggregation). Trong đó nếu như đối tượng toàn thể bị hủy thì các đối tượng bộ phận của nó cũng bị hủy theo.

Hình 2.14. Biểu diễn quan hệ hợp thành

5. Quan hệ tổng quát hoá (Generalization): là mối quan hệ tổng quát hóa/cụ thể hóa trong đó đối tượng cụ thể sẽ kế thừa các thuộc tính và phương thức( behavior) của đối tượng tổng quát.

Hình 2.15. Biểu diễn quan hệ tổng quát hóa

6. Quan hệ sự thực hiện hóa (Realization): Là mối quan hệ ngữ nghĩa giữa các phân lớp, sao cho các phân lớp khác nhau đảm nhiệm thực hiện những trách nhiệm khác nhau. Mối quan hệ thực hiện được đưa vào hai vị trí: giữa các giao diện và các lớp hoặc các thành phần thực hiện của nó. Một mối quan hệ thực hiện được xem như một mối quan hệ nằm giữa mối quan hệ tổng quát và mối quan hệ phụ thuộc.

* Các biểu đồ của UML

Có 9 loại biểu đồ được sử dụng trong UML như được thể hiện trong Hình 2.19.

Hình 2.17. Các biểu đồ trong UML 1. Biểu đồ ca sử dụng (Use Case Diagram)

Biểu đồ ca sử dụng để mô hình hoá các khía cạnh động của hệ thống. Nó là trung tâm để mô hình hoá hành vi của hệ thống, một hệ thống con, một lớp. Mỗi biểu đồ chỉ ra một tập các ca sử dụng, các tác nhân và các mối quan hệ giữa chúng.

Biểu đồ ca sử dụng mô tả cách nhìn từ bên ngoài để thấy được bối cảnh mà trong đó hệ thống đang tồn tại và những mối quan hệ giữa nó và môi trường, mô tả hoạt động của hệ thống từ bên ngoài không lệ thuộc vào việc nó thực hiện các hoạt động đó như thế nào. Vì vậy, mô hình ca sử dụng là phương tiện để mô tả các yêu cầu của hệ thống. Ta sử dụng biểu đồ ca sử dụng để:Mô hình hoá ngữ cảnh của hệ thống và Mô hình hoá các yêu cầu của một hệ thống.

Hình 2.18. Biểu đồ ca sử dụng Biểu đồ ca sử dụng Scenario DiagramsScenario DiagramsBiểu đồ cộng tác thành phầnBiểu đồ Biểu đồ triển khai Biểu đồ đối tượng Scenario DiagramsScenario DiagramsBiểu đồ trạng thái Biểu độ tuần tự Biểu đồ lớp Biểu đồ hoạt động Các mô hình

2. Biểu đồ lớp (Class Diagram)

Biểu đồ lớp là một tập các lớp, các giao diện, sự cộng tác và mối quan hệ của chúng. Ta sử dụng biểu đồ lớp để mô hình hoá khung nhìn thiết kế tĩnh của hệ thống. Ta sử dụng biểu đồ lớp để:Mô hình hóa bảng từ vựng của hệ thống và mô hình hoá các sự cộng tác đơn giản

Hình 2.19. Biểu đồ lớp 3. Biểu đồ đối tƣợng (Object Diagram)

Biểu đồ đối tượng mô hình hóa các thể hiện của các sự vật trong một biểu dồ lớp. Một biểu đồ đối tượng đưa ra một tập các đối tượng và các mối quan hệ giữa chúng tại một thời điểm. Ta sử dụng biểu đồ đối tượng để mô hình hóa các khía cạnh thiết kế tĩnh hoặc các khía cạnh tiến trình tĩnh của hệ thống. Nó cũng được sử dụng để mô hình hóa cấu trúc của đối tượng.

Hình 2.20. Biểu đồ đối tƣợng 4. Biểu đồ thành phần (Component Diagram)

Các biểu đồ thành phần sử dụng để mô hình hóa mặt vật lý của các hệ hướng đối tượng. Nó cho ta cách nhìn việc bố trí và thực thi tĩnh của một hệ thống. Ta sử dụng biểu đồ thành phần để :

- Mô hình hóa mã nguồn

- Mô hình hóa xuất phẩm có thể thực hiện được - Mô hình hóa các cơ sở dữ liệu vật lý

- -

Hình 2.21. Biểu đồ thành phần 5. Biểu đồtriển khai (Deployment Diagram)

Biểu đồ triển khai mô hình hóa các khía cạnh vật lý của một hệ thống hướng đối tượng. Nó biểu diễn cấu hình các nút xử lý đang vận hành và các thành phần hoạt động ở trên chúng. Nó có thể còn bao gồm các nút và các ràng buộc. Nó cũng hướng vào việc mô hình hóa sự phân tán, gửi đi và cài đặt các phần tạo nên hệ thống vật lý. Ta sẽ sử dụng các biểu đồ bố trí để :

- Mô hình hóa các hệ thống nhúng

- Mô hình hóa các hệ thống máy khách/máy dịch vụ - Mô hình hóa các hệ thống phần tán đầy đủ

Hình 2.22. Biểu đồ triển khai 6. Biểu đồ hoạt động (Activity Diagram)

Biểu đồ hoạt động là trường hợp đặc biệt của biểu đồ trạng thái. Nó chỉ dòng điều khiển chính từ hoạt động này đến hoạt động khác, nó cũng bao gồm việc mô hình hóa các bước tuần tự (có thể là đồng thời) trong một tiến trình xử lý. Biểu đồ trạng thái và biểu đồ hoạt động biểu diễn khía cạnh động của hệ thống. Chúng có thể dùng cho việc mô hình hóa vòng đời của một đối tượng. Ta sẽ dùng biểu đồ hoạt động để :

- Mô hình hóa luồng công việc (có thể có rẽ nhánh, phân nhánh, sát nhập) - Mô hình hóa một tác vụ (một thủ tục tính toán)

Hình 2.23. Biểu đồ hoạt động 7. Biểu đồ sơ đồ trạng thái (Statechart Diagram)

Biểu đồ sơ đồ trạng thái biểu diễn một máy trạng thái. Nó biểu diễn dòng điều khiển từ trạng này tới trạng thái khác. Nó nhấn mạnh dòng điều khiển từ hoạt động này đến hoạt động khác đang xảy ra bên trong một máy trạng thái.

Hình 2.24. Biểu đồ trạng thái

8. Biểu đồ tƣơng tác (Interaction Diagram): Biểu đồ cộng tác và Biểu đồ tuần tự là hai dạng của biểu đồ tương tác. Chúng dùng để mô hình hoá các khía cạnh động của hệ thống. Nó gồm một tập các đối tượng và các mối quan hệ truyền thông báo giữa chúng. Biểu đồ tuần tự nhấn mạnh đến trình tự thời gian của các thông báo; còn biểu đồ cộng tác nhấn mạnh tới tổ chức cấu trúc của các đối tượng gửi và nhận thông báo.

Mặc dù chín biểu đồ trên đã vượt xa nhu cầu chung nhất mà ta thường gặp trong thực tế phát triển phần mềm hướng đối tượng. Tuy nhiên, UML còn cung cấp những loại biểu đồ khác cho phép mô hình hóa những trường hợp kinh tế hơn.

Một phần của tài liệu Phân tích thiết kế hệ thống thời gian thực (Trang 58)