de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

UML là gì?

UML là một ký hiệu chuẩn cho các phương pháp hướng đối tượng, được tạo ra bằng cách thống nhất các kỹ thuật mô hình hóa đối tượng. Nó được sử dụng để phân tích, thiết kế và triển khai hệ thống. Ngôn ngữ mô hình hóa thống nhất được thiết kế để đáp ứng nhu cầu của các doanh nghiệp trong việc tự động hóa quá trình sản xuất phần mềm, nâng cao chất lượng và giảm chi phí cũng như thời gian đưa sản phẩm ra thị trường. Nó cũng cung cấp nền tảng hình thức để hiểu ngôn ngữ mô hình hóa.

Tại sao lại dùng UML?

Các ứng dụng doanh nghiệp quy mô lớn phải được cấu trúc theo cách cho phép mở rộng, bảo mật và thực thi ổn định trong điều kiện căng thẳng. Một kiến trúc được thiết kế tốt giúp tái sử dụng mã nguồn, đồng thời cho phép các lập trình viên bảo trì tìm và sửa các lỗi xuất hiện lâu sau khi tác giả ban đầu đã chuyển sang các dự án khác. Mô hình hóa là điều thiết yếu đối với các dự án phần mềm quy mô lớn, và cũng hỗ trợ các dự án trung bình và nhỏ. Một mô hình đảm bảo rằng chức năng kinh doanh đầy đủ và chính xác, nhu cầu người dùng cuối được đáp ứng, và thiết kế chương trình hỗ trợ các yêu cầu về khả năng mở rộng, độ bền, bảo mật, khả năng mở rộng và các đặc tính khác.

  • Các mô hình giúp chúng ta làm việc ở mức trừu tượng cao hơn bằng cách ẩn hoặc che giấu chi tiết, làm nổi bật bức tranh tổng thể, hoặc tập trung vào các khía cạnh khác nhau của bản mẫu.
  • UML cho phép bạn mô hình hóa bất kỳ loại ứng dụng nào, chạy trên bất kỳ loại phần cứng, hệ điều hành, ngôn ngữ lập trình và mạng nào, và cũng có thể được sử dụng để mô hình hóa các ứng dụng không phải hướng đối tượng.
  • Một số công cụ phân tích mã nguồn hiện có (hoặc, một số người khẳng định, mã đối tượng!) và đảo ngược nó thành một bộ cácbiểu đồ UML, trong khi những công cụ khác thực thi các mô hình UML, thường tạo ra mã ngôn ngữ chương trình chạy nhanh nếu trình sinh mã tích hợp các mẫu mở rộng tốt nhất.
  • Quá trình thu thập và phân tích các yêu cầu của một ứng dụng và tích hợp chúng vào thiết kế chương trình là một quá trình phức tạp. UML là một ngôn ngữ giúp bạn thể hiện kết quả phân tích và thiết kế của mình.

Nó bắt nguồn từ đâu?

UML có nguồn gốc từ các phương pháp lập trình hướng đối tượng được phát triển vào cuối những năm 1980 và đầu những năm 1990. Jim Rumbaugh, Grady Booch và Ivar Jacobson đã hợp nhất ý tưởng của họ thành Phương pháp thống nhất, sau này được gọi là Ngôn ngữ mô hình hóa thống nhất (UML). Đề xuất đầu tiên (RFP) do Nhóm Quản lý Đối tượng (OMG) phát hành đã tạo động lực cho nhiều tổ chức hợp tác để đưa ra phản hồi chung. Phản hồi RFP, UML 1.0, được định nghĩa rõ ràng, biểu đạt tốt, mạnh mẽ và mang tính ứng dụng rộng rãi, được nâng cấp từ 1.1 đến 1.5, sau đó là UML 2.1 từ 01 đến 06 (hiện nay phiên bản UML hiện hành là 2.5)

Lợi ích của UML

Lợi ích tốt nhất khi sử dụng UML là mã trong biểu đồ có thể dễ dàng đọc được bởi bất kỳ lập trình viên nào dù chỉ hiểu một phần nhỏ chương trình.

  • UML là một chuẩn được dùng để mô tả trực quan một chương trình. Nó được sử dụng rộng rãi và được chấp nhận như ngôn ngữ để phác thảo chương trình.
  • Một biểu đồ UML thể hiện mối quan hệ giữa các lớp và các thực thể trong một chương trình máy tính. Dễ dàng hiểu mối quan hệ trong chương trình bằng cách xem biểu đồ.
  • Một biểu đồ UML giúp giải thích mối quan hệ trong chương trình một cách trực tiếp, và cho phép lập trình viên tái sử dụng các phần mã đã tồn tại thay vì viết lại các hàm đó.
  • UML là chuẩn hiện hành cho lập trình trong các ngôn ngữ lập trình hướng đối tượng. Nó giúp lập kế hoạch cho chương trình trước khi bắt đầu lập trình, vàsinh mã dựa trên các lớp được thiết lập trong mô hình.

