簡體   English   中英

如何在圖表上顯示兩個狀態之間的交互?

[英]How to show interaction between two statuses on a diagram?

想象一下,應用程序有兩種狀態,例如訂單狀態和發貨狀態。

下單狀態時,發貨狀態為空白。 當訂單狀態為“已付款”時,發貨狀態為“准備發貨”。 然后通過“shipped”、“on delivery”和“delivered”將發貨狀態更改為“assigned”。 如果訂單狀態設置為“已取消”,則“已發貨”或“已發貨”發貨狀態將更改為“正在退回”,然后“已在倉庫接收”。

在圖表上描述兩種狀態之間交互的最佳方式是什么?

我知道可以在這里使用兩種類型的圖表,但兩者都有任務的缺點:

  1. 活動圖 - 將完美地描述用例,但難以閱讀
  2. State 機器圖 - 只能描述一種狀態,因此可以有兩個 state 圖表,但不清楚狀態如何相互交互。

你會推薦什么?

您的 UML model 包含兩台 state 機器。 一個 UML model 可以通過一個或多個 UML 圖來可視化。 UML 圖可以可視化 UML model 的任何子集,甚至整個 model(參見 UML 規范版本 2.5.1,附件 A)。 因此,允許在一張圖中顯示兩台 state 機器。

兩台 state 機器之間的依賴關系可以通過兩種方式建模:

  1. 在一台 state 機器中使用“信號發送符號”向另一台 state 機器發送消息。 另一台 state 機器通過“信號接收符號”使用這些消息。 參見 UML 規范 2.5.1 的圖 14.32。

  2. 在一台 state 機器中使用操作並在另一台機器中使用相應的觸發器。 這是解決您的問題的最方便的技術,如下圖片段所示。 動作寫在斜線后面。

兩機合一

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM