第8章uml系統(tǒng)分析與設(shè)計(jì).ppt_第1頁(yè)
第8章uml系統(tǒng)分析與設(shè)計(jì).ppt_第2頁(yè)
第8章uml系統(tǒng)分析與設(shè)計(jì).ppt_第3頁(yè)
第8章uml系統(tǒng)分析與設(shè)計(jì).ppt_第4頁(yè)
第8章uml系統(tǒng)分析與設(shè)計(jì).ppt_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第8章 交互作用圖,主講:王海燕 Mail_,主要內(nèi)容,時(shí)序圖(Sequence Diagram)的定義和應(yīng)用 協(xié)作圖(Collaboration Diagram)的定義和應(yīng)用,8.1 時(shí)序圖(Sequence Diagram),概述 時(shí)序圖的組成 對(duì)象的創(chuàng)建和撤銷(xiāo) 時(shí)序圖建模技術(shù) 實(shí)例圖書(shū)館管理系統(tǒng)的時(shí)序圖,8.1.1 概述,時(shí)序圖是強(qiáng)調(diào)消息時(shí)間順序的交互圖。 時(shí)序圖描述了對(duì)象之間傳送消息的時(shí)間順序,用來(lái)表示用例中的行為順序。 時(shí)序圖將交互關(guān)系表示為一個(gè)二維圖。其中,縱軸是時(shí)間軸,時(shí)間沿豎線向下延伸。橫軸代表了在協(xié)作中各獨(dú)立的對(duì)象。,示例1:,8.1.1 概述,時(shí)序圖的用途 當(dāng)不同的類(lèi)之間存

2、在多個(gè)簡(jiǎn)短的方法時(shí),描述控制流的整體序列。 顯示并發(fā)進(jìn)程和激活。 顯示在協(xié)作圖中難以描述的時(shí)間序列。 顯示涉及類(lèi)交互而與對(duì)象無(wú)關(guān)的一般形式。,本質(zhì):把用例表達(dá)的需求,轉(zhuǎn)化為進(jìn)一步、更加正式 層次的精細(xì)表達(dá)。,8.1.2 時(shí)序圖的組成,時(shí)序圖包含了4個(gè)元素: 對(duì)象(Object) 生命線(Lifeline) 消息(Message) 激活期(Activation),1 對(duì)象(Object),對(duì)象的表示方法是:矩形框中寫(xiě)有對(duì)象或類(lèi)名,且名字下面有下劃線。 將對(duì)象置于時(shí)序圖的頂部意味著在交互開(kāi)始的時(shí)候?qū)ο缶鸵呀?jīng)存在了,如果對(duì)象的位置不在頂部,那么表示對(duì)象是在交互的過(guò)程中被創(chuàng)建的。,2 生命線(Life

3、line),生命線是一條垂直的虛線,表示時(shí)序圖中的對(duì)象在一段時(shí)間內(nèi)的存在。每個(gè)對(duì)象的底部中心的位置都帶有生命線。 生命線是一個(gè)時(shí)間線,從時(shí)序圖的頂部一直延伸到底部,所用的時(shí)間取決于交互持續(xù)的時(shí)間。,2 生命線(Lifeline),對(duì)象的生命線:對(duì)象與生命線結(jié)合在一起稱為對(duì)象的生命線,表示表示對(duì)象在序列中的執(zhí)行情況(即發(fā)送和接收的消息對(duì)象的活動(dòng)) 。對(duì)象的生命線包含矩形的對(duì)象圖標(biāo)以及圖標(biāo)下面的生命線。,3 消息(Message),消息定義的是對(duì)象之間某種形式的通信,它可以激發(fā)某個(gè)操作、喚起信號(hào)或?qū)е履繕?biāo)對(duì)象的創(chuàng)建或撤銷(xiāo)。 消息是兩個(gè)對(duì)象之間的單路通信,從發(fā)送方到接收方的控制信息流。 消息可以用于

4、在對(duì)象間傳遞參數(shù)。 消息可以是信號(hào),也可以是調(diào)用。 在UML中,消息使用箭頭來(lái)表示,箭頭的類(lèi)型表示了消息的類(lèi)型。,3 消息(Message),4 激活期(Activation),激活期代表uml時(shí)序圖中的對(duì)象執(zhí)行一項(xiàng)操作的時(shí)期,在時(shí)序圖中每條生命線上的窄的矩形代表活動(dòng)期。,激活與消息,UML時(shí)序圖中的消息可以是信號(hào)、操作調(diào)用或類(lèi)似于C+中RPC(RemoteProcedureCall,遠(yuǎn)程過(guò)程調(diào)用)或Java中的RMI(RemoteMethodInvocation,遠(yuǎn)程方法調(diào)用)。當(dāng)對(duì)象接收到一個(gè)消息時(shí),該對(duì)象中的一項(xiàng)活動(dòng)就會(huì)啟動(dòng),我們把這一過(guò)程稱做激活(Activation)。激活會(huì)顯示控制