Biểu đồ UML và mô hình – Cấu trúc so với Hành vi

Một biểu đồ UML thể hiện cách các thành phần của hệ thống tương tác với nhau và cách hệ thống sẽ hoạt động. Một mô hình UML là biểu diễn đồ họa đầy đủ của mô hình hệ thống, trong khi biểu đồ là một biểu diễn một phần.

Xem tĩnh so với Xem động

Mô hình hóa tĩnh thể hiện cấu trúc của hệ thống bằng cách sử dụng các đối tượng, thuộc tính, thao tác và mối quan hệ, trong khi mô hình hóa động thể hiện hành vi của hệ thống thông qua sự hợp tác giữa các đối tượng và các thay đổi trạng thái nội bộ của các đối tượng.

  • Các biểu đồ cấu trúcthể hiện các khía cạnh tĩnh của một hệ thống phần mềm. Chúng được sử dụng để ghi chép kiến trúc phần mềm của các hệ thống phần mềm.
  • Các sơ đồ hành vi mô tả khía cạnh động của một hệ thống. Chúng được sử dụng để mô tả chức năng của các hệ thống phần mềm.

14 loại sơ đồ UML

UML 2.2 có14 loại sơ đồ, trong đó 7 loại thể hiện thông tin cấu trúc và 7 loại thể hiện các khía cạnh chung về tương tác.

Sơ đồ cấu trúc

Vì các sơ đồ cấu trúc thể hiện cấu trúc, chúng được sử dụng rộng rãi để tài liệu hóa kiến trúc phần mềm của các hệ thống phần mềm. Các sơ đồ cấu trúc mô tả cấu trúc tĩnh của các thành phần trong hệ thống của bạn. Bảy sơ đồ cấu trúc UML được sắp xếp một cách tương đối quanh các nhóm chính của các thành phần mà bạn sẽ tìm thấy khi mô hình hóa một hệ thống.

Ví dụ, sơ đồ thành phần mô tả cách một hệ thống phần mềm được chia thành các thành phần và thể hiện các mối phụ thuộc giữa các thành phần này.

Cấu trúc Sơ đồ Mô tả ngắn gọn
Sơ đồ cấu trúc phức hợp Nó hiển thị cấu trúc bên trong của một bộ phân loại, các tương tác của bộ phân loại với môi trường thông qua các cổng, hoặc hành vi của một hợp tác.
Sơ đồ triển khai Nó hiển thị một tập hợp các nút và các mối quan hệ giữa chúng, minh họa quan điểm triển khai tĩnh của một kiến trúc.
Sơ đồ gói Nó nhóm các thành phần UML liên quan vào một tập hợp các cấu trúc UML có liên quan về mặt logic.
Sơ đồ hồ sơ
Sơ đồ lớp Nó hiển thị một tập hợp các lớp, giao diện và các hợp tác cùng với các mối quan hệ giữa chúng, thường được tìm thấy khi mô hình hóa các hệ thống hướng đối tượng.
Sơ đồ đối tượng Nó hiển thị một tập hợp các đối tượng và các mối quan hệ giữa chúng, là các bức ảnh tĩnh của các thể hiện của các thành phần được tìm thấy trong sơ đồ lớp.
Sơ đồ thành phần Nó hiển thị một tập hợp các thành phần và các mối quan hệ giữa chúng, minh họa quan điểm triển khai tĩnh của một hệ thống.

Sơ đồ hành vi

Năm sơ đồ hành vi của UML được sử dụng để mô hình hóa hành vi của một hệ thống. Chúng thể hiện cách dữ liệu di chuyển qua hệ thống, cách các đối tượng giao tiếp với nhau, cách sự trôi qua của thời gian ảnh hưởng đến hệ thống, và những sự kiện nào gây ra hệ thống thay đổi trạng thái nội bộ.

Hành vi Sơ đồ Mô tả ngắn gọn
Sơ đồ hoạt động Nó là một biểu diễn đồ họa về các luồng công việc của các hoạt động và hành động theo từng bước, có hỗ trợ lựa chọn, lặp lại và song song
Sơ đồ trường hợp sử dụng Nó mô tả các yêu cầu chức năng của hệ thống dưới dạng các trường hợp sử dụng, giúp bạn liên kết những gì bạn cần từ hệ thống với cách hệ thống đáp ứng những nhu cầu đó.
Sơ đồ máy trạng thái Nó thể hiện hành vi rời rạc của một phần của hệ thống đã được thiết kế thông qua các chuyển trạng thái hữu hạn.
Sơ đồ trình tự Nó thể hiện trình tự các tin nhắn được trao đổi giữa các đối tượng cần thiết để thực hiện chức năng của tình huống.
Sơ đồ giao tiếp Nó thể hiện các tương tác giữa các đối tượng và/hoặc các bộ phận (được biểu diễn dưới dạng đường đời) bằng các tin nhắn theo thứ tự trong một bố cục tự do.
Sơ đồ tổng quan tương tác Nó mô tả luồng điều khiển với các nút có thể chứa các yếu tố khácsơ đồ tương tác.
Sơ đồ thời gian Nó thể hiện các tương tác khi mục đích chính của sơ đồ là suy luận về thời gian bằng cách tập trung vào các điều kiện thay đổi bên trong và giữa các đường đời dọc theo trục thời gian tuyến tính.

