de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

Sơ đồ trạng thái UML là gì?

Một sơ đồ trạng thái (được gọi là trong tài liệu UML 1.x) là một sơ đồ thể hiện máy trạng thái và được gọi là sơ đồ máy trạng thái trong UML 2.x. Máy trạng thái được gọi là một hành vi mô tả các trạng thái khác nhau và các chuyển tiếp trạng thái của một đối tượng trong vòng đời của nó. Một sơ đồ trạng thái là một trong số 14 sơ đồ UML được sử dụng để mô hình hóa trong UML 2.0.

 

Overview of the 14 UML Diagram Types

Nó xác định các trạng thái khác nhau của một đối tượng trong vòng đời của nó, thay đổi phản ứng với các sự kiện.Sơ đồ trạng tháiSơ đồ trạng thái rất hữu ích để mô hình hóa các hệ thống phản ứng, có thể được định nghĩa là các hệ thống phản ứng với các sự kiện bên ngoài hoặc bên trong. Một sơ đồ trạng thái mô tả luồng điều khiển từ trạng thái này sang trạng thái khác. Một trạng thái được định nghĩa là một điều kiện tồn tại của một đối tượng, thay đổi khi một sự kiện được kích hoạt.

Mục đích của sơ đồ trạng thái là gì?

Mục đích quan trọng của sơ đồ trạng thái là mô hình hóa vòng đời của một đối tượng từ lúc tạo ra đến khi kết thúc.

  1. Mô hình hóa các khía cạnh động của hệ thống và cung cấp một biểu diễn toàn diện hơn về thông tin liên quan đến hệ thống.
  2. Mô tả các trạng thái khác nhau của một đối tượng trong vòng đời của nó, dù đang ở trạng thái được kích hoạt, trạng thái ngủ hay trạng thái chết.
  3. Mô hình hóa vòng đời của một đối tượng, giúp lập trình viên thiết kế các phương thức của đối tượng, v.v.
  4. Giúp lập trình viên hiểu rõ yêu cầu và tăng tốc độ lập trình.

Các thành phần của sơ đồ trạng thái UML

Sơ đồ trạng thái UMLchủ yếu bao gồm năm thành phần, đó là trạng thái, chuyển tiếp, sự kiện, hành động và hoạt động.

Thực tế, sơ đồ trạng thái có thể rất phức tạp – bạn có thể lồng sơ đồ trạng thái, đặt các điều kiện bảo vệ (đúng/sai) trước các trạng thái, thêm các hành động được kích hoạt bởi thay đổi trạng thái, hoặc thậm chí trì hoãn các sự kiện để xử lý sau. Các sơ đồ này có thể chiếm nhiều văn bản, và các điều kiện thường được viết theo một ngôn ngữ lập trình cụ thể. Điều này có thể khiến sơ đồ trông phức tạp, nhưng cũng có thể giúp lập trình (và kiểm thử) nhanh hơn do giảm thiểu khả năng hiểu nhầm.

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

Các thành phần của sơ đồ trạng thái UML

Sơ đồ trạng thái UML sử dụng các ký hiệu mà bạn có thể đã thấy trong sơ đồ hoạt động UML.

  • Trạng thái bắt đầu: hình tròn đậm.
  • Trạng thái kết thúc: hình tròn đậm có các góc bo tròn.
  • Trạng thái: hình chữ nhật có các góc bo tròn với tên hành động.
  • Chuyển tiếp: Mũi tên nối với nhãn chỉ điều kiện kích hoạt cho chuyển tiếp đó (nếu có).
  • Các trạng thái có hoạt động nội bộ: Các trạng thái có các đường ngang, hành vi được liệt kê ở nửa dưới.
  • Các trạng thái hợp thành: các trạng thái có các đường ngang và sơ đồ trạng thái lồng ghép (hoặc liên kết đến một trang draw.io khác) ở nửa dưới.
  • Điều kiện hoặc rào cản: Hình thoi.
  • Chia nhánh: Một đường dày hơn với một đầu vào chuyển tiếp và hai hoặc nhiều đầu ra.
  • Ghép nối: Một đường dày hơn với nhiều hơn một đầu vào chuyển tiếp và chỉ một đầu ra chuyển tiếp.

Ví dụ sơ đồ máy trạng thái – Cuộc gọi điện thoại

Trong ví dụ này về sơ đồ trạng thái, đường điện thoại ở trạng thái rảnh lúc bắt đầu cuộc gọi. Khi điện thoại được nhấc khỏi giá đỡ, nó sẽ phát tín hiệu quay số và có thể nhận các chữ số để gọi. Khi một số hợp lệ được nhập, hệ thống điện thoại sẽ cố gắng kết nối cuộc gọi và định tuyến đến địa chỉ phù hợp. Nếu số điện thoại hoặc đường trục đang bận, kết nối có thể thất bại. Nếu kết nối thành công, điện thoại được gọi sẽ bắt đầu reo. Khi đường dây được treo lại, điện thoại sẽ trở về trạng thái rảnh.

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

Ví dụ sơ đồ trạng thái UML – Cửa hàng sách trực tuyến

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