5、焦點(diǎn),表明對(duì)象在某一個(gè)時(shí)間點(diǎn)開(kāi)始執(zhí)行。一個(gè)被激活的對(duì)象或者是執(zhí)行它自身的代碼,或者是等待另一個(gè)對(duì)象的返回(該被激活的對(duì)象已經(jīng)向另一個(gè)對(duì)象發(fā)送了消息)。在圖形上,激活被繪制為對(duì)象生命線上的一個(gè)瘦高矩形。,消息可以用消息名及參數(shù)來(lái)標(biāo)識(shí)。消息還可帶有條件表達(dá)式,表示分支或決定是否發(fā)送消息。如果用于表示分支,則每個(gè)分支是相互排斥的,即在某一時(shí)刻僅可發(fā)送分支中的一個(gè)消息。消息也可以有順序號(hào),但是在時(shí)序圖中,消息的順序號(hào)很少使用,因?yàn)闀r(shí)序圖已經(jīng)將消息的順序顯式地表示出來(lái)了。,8.1.3 對(duì)象的創(chuàng)建和撤銷(xiāo),如果對(duì)象位于時(shí)序圖的頂部,說(shuō)明在交互開(kāi)始之前該對(duì)象已經(jīng)存在了。如果對(duì)象是在交互的過(guò)程中創(chuàng)建的,那么它應(yīng)

6、當(dāng)位于圖的中間部分。 對(duì)象在創(chuàng)建消息發(fā)生之后才能存在,對(duì)象的生命線也是在創(chuàng)建消息之后才存在的。,8.1.3 對(duì)象的創(chuàng)建和撤銷(xiāo),創(chuàng)建對(duì)象的表示方法:,8.1.3 對(duì)象的創(chuàng)建和撤銷(xiāo),如果要撤銷(xiāo)一個(gè)對(duì)象,只要在其生命線終止點(diǎn)放置一個(gè)“X”符號(hào)即可,該點(diǎn)通常是對(duì)刪除或取消消息的回應(yīng)。,8.1.4 時(shí)序圖建模技術(shù),設(shè)置交互的語(yǔ)境。 通過(guò)識(shí)別對(duì)象在交互中扮演的角色,設(shè)置交互的場(chǎng)景。 為每個(gè)對(duì)象設(shè)置生命線。 從引發(fā)某個(gè)消息的信息開(kāi)始,在生命線之間畫(huà)出從頂?shù)降滓来握归_(kāi)的消息,顯示每個(gè)消息的特性(如參數(shù))。 如果需要可視化消息的嵌套或?qū)嶋H計(jì)算發(fā)生時(shí)的時(shí)間點(diǎn),可以用激活修飾每個(gè)對(duì)象的生命期。 如果需要說(shuō)明時(shí)間或空

7、間的約束,可以用時(shí)間標(biāo)記修飾每個(gè)消息,并附上合適的時(shí)間和空間約束。 如果需要更形式化的說(shuō)明某控制流,可以為每個(gè)消息附上前置和后置條件。,8.1.5 圖書(shū)館管理系統(tǒng)的時(shí)序圖,1. 系統(tǒng)管理員添加書(shū)籍的時(shí)序圖 2. 圖書(shū)管理員處理借書(shū)的時(shí)序圖(不包括預(yù)留書(shū)籍的情況) 3. 系統(tǒng)管理員刪除書(shū)目的時(shí)序圖 4. 借閱者預(yù)留書(shū)籍的時(shí)序圖,1. 系統(tǒng)管理員添加書(shū)籍的時(shí)序圖,圖書(shū)管理員處理借書(shū)的時(shí)序圖(不包括預(yù)留書(shū)籍的情況),3. 系統(tǒng)管理員刪除書(shū)目的時(shí)序圖,4. 借閱者預(yù)借書(shū)籍的時(shí)序圖,第11章 協(xié)作圖,11.1 概述 11.2 對(duì)象、鏈和消息 11.3 時(shí)序圖與協(xié)作圖的比較 11.4 時(shí)序圖與協(xié)作圖的互換