1. Sơ đồ lớp

Một lớpmô tả một cái nhìn tĩnh của một ứng dụng, và giúp xây dựng mã phần mềm có thể thực thi. Nó hiển thị các thuộc tính, lớp, hàm và mối quan hệ để cung cấp cái nhìn tổng quan về hệ thống phần mềm. Chúng được sử dụng để xây dựng một cái nhìn tĩnh của một ứng dụng. Một sơ đồ mô hình đối tượng có thể giảm thời gian bảo trì bằng cách cung cấp một bản sơ đồ tổng quát của một ứng dụng trước khi lập trình.

Tùy thuộc vào độ phức tạp của hệ thống, bạn có thể sử dụng một sơ đồ lớp duy nhất để mô hình hóa toàn bộ hệ thống, hoặc bạn có thể sử dụng nhiều sơ đồ lớp để mô hình hóa các thành phần của hệ thống. Sơ đồ lớp là nền tảng trong quá trình mô hình hóa đối tượng và mô tả cấu trúc tĩnh của hệ thống. Trong giai đoạn phân tích, sơ đồ lớp có thể giúp bạn hiểu rõ các yêu cầu của miền vấn đề và xác định các thành phần của nó.

Sơ đồ lớplà khối xây dựng chính trong mô hình hóa hướng đối tượng. Nó thể hiện cấu trúc của một hệ thống hướng đối tượng bằng cách hiển thị các lớp, thuộc tính, thao tác và mối quan hệ giữa các đối tượng. Phần trên chứa tên lớp, phần giữa chứa các thuộc tính của nó, và phần dưới chứa các thao tác của nó.

Các mối quan hệ được ghi ở giữa đường nối liên kết. Chúng thường có đầu mũi tên nhỏ để chỉ hướng đọc mối quan hệ. Số lượng đối tượng trong một mối quan hệ có thể được biểu diễn như sau: Chính xác một, không có, một, nhiều, một hoặc nhiều.

Chỉnh sửa sơ đồ lớp này

  • Một lớp là bản vẽ mẫu cho một đối tượng, và điểm mấu chốt của thiết kế hướng đối tượng không phải là về đối tượng, mà là về lớp, vì chúng ta sử dụng lớp để tạo ra đối tượng.
  • Việc lựa chọn góc nhìn phụ thuộc vào bạn đã tiến xa đến đâu trong quá trình phát triển. Các mô hình phân tích thể hiện sự kết hợp giữa góc nhìn khái niệm và góc nhìn cụ thể.
  • Các mối quan hệ lớp UML được sử dụng để truyền đạt cách mã nên được triển khai từ các sơ đồ. Nếu được hiểu chính xác, mã được triển khai sẽ phản ánh đúng ý định của nhà thiết kế.
  • Một mối quan hệ được biểu diễn bằng một đường nối hai lớp. Ở mỗi đầu, chúng ta có thể chỉ ra quyền sở hữu, vai trò mà các phần tử ở đầu đó đóng, và số lượng thể hiện.
  • Một mối quan hệ tổng quát hóa là mối quan hệ giữa hai lớp. Mỗi thể hiện của lớp cụ thể cũng là một thể hiện gián tiếp của lớp tổng quát.
  • Một sự kết hợp là một loại liên kết thể hiện mối quan hệ bộ phận-toàn thể hoặc bộ phận-của. Nó có thể được biểu diễn trực quan bằng hình kim cương rỗng trên lớp chứa, với một đường đơn kết nối nó đến lớp chứa.
  • Mối quan hệ phụ thuộc tồn tại khi một đối tượng của một lớp sử dụng một đối tượng của lớp khác.
  • Lớp trừu tượng được sử dụng để tìm thấy các chức năng chung giữa các lớp, và tên của nó được viết nghiêng.

2. Sơ đồ đối tượng

Một đối tượng là một thể hiện của một lớp tại một thời điểm cụ thể trong quá trình thực thi, và sơ đồ đối tượng thể hiện trạng thái chi tiết của một hệ thống tại một thời điểm nhất định. Chúng được sử dụng để minh họa các ví dụ về cấu trúc dữ liệu, và sơ đồ lớp được sử dụng để kiểm tra tính chính xác và độ đầy đủ củasơ đồ đối tượng.

