資源描述:
《UML系統(tǒng)建?;A教程 第8章 序列圖》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、重點內(nèi)容:序列圖的基本概念序列圖的組成序列圖中的項目相關概念使用ROSE創(chuàng)建序列圖使用Rose創(chuàng)建序列圖案例分析第8章序列圖一、序列圖的基本概念在UML的表示中,序列圖將交互關系表示為一個二維圖。其中,縱向是時間軸,時間沿豎線向下延伸。橫向代表了在協(xié)作中各獨立對象的角色。角色使用生命線進行表示,當對象存在時,生命線用一條虛線表示,此時對象不處于激活狀態(tài),當對象的過程處于激活狀態(tài)時,生命線是一個雙道線。序列圖中的消息使用從一個對象的生命線到另一個對象生命線的箭頭表示,箭頭以時間順序在圖中從上到下排列。1、序列圖的定義序列圖作為一種
2、描述在給定語境中消息是如何在對象間傳遞的圖形化方式,在使用其進行建模時,主要可以將其用途分為以下三個方面:1確認和豐富一個使用語境的邏輯表達。一個系統(tǒng)的使用情境就是系統(tǒng)潛在的使用方式的描述,也就是它的名稱所要描述的。一個使用情境的邏輯可能是一個用例的一部分,或是一條控制流。2細化用例的表達。我們前面已經(jīng)提到,序列圖的主要用途之一,就是把用例表達的需求,轉(zhuǎn)化為進一步、更加正式層次的精細表達。用例常常被細化為一個或者更多的序列圖。3有效地描述如何分配各個類的職責以及各類具有相應職責的原因。我們可以根據(jù)對象之間的交互關系來定義類的職責
3、,各個類之間的交互關系構(gòu)成一個特定的用例。例如,“Customer對象向Address對象請求其街道名稱”指出Customer對象應該具有“知道其街道名”這個職責。2、序列圖在項目開發(fā)里的作用一、序列圖的基本概念序列圖中的對象可以是系統(tǒng)的參與者或者任何有效的系統(tǒng)對象。對象的表示形式也和對象圖中的對象的表示方式一樣,使用包圍名稱的矩形框來標記,所顯示的對象及其類的名稱帶有下劃線,二者用冒號隔開,使用“對象名:類名”的形式,對象的下部有一條被成為“生命線”的垂直虛線。1、對象二、序列圖的組成生命線(Lifeline)是一條垂直的虛線
4、,用來表示序列圖中的對象在一段時間內(nèi)的存在。每個對象的底部中心的位置都帶有生命線。生命線是一個時間線,從序列圖的頂部一直延伸到底部,所用時間取決于交互持續(xù)的時間,也就是說生命線表現(xiàn)了對象存在的時段。對象與生命線結(jié)合在一起稱為對象的生命線。對象的對象存在的時段包括對象在擁有控制線程時或被動對象在控制線程通過時存在。當對象在擁有控制線程時,對象被激活,作為線程的根。2、生命線二、序列圖的組成序列圖可以描述對象的激活(Activation),激活是對象操作的執(zhí)行,它表示一個對象直接地或通過從屬操作完成操作的過程。它對執(zhí)行的持續(xù)時間和執(zhí)
5、行與其調(diào)用者之間的控制關系進行建模。激活在序列圖中用一個細長的矩形框表示,它的頂端與激活時間對齊而底端與完成時間對齊。被執(zhí)行的操作根椐不同風格表示成一個附在激活符號旁或在左邊空白處的文字標號。3、激活二、序列圖的組成消息(Messages)是從一個對象(發(fā)送者)向另一個或幾個其他對象(接收者)發(fā)送信號,或由一個對象(發(fā)送者或調(diào)用者)調(diào)用另一個對象(接收者)的操作。它可以有不同的實現(xiàn)方式,比如過程調(diào)用、活動線程間的內(nèi)部通訊、事件的發(fā)生等。4、消息二、序列圖的組成創(chuàng)建一個對象指的是發(fā)送者發(fā)送一個實例化消息后實例化對象的結(jié)果。銷毀對象
6、指的是將對象銷毀并回收其擁有的資源,它通常是一個明確的動作,也可以是其它動作、約束或垃圾回收機制的結(jié)果。在序列圖中,創(chuàng)建對象操作的執(zhí)行使用消息的箭頭表示,箭頭指向被創(chuàng)建對象的框。在序列圖中,對象被銷毀是使用在對象的生命線上畫大×表示,在銷毀新創(chuàng)建的對象,或者序列圖中的任何其他對象時,都可以使用。它的位置是在導致對象被銷毀的信息上,或者在對象自我終結(jié)的地方。1、創(chuàng)建與銷毀對象三、序列圖中的項目相關概念在UML中,存在兩種方式可以來修改序列圖中消息的控制流,分別是:分支和從屬流。分支是指的是從同一點發(fā)出多個消息的并指向不同的對象,根
7、據(jù)條件是否互斥,可以有條件和并行兩種結(jié)構(gòu)。從屬流指的是從同一點發(fā)出多個消息指向同一個對象的不同生命線。2、分支與從屬流三、序列圖中的項目相關概念創(chuàng)建一個新的類圖,可以通過以下方式進行。1右鍵單擊瀏覽器中的UseCaseView(用例視圖)、LogicalView(邏輯視圖)或者位于這兩種視圖下的包。2在彈出的菜單中,選中“New”(新建)下的“SequenceDiagram”(序列圖)選項。3輸入新的序列名稱。4雙擊打開瀏覽器中的序列圖。1、創(chuàng)建對象四、使用Rose創(chuàng)建序列圖當對象被創(chuàng)建后,生命線便存在。當對象被激活后,生命線的
8、一部分虛線變成細長的矩形框。在RationalRose2003中,是否將虛線變成矩形框是可選的,我們可以通過菜單欄設置是否顯示對象生命線被激活時的矩形框。設置是否顯示對象生命線被激活的矩形框步驟為:在菜單欄中選擇“Tools”(工具)下的“Options”(選項