2013-07-25 43 views
4

我有一個客戶端進行初始調用以設置會話的序列圖。在首次調用之後,檢查服務器上調用的每個後續操作(例如調用X,調用Y,調用Z)以查看會話是否存在。有沒有辦法一般性地描述這種行爲,而不必爲每個呼叫顯示它?我想一個選項是添加一個註釋,但是可能有更好的方法?uml序列圖 - 建模應用於操作的通用行爲

session sequence diagram

回答

4

由於序列圖是顯示特定的執行(客戶端和服務器應該是:客戶端和:圖中服務器)它是難以引入因式分解。您可以使用InteractionUse重用序列片段,但在這種情況下,由於您只有一條消息(「檢查會話」),因此無法提供幫助。

不要忘記,圖表是系統的視圖,特別是序列圖是特定事務的視圖。您不必在圖表中顯示所有內容。您不需要在此圖中顯示「檢查會話」消息,並使用另一個來顯示服務器始終檢查會話,可能會使用狀態圖。

+1

沒錯。序列圖不能正式指定一個系統(例如,狀態機更適合於此)。他們在那裏*將一個典型的場景傳達給另一個人。在我看來,一個簡單的順序圖比「完整的」更有用。你可以忽略任何你想要的信息。在這種特殊情況下,我只需添加文本:「請注意,服務器在每次方法調用時檢查會話」。 –

2

在所有順序圖上,我在一個圖表筆記中包含了前置條件,總結條件和後置條件。這可以防止審閱者產生大量混淆和後續問題。先決條件包括任何必需的初始化和執行。在這種情況下,前提條件可能是「安裝會話場景已運行」。