(Tạo bằng công cụ Sơ đồ đối tượng của Visual Paradigm (Desktop))Công cụ Sơ đồ đối tượng)

  • Sơ đồ đối tượng thể hiện mối quan hệ giữa các đối tượng trong một hệ thống, và có thể được sử dụng để giải thích các sơ đồ lớp hệ thống phức tạp.
  • Trong UML, sơ đồ đối tượng thể hiện các thể hiện của các bộ phân loại trong mô hình và các mối quan hệ giữa chúng. Bạn có thể tạo sơ đồ đối tượng bằng cách khởi tạo các thành phần mô hình trong sơ đồ lớp, sơ đồ triển khai, sơ đồ thành phần và sơ đồ trường hợp sử dụng.
  • Để phát triển một sơ đồ đối tượng, bạn phải xác định các cơ chế cấu thành hệ thống, sau đó xác định các lớp, giao diện và các thành phần khác tham gia vào cơ chế đó, đồng thời xác định các mối quan hệ giữa các thành phần này.
  • Sơ đồ đối tượng có thể được sử dụng để hiển thị trạng thái của các đối tượng tại một thời điểm cụ thể.

3. Sơ đồ thành phần

Một thành phầnđược sử dụng để chia nhỏ một hệ thống hướng đối tượng lớn thành các thành phần nhỏ hơn. Nó trực quan hóa các mối quan hệ cũng như tổ chức giữa các thành phần có trong hệ thống. Sơ đồ thành phần là một biểu diễn các thành phần logic và mối quan hệ của hệ thống phần mềm, là một quan điểm triển khai tĩnh của hệ thống. Nó thường được sử dụng để trực quan hóa các thành phần, tạo các tập lệnh thực thi và mô tả tổ chức và mối quan hệ giữa các thành phần.

Chỉnh sửa sơ đồ thành phần UML này

  • Sơ đồ thành phầnthể hiện các giao diện cung cấp và yêu cầu của một thành phần.
  • Một thành phần là một phần có thể thay thế trong hệ thống. Nó được vẽ dưới dạng hình chữ nhật với các ngăn tùy chọn được xếp chồng lên nhau theo chiều dọc.
  • Một hình kẹo mút hoặc ổ cắm được sử dụng để minh họa mối quan hệ phụ thuộc từ một thành phần đến một giao diện, và một nửa hình tròn được sử dụng để minh họa mối quan hệ phụ thuộc từ một thành phần đến một giao diện yêu cầu.

4. Sơ đồ triển khai

Sơ đồ triển khai thể hiện cấu trúc của hệ thống thời gian chạy và các đường truyền thông giữa các thiết bị phần cứng khác nhau mà phần mềm sẽ được triển khai. Sơ đồ triển khai là một tập hợp các đỉnh và cung thể hiện các mối quan hệ giữa các nút trong hệ thống. Nó hữu ích cho các kỹ sư hệ thống để kiểm soát hiệu suất, khả năng mở rộng, khả năng bảo trì và khả năng di chuyển.

Chỉnh sửa sơ đồ triển khai này trực tuyến

Sơ đồ triển khai thể hiện kiến trúc của một hệ thống dưới dạng triển khai các sản phẩm phần mềm đến các mục tiêu triển khai. Chúng có thể ở cấp độ mô tả (còn gọi là cấp độ kiểu) hoặc cấp độ thể hiện (giống như sơ đồ lớp và sơ đồ đối tượng).

Sơ đồ triển khai so với sơ đồ thành phần

  • Sơ đồ triển khai được sử dụng để mô tả các thành phần phần cứng được dùng để triển khai các thành phần phần mềm trong một hệ thống.
  • Sơ đồ thành phần được sử dụng để mô tả các sản phẩm phần mềm của một hệ thống, và sơ đồ triển khai được sử dụng để mô tả kiến trúc phần cứng của một hệ thống.

5. Sơ đồ Gói

Các gói được sử dụng để nhóm các phần tử có liên quan về mặt ngữ nghĩa nhằm tổ chức các thành phần cấp cao của hệ thống phức tạp. Một sơ đồ gói là một mẫu để nhóm các phần tử và xác định các mối quan hệ phụ thuộc lẫn nhau. Chúng tách biệt các phần tử mô hình và thành phần thành các đơn vị hoặc hệ thống nhất quán. Các sơ đồ này giúp đơn giản hóa kiểm soát truy cập hệ thống, điều hướng mô hình, quản lý cấu hình và các vấn đề ngữ nghĩa khác.