8、 11.5 協(xié)作圖建模技術(shù) 11.6 實(shí)例圖書(shū)館管理系統(tǒng)的協(xié)作圖,11.1 概述,協(xié)作圖描述的是和對(duì)象結(jié)構(gòu)相關(guān)的信息。 協(xié)作圖的用途是表示一個(gè)類(lèi)操作的實(shí)現(xiàn)。 協(xié)作圖對(duì)交互中有意義的對(duì)象和對(duì)象之間的鏈建模。 在UML中,協(xié)作圖用幾何排列來(lái)表示交互作用中的對(duì)象和鏈,附在鏈的箭頭代表消息,消息的發(fā)生順序用消息箭頭處的編號(hào)來(lái)說(shuō)明。,11.1 概述,協(xié)作圖示例:,11.2 對(duì)象、鏈和消息,協(xié)作圖包含了3個(gè)元素: 對(duì)象(Object) 鏈(Link) 消息(Message),11.2 對(duì)象、鏈和消息,11.2.1 對(duì)象 11.2.2 鏈 11.2.3 消息,11.2.1 對(duì)象,協(xié)作圖與時(shí)序圖中的對(duì)象的概念

9、是一樣,只不過(guò)在協(xié)作圖中,無(wú)法表示對(duì)象的創(chuàng)建和撤銷(xiāo),所以對(duì)于對(duì)象在圖中的位置沒(méi)有限制。,11.2.2 鏈,協(xié)作圖中鏈的符號(hào)和對(duì)象圖中鏈所用的符號(hào)是一樣的,即一條連接兩個(gè)類(lèi)角色的實(shí)線。 為了說(shuō)明一個(gè)對(duì)象如何與另一個(gè)對(duì)象連接,可以在鏈的末路上附上一個(gè)路徑構(gòu)造型。,11.2.3 消息,協(xié)作圖中的消息類(lèi)型與時(shí)序圖中的相同,只不過(guò)為了說(shuō)明交互過(guò)程中消息的時(shí)間順序,需要給消息添加順序號(hào)。 順序號(hào)是消息的一個(gè)數(shù)字前綴,是一個(gè)整數(shù),由1開(kāi)始遞增,每個(gè)消息都必須由唯一的順序號(hào)??梢酝ㄟ^(guò)點(diǎn)表示法代表控制的嵌套關(guān)系。 嵌套可以具有任意深度。與時(shí)序圖相比,協(xié)作圖可以顯示更為復(fù)雜的分支。,11.3 時(shí)序圖與協(xié)作圖的比較

10、,11.3.1 相同點(diǎn) 11.3.2 不同點(diǎn),11.3.1 相同點(diǎn),1. 規(guī)定責(zé)任 2. 支持消息 3. 衡量工具,11.3.2 不同點(diǎn),1. 協(xié)作圖的優(yōu)點(diǎn) 2. 時(shí)序圖的優(yōu)點(diǎn),11.4 時(shí)序圖與協(xié)作圖的互換,時(shí)序圖與協(xié)作圖都表示對(duì)象之間的交互作用,只是它們的側(cè)重點(diǎn)有所不同: 時(shí)序圖描述了交互過(guò)程中的時(shí)間順序,但沒(méi)有明確地表達(dá)對(duì)象之間的關(guān)系。 協(xié)作圖描述了對(duì)象之間的關(guān)系,但時(shí)間順序必須從順序號(hào)獲得。 兩種圖的語(yǔ)義是等價(jià)的,可以從一種形式的圖轉(zhuǎn)換成另一種形式的圖,而不丟失任何信息。,11.5 協(xié)作圖建模技術(shù),設(shè)置交互的語(yǔ)境。 通過(guò)識(shí)別對(duì)象在交互中扮演的角色,設(shè)置交互的場(chǎng)景。 對(duì)每個(gè)對(duì)象設(shè)置初始特性。 描述對(duì)象之間可能有信息沿著它傳遞的鏈。 從引起交互的消息開(kāi)始,適當(dāng)?shù)卦O(shè)置其順序號(hào),然后將隨后的每個(gè)消息附到適當(dāng)?shù)逆溕稀?如果需要說(shuō)明時(shí)間或空間約束,可以用時(shí)間標(biāo)記修飾這個(gè)消息,并附上合適的時(shí)間和空間約束。 如果需要更形式化地說(shuō)明這個(gè)控制流,可以為每個(gè)消息附上前置和后置條件。,11.6 實(shí)例圖書(shū)館管理系統(tǒng)的協(xié)作圖,11.6.2 圖書(shū)館管理系統(tǒng)的協(xié)作圖,11.6.2 圖書(shū)館管理系統(tǒng)的協(xié)作圖,1. 系統(tǒng)管理員添加書(shū)籍的協(xié)作圖 2. 圖書(shū)管理員處理借書(shū)的協(xié)作圖 3. 圖書(shū)管理員處理還書(shū)的協(xié)作圖 4. 系統(tǒng)管理員刪除書(shū)籍的協(xié)作圖 5.

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論