建立某個活動的圖
但類或實例接收到消息時,它會在接收對象的生命線上創建一個框;這個框稱作 活動;顒颖硎窘邮辗降姆椒ㄖ械目刂茩嗔飨。當消息導致創建了一個對象時,第一個活動表示構造器的邏輯。隨后的消息將導致創建新的活動。
但接收到消息時,接收對象可以依次將消息發送到它自身或其它對象。這由箭頭的尾巴顯示,它表示箭頭源于活動,而終止于新的活動。但對象調用自身時,新的活動將放到舊活動之上。
在此方案中,申請人與貸款申請交互兩次,第一次是完成它,而第二次是提交它。當 LoanApplication 接收到 submit 消息時,它會通過將 validate 消息發送到自身來驗證它自己。如果有效,則它會創建要發送到商業資信咨詢機構的新 LoanRequest。圖 4 顯示了 LoanApplication 的驗證過程。
圖 4. 確認 LoanApplication

箭頭文件:表示時間流逝
我們使用斜向箭頭來表示消息發送和接收之間的真實時間的流逝。這種標記法用于顯示非基本調用。非基本調用的示例是經由 CORBA 或 RMI 進行的方法調用,或是在網絡上發送的消息。
在此示例中,商業資信咨詢機構是一個外部系統,它是具有服務器角色的參與者(有關詳細信息,請參閱關于參與者角色)。服務器通常不生成消息,但會有發送給它們的消息 -- 在本例中是由信用檢查器發送的信用報告的請求。信用檢查器代表了商業資信咨詢機構。它跟蹤請求并將請求轉發給商業資信咨詢機構,跟蹤并接收響應,此外就是建立貸款處理應用程序和商業資信咨詢機構之間的連接。商業資信咨詢機構將接收請求,并根據它自己的時間表處理請求。我們使用斜向箭頭表示這段時間的流逝,如以下的圖 5 所示。
在活動的結尾,返回到調用程序的結果是隱式的。然而,在某些情況下,您可能希望返回是顯式的。顯式返回調用由虛線箭頭表示,該箭頭的尾巴是接收方,頭是發送方。顯式返回箭頭通常由調用返回的值標記。對于此示例,我們已經在 CreditBureau 和 CreditChecker 之間添加了顯式箭頭。這個箭頭可以是帶標簽的 CreditReport,因為它是從 requestCreditReport 方法返回的對象。
圖 5. 獲取 CreditReport

下一步
我在本文開頭已經提到過,序列圖用于描述系統運行時的內部行為。在本文中,我已經介紹了通過建立對象間交互的模型來構建序列圖的第一步。在下一部分中,我將介紹兩種序列圖(常規和實例),并使用根據簡單的 Java 方法繪制的示例說明條件邏輯在序列圖中的角色。到時候見!