Chỉnh sửa sơ đồ Gói này

  • Các gói được hiển thị bằng biểu tượng thư mục, và các mô hình được hiển thị bằng tam giác ở góc trên bên phải.
  • Sơ đồ gói tuân theo cấu trúc phân cấp của các gói lồng nhau, ví dụ, sơ đồ gói cũng có thể nhóm các trường hợp sử dụng thành các hệ thống con có liên quan về mặt logic.
  • Mối quan hệ phụ thuộc tồn tại giữa hai gói nếu bất kỳ lớp nào trong gói A phụ thuộc vào bất kỳ lớp nào trong gói B, hoặc nếu tồn tại mối quan hệ khách hàng – máy chủ giữa hai lớp.
  • Sơ đồ gói cho phép chúng ta xác định các mối quan hệ phụ thuộc giữa các gói. Một mối quan hệ phụ thuộc được mô hình hóa bằng một mũi tên nét đứt.
  • Mối quan hệ nhập gói được hiểu là việc nhập các phần tử từ gói đích vào gói nguồn.
  • Mối quan hệ hợp nhất gói là mối quan hệ có hướng giữa hai gói. Nó thêm các đặc tính của gói đích vào đặc tính của gói nguồn.
  • Một gói là một container cho các phần tử mô hình khác. Một gói có thể được lồng nhau theo cấu trúc phân cấp, và container có thể bị xóa hoặc sao chép mà không làm mất các phần tử bên trong nó.

6. Sơ đồ Cấu trúc Hợp thành

Trong các mô hình UML, mộtsơ đồ cấu trúc hợp thành mô tả cấu trúc bên trong của các lớp cấu trúc bằng cách sử dụng các phần, cổng và kết nối

(Tạo bằng công cụ Sơ đồ Cấu trúc Hợp thành)

  • Các phần: một yếu tố sơ đồ đại diện cho một tập hợp một hoặc nhiều thể hiện mà một lớp cấu trúc chứa đựng sở hữu
  • Một kết nối liên kết các cổng với nhau, một hợp tác liên kết các thể hiện với nhau, một lớp cấu trúc đại diện cho một lớp có thể được mô tả bằng các tương tác giữa các phần, và một lớp được đóng gói chứa các cổng.
  • Cổng: xác định điểm tương tác giữa một thể hiện lớp và môi trường của nó, hoặc giữa hành vi của lớp và các phần bên trong của nó
  • Giao diện: có thể được mô hình hóa như một lớp, nhưng không được tạo thể hiện. Một lớp cụ thể phải triển khai giao diện, và các thực thể bên ngoài có thể sử dụng giao diện mà không cần lo lắng về cách triển khai bên trong.
  • Hợp tác: sử dụng một sử dụng hợp tác để chỉ định các vai trò và kết nối cần thiết để đạt được một mục tiêu cụ thể của hợp tác

Lớp so với Đối tượng so với Sơ đồ Cấu trúc Hợp thành

  • Sơ đồ lớp thể hiện các mối quan hệ giữa các lớp tạo nên một cấu trúc phức tạp, trong khi sơ đồ đối tượng thể hiện các thể hiện cụ thể của cấu trúc đó.
  • Sơ đồ cấu trúc hợp thành thể hiện cách các thành phần tương tác với nhau.

7. Sơ đồ Hồ sơ

UML là một ngôn ngữ mô hình hóa mang tính tổng quát. Tuy nhiên, trong một số tình huống, việc sử dụng một ngôn ngữ được tối ưu hóa cho miền cụ thể sẽ mang lại lợi thế.Sơ đồ hồ sơ cho phép tùy chỉnh các mô hình UML cho các lĩnh vực và nền tảng cụ thể. Các sơ đồ này được định nghĩa bằng cách sử dụng các kiểu dáng, định nghĩa giá trị gắn thẻ và ràng buộc.

Chỉnh sửa sơ đồ hồ sơ này

Mộthồ sơ UMLcó thể được tạo theo 3 cách: bằng cách tạo một metamodel mới, mở rộng metamodel hiện có hoặc sử dụng các cơ chế nội tại của ngôn ngữ.

  • Các kiểu dáng cho phép bạn mở rộng từ vựng của UML bằng cách tạo ra các khối xây dựng mới trông đơn giản và nói tiếng của lĩnh vực của bạn.
  • Các giá trị gắn thẻ được sử dụng để thêm thông tin vào một phần tử mô hình UML. Chúng có thể được dùng để sinh mã, kiểm soát phiên bản, quản lý cấu hình, xác định tác giả, v.v.
  • Các ràng buộc cho phép bạn mở rộng ngữ nghĩa của các khối xây dựng UML bằng cách thêm các giao thức mới. Chúng được hiển thị dưới dạng chuỗi nằm trong dấu ngoặc và đặt gần phần tử liên quan.

Sơ đồ hành vi

Các sơ đồ hành vi UML giúp trực quan hóa, mô tả, xây dựng và tài liệu hóa các khía cạnh động của một hệ thống. Các sơ đồ hành vi được phân loại như sau: sơ đồ use case, sơ đồ tương tác, sơ đồ trạng thái và sơ đồ hoạt động.

1. Sơ đồ use case

