UML建模之时序图(Sequence Diagram)[转]
一、時序圖簡介(Brief introduction)
???????時序圖(Sequence Diagram)是顯示對象之間交互的圖,這些對象是按時間順序排列的。順序圖中顯示的是參與交互的對象及其對象之間消息交互的順序。時序圖中包括的建模元素主要有:對象(Actor)、生命線(Lifeline)、控制焦點(Focus of control)、消息(Message)等等。
二、時序圖元素(Sequence Diagram Elements)
??角色(Actor)
?? 系統角色,可以是人、及其甚至其他的系統或者子系統。
??對象(Object)
? 對象包括三種命名方式:
? 第一種方式包括對象名和類名;
? 第二中方式只顯示類名不顯示對象名,即表示他是一個匿名對象;
? 第三種方式只顯示對象名不顯示類明。
?
??生命線(Lifeline)
? 生命線在順序圖中表示為從對象圖標向下延伸的一條虛線,表示對象存在的時間,如下圖
??控制焦點(Focus of Control)
?
? 控制焦點是順序圖中表示時間段的符號,在這個時間段內對象將執行相應的操作。用小矩形表示,如下圖。
? ? ? ?
??消息(Message)
? 消息一般分為同步消息(Synchronous Message),異步消息(Asynchronous Message)和返回消息(Return Message).如下圖所示:
? 同步消息=調用消息(Synchronous Message)
? 消息的發送者把控制傳遞給消息的接收者,然后停止活動,等待消息的接收者放棄或者返回控制。用來表示同步的意義。
?
? 異步消息(Asynchronous Message)
? 消息發送者通過消息把信號傳遞給消息的接收者,然后繼續自己的活動,不等待接受者返回消息或者控制。異步消息的接收者和發送者是并發工作的。
?
? 返回消息(Return Message)
? 返回消息表示從過程調用返回
?
??自關聯消息(Self-Message)
? 表示方法的自身調用以及一個對象內的一個方法調用另外一個方法。
?
??Combined Fragments
?
?
? ??????????Alternative fragment(denoted “alt”)?與?if…then…else對應
? ??????????Option fragment (denoted “opt”)?與?Switch對應
? ??????????Parallel fragment (denoted “par”)?表示同時發生
? ??????????Loop fragment(denoted “loop”)?與?for?或者?Foreach對應
?
三、時序圖實例分析(Sequece Diagram Example Analysis)
??時序圖場景
完成課程創建功能,主要流程有:
1、請求添加課程頁面,填寫課程表單,點擊【create】按鈕
2、添加課程信息到數據庫
3、向課程對象追加主題信息
4、為課程指派教師
5、完成課程創建功能
?
時序圖實例
?
?
時序圖實例分析
1、序號1.0-1.3??完成頁面的初始化
2、序號1.4-1.5??課程管理員填充課程表單
3、序號1.6-1.7??課程管理員點擊【Create】按鈕,并響應點擊事件
4、序號1.8?????Service層創建課程
5、序號1.9-1.10?添加課程到數據庫,并返回課程編號CourseId
6、序號1.11-1.12?添加課程主題到數據庫,并返回主題編號topicId
7、序號1.13?????????給課程指派教師
8、序號1.14?????????向界面拋創建課程成功與否的消息
四、總結(Summary)
???????時序圖(Sequence Diagram)是顯示對象之間交互的圖,這些對象是按時間順序排列的。順序圖中顯示的是參與交互的對象及其對象之間消息交互的順序。時序圖中包括的建模元素主要有:對象(Actor)、生命線(Lifeline)、控制焦點(Focus of control)、消息(Message)等等。最后,以課程創建功能演示一時序圖實例。
轉載于:https://www.cnblogs.com/duanxz/archive/2013/02/20/2918218.html
總結
以上是生活随笔為你收集整理的UML建模之时序图(Sequence Diagram)[转]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 手机浏览器UserAgnet大全
- 下一篇: Console-算法[for,if]-(