Một sơ đồ use caselà một biểu diễn trực quan về hành vi của một chương trình phần mềm. Nó giúp các nhà thiết kế truyền đạt hành vi của hệ thống đến người dùng bằng cách xác định hành vi có thể nhìn thấy từ bên ngoài. Các use case chỉ đại diện cho các yêu cầu chức năng của hệ thống. Các quy tắc kinh doanh, yêu cầu về chất lượng dịch vụ và các ràng buộc triển khai phải được biểu diễn riêng biệt. Các sơ đồ use case được dùng để mô tả vai trò của các cá nhân trong hệ thống. Chúng có thể được dùng để lập kế hoạch yêu cầu, xác minh thiết kế phần cứng, kiểm thử sản phẩm phần mềm hoặc tạo tài liệu trợ giúp trực tuyến.

Mô hình hóa use case được giới thiệu năm 1986 bởi Ivar Jacobson. Năm 1992, cuốn sách Object-Oriented Software Engineering của ông đã giúp phổ biến kỹ thuật này. Một sơ đồ use case là một cái nhìn cấp cao hơn về hệ thống. Rất có lợi khi viết các use case ở mức độ chi tiết thô hơn khi không cần thiết. Các sơ đồ use case thường được phát triển ở giai đoạn đầu của quá trình phát triển để thu thập yêu cầu, xác minh kiến trúc và thúc đẩy triển khai.

Chỉnh sửa sơ đồ use case này

  • Các sơ đồ use case nên được cấu trúc từ góc nhìn của các tác nhân, và tập trung vào ‘cái gì’ chứ không phải ‘cách thức nào’.
  • Mối quan hệ mở rộng được dùng để bao gồm hành vi tùy chọn từ một use case mở rộng vào một use case được mở rộng.
  • Mối quan hệ tổng quát hóa kết nối hai use case. Con có thể thêm hoặc ghi đè hành vi của cha.
  • Các tác nhân của hệ thống của bạn là những người sử dụng, cài đặt, khởi động, bảo trì, tắt hệ thống và lấy thông tin từ hệ thống hoặc cung cấp thông tin cho hệ thống.

2. Sơ đồ hoạt động

Các sơ đồ hoạt động được dùng để mô tả luồng điều khiển trong một hệ thống và mô tả các bước liên quan đến việc thực thi một use case. Các sơ đồ hoạt động là các biểu diễn đồ họa của quy trình làm việc, hỗ trợ lựa chọn, lặp lại và đồng thời. Chúng cũng có thể bao gồm các phần tử thể hiện luồng dữ liệu giữa các hoạt động. Chúng tương tự như sơ đồ dòng chảy và được dùng để mô tả các khía cạnh động của một hệ thống. Ví dụ, một sơ đồ hoạt động có thể được dùng để hiển thị luồng điều khiển từ trạng thái ban đầu đến trạng thái cuối cùng.

Các sơ đồ hoạt động cũng được dùng để mô hình hóa các quy trình kinh doanh và quy trình làm việc. Chúng được dùng để ghi lại hành vi động của một hệ thống và mô hình hóa quy trình làm việc của một hệ thống hướng đối tượng hoặc phân tán.

Chỉnh sửa sơ đồ hoạt động này trực tuyến

  • Các sơ đồ hoạt động được dùng để mô hình hóa một chuỗi hành động hoặc luồng điều khiển trong một hệ thống.
  • Một hình thoi biểu diễn một quyết định với các nhánh thay thế. Các nhánh thay thế nên được đánh nhãn bằng điều kiện.
  • Một nút chia tách (fork node) chia một luồng đầu vào duy nhất thành nhiều luồng đồng thời.
  • Một nút nối (join node) nối lại nhiều luồng đồng thời thành một luồng.
  • Các nút (pins) được dùng để làm rõ các sơ đồ hoạt động lộn xộn. Chúng biểu diễn một đầu vào hoặc một đầu ra của một hành động.
  • Các tín hiệu được dùng để thay đổi các hoạt động trong hệ thống. Cần có phản hồi trước khi hoạt động có thể được thay đổi.
  • Các đường dọc được sử dụng để nhóm các hành động trong sơ đồ hoạt động.

3. Sơ đồ tuần tự

Sơ đồ tuần tự là một sơ đồ đơn giản dùng để hiển thị các tương tác giữa các bộ phận (tức là hệ thống con hoặc đối tượng) của một hệ thống. Sơ đồ tuần tự UML thể hiện cách các đối tượng tương tác theo thời gian bằng cách sử dụng trục đứng để biểu diễn thời gian. Sơ đồ tuần tự ghi lại các tương tác giữa hệ thống và người dùng, hoặc giữa các hệ thống. Sơ đồ tuần tự cho thấy cách các thao tác được thực hiện. Thời gian tiến triển khi bạn di chuyển xuống trang.

Trong sơ đồ tuần tự, các tin nhắn biểu diễn sự tương tác giữa các đối tượng. Tin nhắn gọi biểu diễn yêu cầu thực hiện một thao tác, tin nhắn trả về biểu diễn luồng thông tin từ người nhận đến người gọi, và tin nhắn đệ quy biểu diễn một lời gọi đến người gọi.

Chỉnh sửa sơ đồ tuần tự này

  • Sơ đồ tuần tự có thể được sử dụng để mô hình hóa cách các bộ phận khác nhau của hệ thống tương tác để thực hiện một trường hợp sử dụng duy nhất, ví dụ như sơ đồ tuần tự có thể giúp hình dung các tương tác giữa các lớp và phát hiện trách nhiệm trong một hệ thống mới.
  • Trong sơ đồ tuần tự, một đối tượng gửi một tin nhắn đến đối tượng khác. Cả hai đối tượng đều hoạt động trong quá trình trao đổi tin nhắn.
  • Mũi tên tin nhắn được sử dụng trong sơ đồ tuần tự để chỉ ra một tin nhắn. Mũi tên tin nhắn đi kèm với một mô tả, được gọi là chữ ký tin nhắn.
  • Một tin nhắn bất đồng bộ được gửi khi người gọi tin nhắn không chờ đợi tin nhắn được xử lý.

4. Sơ đồ máy trạng thái

Sơ đồ máy trạng thái (còn gọi là biểu đồ trạng thái, sơ đồ chuyển trạng thái) được sử dụng để mô tả các trạng thái khác nhau của một thành phần trong hệ thống. Nó được điều khiển bởi các sự kiện bên ngoài hoặc bên trong. Chúng được sử dụng để mô hình hóa tính chất động của hệ thống. Nó mô tả luồng điều khiển từ một trạng thái sang trạng thái khác và được dùng để mô hình hóa vòng đời của một đối tượng từ lúc tạo đến khi kết thúc. Ví dụ, sơ đồ trạng thái thể hiện tất cả các hành vi có thể của các đối tượng thuộc một lớp và thứ tự của các sự kiện, và rất quan trọng đối với việc hiểu hệ thống.

Trong hầu hết các hệ thống, độ phức tạp phát sinh từ sự tương tác giữa các đối tượng của các lớp khác nhau, do đó sơ đồ trạng thái không cần thiết cho mọi lớp. Tuy nhiên, đối với các lớp phức tạp như hệ thống điều khiển quy trình hoặc hệ thống truyền thông, sơ đồ trạng thái là cần thiết để mô hình hóa hành vi của các đối tượng.

Chỉnh sửa sơ đồ máy trạng thái này trực tuyến

  • Một hình tròn đen đầy màu để biểu diễn trạng thái ban đầu của một hệ thống hoặc một lớp.
  • Một mũi tên liền để biểu diễn sự chuyển đổi từ một trạng thái sang trạng thái khác
  • Một hình chữ nhật bo tròn để biểu diễn một trạng thái.
  • Các chuyển đổi trạng thái từ trạng thái này sang trạng thái khác được thực hiện nhờ các sự kiện.
  • Các điều kiện bảo vệ ngăn chặn một số chuyển đổi xảy ra, và các chuyển đổi nội bộ không ảnh hưởng đến các chuyển đổi trạng thái.
  • Sơ đồ trạng thái bao gồm trạng thái ban đầu, các trạng thái trung gian, các chuyển đổi và trạng thái cuối cùng. Nó cũng bao gồm một hộp có góc bo tròn, tên, biến trạng thái và các hành động được thực hiện trong mỗi trạng thái.

Trạng thái là gì?

Một trạng thái là một điều kiện hoặc tình huống trong suốt vòng đời của một đối tượng, và một sự kiện là một kích thích có thể gây ra chuyển đổi trạng thái. Một điều kiện bảo vệ là một đánh giá biểu thức logic, và một chuyển đổi có thể có nhiều điều kiện bảo vệ. Sơ đồ trạng thái thường được sử dụng để mô tả hành vi của các thành phần điện tử. Sơ đồ trạng thái có thể bao gồm việc chia một trạng thái thành nhiều trạng thái, hợp nhất các trạng thái, trạng thái lịch sử và trạng thái phức hợp.

Sơ đồ hoạt động so với sơ đồ trạng thái

  • Trong UML, sơ đồ hoạt động biểu diễn các hoạt động ở cấp độ cao. Đặc biệt, sơ đồ hoạt động có thể biểu diễn tính đồng thời và sự phối hợp.
  • Trong sơ đồ máy trạng thái, các đỉnh biểu diễn các trạng thái của một đối tượng, và các cạnh biểu diễn các sự kiện xảy ra. Các ký hiệu bổ sung ghi lại cách các hoạt động được phối hợp.

5. Sơ đồ giao tiếp

Sơ đồ giao tiếp thể hiện cách các đối tượng tương tác. Chúng cũng thể hiện các tin nhắn đi qua giữa các đối tượng. Mô hình hóa việc truyền tin nhắn giữa các đối tượng để cung cấp chức năng của các trường hợp sử dụng và thao tác, và ghi lại các tương tác thể hiện các tin nhắn được truyền đi. Trong sơ đồ giao tiếp, các đối tượng (người diễn vai trong các trường hợp sử dụng) được biểu diễn bằng hình chữ nhật, và các tin nhắn được truyền giữa các đối tượng được biểu diễn bằng các mũi tên có nhãn, bắt đầu từ đối tượng gửi và kết thúc tại đối tượng nhận. Dễ đọc vì các tin nhắn được đánh số.

(Tạo bằng công cụ công cụ sơ đồ giao tiếp)

  • Sơ đồ giao tiếp UML thể hiện cách các tin nhắn được gửi và nhận giữa các đối tượng trong một hệ thống hoặc một phần mềm.
  • Các đường thẳng biểu diễn các liên kết, và các mũi tên biểu diễn các tin nhắn.
  • Các tin nhắn được đánh số theo thứ tự tuần tự và được mô tả bằng các con số và dấu chấm thập phân.
Sơ đồ giao tiếp so với sơ đồ tuần tự

Sơ đồ giao tiếp và sơ đồ tuần tự tương tự nhau. Chúng trình bày cùng một thông tin, nhưng sơ đồ giao tiếp được sắp xếp theo không gian, còn sơ đồ tuần tự được sắp xếp theo thời gian.

Ví dụ, nó thường kết hợp cả sơ đồ hoạt động và sơ đồ tuần tự, và biểu diễn các tin nhắn được trao đổi giữa các thực thể nhằm thực hiện các nhiệm vụ cụ thể trong hệ thống.

  • Sơ đồ tuần tự thể hiện thứ tự thời gian của các tin nhắn, và
  • Sơ đồ giao tiếp thể hiện các mối quan hệ giữa các đối tượng.

6. Sơ đồ tổng quan tương tác

Sơ đồ tổng quan tương tác tương tự như sơ đồ hoạt động, nhưng mỗi hoạt động riêng lẻ được biểu diễn dưới dạng khung, có thể chứa một sơ đồ tương tác lồng ghép. Các sơ đồ tổng quan tương tác UML cung cấp mức độ trừu tượng cao của mô hình tương tác. Chúng cũng có thể hiển thị luồng hoạt động giữa các sơ đồ. Nói cách khác, các sơ đồ tương tác thể hiện hành vi động của hệ thống bằng cách mô tả thứ tự thời gian của các tin nhắn và cấu trúc tổ chức của các đối tượng gửi và nhận tin nhắn.

(Tạo bằng công cụ công cụ Sơ đồ tổng quan tương tác)

Sơ đồ tổng quan tương tác tương tự như sơ đồ hoạt động, nhưng mỗi hoạt động riêng lẻ được thể hiện dưới dạng khung, có thể chứa một sơ đồ tương tác lồng ghép. Các sơ đồ tổng quan tương tác UML cung cấp mức độ trừu tượng cao của mô hình tương tác. Chúng cũng có thể hiển thị luồng hoạt động giữa các sơ đồ. Nói cách khác, sơ đồ tương tác thể hiện hành vi động của hệ thống bằng cách mô tả thứ tự thời gian của các tin nhắn và cấu trúc tổ chức của các đối tượng gửi và nhận tin nhắn.

Sơ đồ tổng quan tương tác bao gồm các nút đại diện cho các sơ đồ tương tác. Ví dụ, một sự kiện tương tác (hoặc sơ đồ tuần tự tham chiếu) cho phép bạn tham chiếu đến một sơ đồ tuần tự khác từ bên trong một sơ đồ tuần tự. Tính năng này giúp bạn chia nhỏ các tình huống phức tạp thành các tình huống nhỏ hơn có thể tái sử dụng. Mỗi tình huống là một “tương tác”.

7. Sơ đồ thời gian

Sơ đồ thời gian là một phần của sơ đồ tương tác, mô tả cách các điều kiện thay đổi trong và giữa các đường đời dọc theo một trục thời gian tuyến tính. Nó thể hiện cách các đối tượng tương tác trong một khoảng thời gian nhất định, cho thấy thời gian mà mỗi bước của quy trình mất, và có thể được sử dụng để tìm ra các cải tiến.

(Tạo bằng công cụ trình soạn thảo Sơ đồ thời gian)

  • Sơ đồ thời gian thể hiện các tương tác dọc theo trục thời gian tuyến tính, và bao gồm các thành phần như tin nhắn, đường đời, trục thời gian, và đối tượng hoặc vai trò.
  • Đường đời đại diện cho một thành viên riêng lẻ trong một tương tác. Nó có thể được đặt bên trong khung sơ đồ hoặc một làn nước.
  • Ràng buộc thời gian được sử dụng để xác định xem một ràng buộc có được thỏa mãn trong một khoảng thời gian hay không.
  • Ràng buộc thời gian là một ràng buộc khoảng thời gian đại diện cho một khoảng thời gian. Một ràng buộc thời gian bị vi phạm có nghĩa là hệ thống đã thất bại.

Tài nguyên UML