版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上軟件建模與分析期末復(fù)習(xí)整理題型:填空(10)解答:20(4X5)分析題(70) 第1講 軟件可視化建模與UML1為什么要建模?(1)軟件是產(chǎn)器而非“程序”。軟件和其他工業(yè)產(chǎn)品一樣,使用者和制造者分離,除程序之外還會有相應(yīng)的產(chǎn)物(文檔、維護(hù)、數(shù)據(jù)等)。軟件產(chǎn)品在生產(chǎn)上與其他工業(yè)產(chǎn)品生產(chǎn)一樣,需要團(tuán)隊(duì)、工具、技術(shù)等。(2)模型是對現(xiàn)實(shí)世界的簡化。在工業(yè)方面,建模的方法得到的廣泛的應(yīng)用。(3)建模方式的應(yīng)用。在現(xiàn)在的軟件產(chǎn)品生產(chǎn)過程中,應(yīng)用了建模方法(UML),使用了相應(yīng)工具(ROSE)等。解決了軟件工程缺少工程,只停留在理論上,沒有標(biāo)準(zhǔn),不能有效交流這樣問題。2UML是U
2、nified Modeling Language的首字母縮寫。中文意思是統(tǒng)一建模語言。UML:可視化、詳述、構(gòu)造、文檔化。UML最適于的過程:用例驅(qū)動的、以體系結(jié)構(gòu)為中心、迭代的和增量的。UML從考察系統(tǒng)的不同角度出發(fā),定義了用例圖、類圖、對象圖、狀態(tài)圖、活動圖、序列圖、協(xié)作圖、構(gòu)件圖、部署圖等9種圖。開發(fā)過程:業(yè)務(wù)、需求、分析結(jié)構(gòu)、結(jié)構(gòu)行為、設(shè)計(jì)。Actor-識別參與者參與者代表在參與者代表在系統(tǒng)邊界之外的真實(shí)事物,并不是系統(tǒng)的成分。參與者透過系統(tǒng)邊界直接與系統(tǒng)交互,參與者的確定代表著系統(tǒng)邊界的確定。交互是有意義的,參與者可以是任何事物識別參與者思路:誰使用該系統(tǒng)誰改變系統(tǒng)的數(shù)據(jù)誰從系統(tǒng)獲取
3、信息誰需要系統(tǒng)的支持以完成日常工作任務(wù)誰負(fù)責(zé)維護(hù)、管理并保持系統(tǒng)正常運(yùn)行系統(tǒng)需要應(yīng)付那些硬件設(shè)備系統(tǒng)需要和那些外部系統(tǒng)交互誰對系統(tǒng)運(yùn)行產(chǎn)生的結(jié)果感興趣時(shí)間、氣溫等內(nèi)部外部條件3用例對一組動作序列的描述,系統(tǒng)執(zhí)行該動作序列來為Actor產(chǎn)生一個(gè)可觀察的結(jié)果值。用戶視角的需求組織形式;需求按目標(biāo)組織;Use Case識別用例Actor希望系統(tǒng)提供什么功能系統(tǒng)是否存儲和檢索信息,如果是,這個(gè)行為有哪個(gè)Actor觸發(fā)當(dāng)系統(tǒng)改變狀態(tài)時(shí),通知參與者嗎存在影響系統(tǒng)的外部時(shí)間嗎4關(guān)系參與者與用例之間:關(guān)聯(lián)關(guān)系用例與用例之間:包含關(guān)系 (include)、延伸關(guān)系 (extend)、泛化關(guān)系 (generali
4、zation)參與者與參與者之間:泛化關(guān)系 (generalization)第2講 統(tǒng)一建模語言21掌握UML特點(diǎn)UML的主要特點(diǎn):統(tǒng)一的標(biāo)準(zhǔn)、面向?qū)ο?、可視化、表達(dá)能力強(qiáng)(概念明確)、獨(dú)立于過程22 基本圖標(biāo)元素的表示符關(guān)聯(lián):連接(connect)模型元素及鏈接(link)實(shí)例。依賴:表示一個(gè)元素以某種方式依賴于另一種元素。泛化:表示一般與特殊的關(guān)系,即“一般”元素是“特殊”關(guān)系的泛化。聚合:表示整體與部分的關(guān)系。23 UML軟件系統(tǒng)體系結(jié)構(gòu)的五種視圖和九種基本圖UML模型系統(tǒng)體系結(jié)構(gòu):UML模型元素事物結(jié)構(gòu)事物用例、類、接口、協(xié)作、主動類、組件、節(jié)點(diǎn)行為事物交互機(jī)、狀態(tài)機(jī)分組事物包輔助事物
5、注釋關(guān)系關(guān)聯(lián)關(guān)系、依賴關(guān)系、泛化關(guān)系、實(shí)現(xiàn)關(guān)系、聚合關(guān)系通用機(jī)制修飾、注解、規(guī)格說明、通用劃分、擴(kuò)展機(jī)制視圖用例視圖用例圖邏輯視圖類、對象圖進(jìn)程視圖時(shí)序圖、協(xié)作圖、狀態(tài)圖、活動圖構(gòu)件視圖構(gòu)件圖配置視圖配置圖五種視圖:1用例視圖l 描述系統(tǒng)的功能需求,找出用例和執(zhí)行者;l 客戶、分析者、設(shè)計(jì)者、開發(fā)者和測試者;l 描述用圖:用例圖和活動圖;l 重要性:系統(tǒng)的中心,它決定了其他視圖的開發(fā),用于確認(rèn)和最終驗(yàn)證系統(tǒng)。2邏輯視圖l 描述如何實(shí)現(xiàn)系統(tǒng)內(nèi)部的功能 ;l 分析者、設(shè)計(jì)者、開發(fā)者 ;l 類圖和對象圖、狀態(tài)圖、順序圖、合作圖和活動圖 ;l 重要性:描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)和因發(fā)送消息而出現(xiàn)的動態(tài)協(xié)作關(guān)
6、系 。靜態(tài)結(jié)構(gòu):類圖、對象圖動態(tài)行為:狀態(tài)圖、活動圖、時(shí)序圖、協(xié)作圖3進(jìn)程視圖l 描述系統(tǒng)代碼構(gòu)件組織和實(shí)現(xiàn)模塊,及它們之間的依賴關(guān)系 ;l 設(shè)計(jì)者、開發(fā)者 ;l 構(gòu)件圖 ;l 描述系統(tǒng)如何劃分軟件構(gòu)件,如何進(jìn)行編程 。4構(gòu)件視圖l 描述系統(tǒng)的并發(fā)性,并處理這些線程間的通信和同步 ;l 開發(fā)者和系統(tǒng)集成者 ;l 狀態(tài)圖、順序圖、合作圖、活動圖、構(gòu)件圖和配置圖 ;l 將系統(tǒng)分割成并發(fā)執(zhí)行的控制線程及處理這些線程的通信和同步 。5配置視圖l 描述系統(tǒng)的物理設(shè)備配置;l 開發(fā)者、系統(tǒng)集成者和測試者 ;l 配置圖 ;l 描述硬件設(shè)備的連接和哪個(gè)程序或?qū)ο篑v留在哪臺計(jì)算機(jī)上執(zhí)行 。24 UML簡單建模U
7、ML的建模原則:名字、作用域、可見性、完整性、運(yùn)行屬性。第3講 用例模型視圖31用例圖的概念用例圖顯示誰將是相關(guān)的用戶、用戶希望系統(tǒng)提供什么服務(wù)以及用戶需要為系統(tǒng)提供的服務(wù)。用例圖最常用來描述系統(tǒng)以及子系統(tǒng)。1包含的元素6個(gè):參與者、用例、關(guān)聯(lián)關(guān)系、包含關(guān)系、擴(kuò)展關(guān)系、泛化關(guān)系。(1)參與者:系統(tǒng)外部的一個(gè)實(shí)體。參與用例的執(zhí)行過程。通過向系統(tǒng)輸入或請求系統(tǒng)輸入某些事件來觸發(fā)系統(tǒng)的執(zhí)行。由參與用例時(shí)所擔(dān)當(dāng)?shù)慕巧珌肀硎?。每個(gè)參與者可以參與一個(gè)或多個(gè)用例。種類:系統(tǒng)用戶、與所建造的系統(tǒng)交互的其他系統(tǒng)、一些可以運(yùn)行的進(jìn)程。(2)用例:外部可見的系統(tǒng)功能單元。在不揭示系統(tǒng)內(nèi)部構(gòu)造的前提下定義連貫的行為。
8、不是需求或功能的規(guī)格說明,但是也展示和體現(xiàn)其所描述的過程中的需求情況。(3)關(guān)聯(lián)關(guān)系:表示參與者用例之間進(jìn)行通信。不同的參與者可以訪問相同的用例。(4)包含關(guān)系:客戶用例可以簡單地包含提供者用例具有的行為,并把它所包含的用例行為作為自身行為的一部分。(5)擴(kuò)展關(guān)系:擴(kuò)展用例被定義為基礎(chǔ)用例的增量擴(kuò)展。基礎(chǔ)用例提供擴(kuò)展點(diǎn)以添加新的行為。擴(kuò)展用例提供插入片段以插入到基礎(chǔ)用例的擴(kuò)展點(diǎn)上。 (6)泛化關(guān)系:父用例也可以被特別列舉為一個(gè)或多個(gè)子用例。子用例表示父用例的特殊形式。子用例從父用例處繼承行為和屬性,還可以添加行為或覆蓋、改變繼承的行為。32用例圖建模技術(shù)1對語境建模識別系統(tǒng)外部的參與者。將類似
9、參與者組織成泛化的結(jié)構(gòu)層次。在需要加深理解的地方,為每個(gè)參與者提供一個(gè)構(gòu)造型。將參與者放入到用例圖中,并說明參與者與用例之間的通信路徑。2對需求建模識別系統(tǒng)的外部參與者來建立系統(tǒng)的語境??紤]每一個(gè)參與者期望的行為或需要系統(tǒng)提供的行為。把這些公共的行為命名為用例。確定提供者用例和擴(kuò)展用例。對這些用例、參與者和它們之間的關(guān)系建模。用注釋修飾用例。第4講 需求用例分析1太極建模由外而內(nèi),層次分明;動靜結(jié)合,逐步求精。2需求的定義系統(tǒng)的一個(gè)期望特性、屬性或行為。需求所需要的人:用戶、業(yè)務(wù)分析員、需求員、項(xiàng)目經(jīng)理、測試員、程序員、架構(gòu)師。3高質(zhì)量的需要(目標(biāo))完整性正確性可行性必要性分級性無多義性/準(zhǔn)確
10、性可驗(yàn)證性一致性可擴(kuò)展性可跟蹤性可管理性穩(wěn)定性4.用戶需要業(yè)務(wù)需要、工作任務(wù)、業(yè)務(wù)需求5什么是用例?針對某個(gè)特定的外部用例,系統(tǒng)通過與其交互而執(zhí)行的,能夠產(chǎn)生可觀測的、有價(jià)值的結(jié)果的一個(gè)動作序列。組成條件:名稱、簡述、用例與參與者、層次、范圍、后置條件、后置條件、觸發(fā)事件、基本流、擴(kuò)展流、擴(kuò)展點(diǎn)、用例圖、業(yè)務(wù)規(guī)則、約束、UI 說明、變化點(diǎn)。6用例的價(jià)值以用戶為中心、最重要的需求(功能)圖文并茂、繁簡結(jié)合、形式靈活全面的字段和信息規(guī)范的模版清晰的層次結(jié)構(gòu)第5講 UML靜態(tài)建模51 分析類的1概念在分析模型中,分析類是概念層次上的內(nèi)容,用于描述系統(tǒng)中較高層次的對象。分析直接與應(yīng)用邏輯相關(guān),而不關(guān)注
11、于技術(shù)實(shí)現(xiàn)的問題。2分析類的類型實(shí)體類:表示系統(tǒng)存儲和管理的永久信息。邊界類:表示參與者與系統(tǒng)之間的交互??刂祁悾罕硎鞠到y(tǒng)在運(yùn)行過程中業(yè)務(wù)控制邏輯。3實(shí)體類描述必須存貯的信息及其相關(guān)行為,通常對應(yīng)現(xiàn)實(shí)世界中的“事物”。實(shí)體類的UML表:4邊界類描述外部的參與者與系統(tǒng)之間的交互,類型:用戶界面、系統(tǒng)接口、設(shè)備接口。5控制類描述一個(gè)用例所具有的事件流控制行為,實(shí)現(xiàn)對用例行為的封裝,將用例的執(zhí)行邏輯與邊界和實(shí)體進(jìn)行隔離。6用例的實(shí)現(xiàn)用例實(shí)現(xiàn)使用設(shè)計(jì)模型中的元素描述一個(gè)用例是如何實(shí)現(xiàn)和執(zhí)行的,它是從分析和設(shè)計(jì)追溯到需求的一種方法。從設(shè)計(jì)的視角表示用例的內(nèi)容:動態(tài)的:直接對應(yīng)用例事件序列的交互圖。靜態(tài)的
12、:反映參與者用例事件序列的類及其關(guān)系的類圖52 分析模型的處理理解用例模型、識別分析類、定義交互行為、建立分析類圖、檢查分析模型。1識別邊界類通常,一個(gè)參與者與一個(gè)用例之間交互或通信關(guān)聯(lián)對應(yīng)一個(gè)邊界類。2識別控制類控制類負(fù)責(zé)協(xié)調(diào)邊界類和實(shí)體類,通常在現(xiàn)實(shí)世界中沒有對應(yīng)的事物。一般來說,一個(gè)用例對應(yīng)一個(gè)控制類。3識別實(shí)體類實(shí)體類通常是用例中的參與對象,參應(yīng)著現(xiàn)實(shí)世界中的“事物”4創(chuàng)建分析類圖定義關(guān)系:找出分析類之間的關(guān)聯(lián)關(guān)系,并通過泛化實(shí)現(xiàn)復(fù)用。定義屬性:按照一般常識、認(rèn)真研究問題域、根據(jù)系統(tǒng)責(zé)任的要求、考慮對象需要系統(tǒng)保存的信息,等找出對象的某些屬性;對象為了在服務(wù)中實(shí)現(xiàn)其功能,需要增設(shè)一些屬
13、性;識別對象需要區(qū)別的狀態(tài),考慮是否需要增加一個(gè)屬性來區(qū)分別這些狀態(tài);確定屬性表示整體與部分結(jié)構(gòu)和實(shí)例連接。5檢查分析模式需要檢查的項(xiàng)目:正確性、完整性、一致性、可行性。第6講 動態(tài)建模-UML動態(tài)視圖61 系統(tǒng)建模系統(tǒng)建模:一個(gè)完整的系統(tǒng)模型必須描述系統(tǒng)的靜態(tài)和動態(tài)兩個(gè)方面。分為靜態(tài)建模、動態(tài)建模。靜態(tài)建模:描述系統(tǒng)中對象,每個(gè)對象包含的數(shù)據(jù),以及它們之間存在的鏈接。產(chǎn)生靜態(tài)模型。動態(tài)建模:描述系統(tǒng)運(yùn)行時(shí)的動態(tài)行為。產(chǎn)生動態(tài)模型。對象通過通信來協(xié)作的方式,以及對象在系統(tǒng)的生命周期中改變狀態(tài)的方式是系統(tǒng)的動態(tài)行為。62 動態(tài)視圖1順序圖(序列圖)2協(xié)作圖描述協(xié)作對象間的交互和鏈接,側(cè)重于空間的
14、協(xié)作鏈接顯示對象之間是如何聯(lián)系在一起的協(xié)作圖顯示對象間的鏈接以及鏈接對象間如何發(fā)送消息協(xié)作圖從初始化整個(gè)交互或協(xié)作的消息開始協(xié)作圖沒有顯示的返回消息表示,是為了簡化協(xié)作圖。從消息返回的數(shù)據(jù)可以放在消息名前面,中間用“:=“隔開。3狀態(tài)圖(1)狀態(tài)狀態(tài)圖描述對象在生命周期中可能的狀態(tài)s以及每一種狀態(tài)的重要行為;描述它所檢測到的事件以及什么樣的事件引起對象狀態(tài)發(fā)生改變。狀態(tài)的重要特征:一個(gè)對象有若干個(gè)可能的狀態(tài),并且在任何給定時(shí)間恰好處于這些狀態(tài)中的一個(gè);對象可以改變狀態(tài);不同時(shí)間,一個(gè)對象可能依賴其狀態(tài)對同一刺激做出不同的響應(yīng)。區(qū)分狀態(tài)原則:處于一個(gè)特定狀態(tài)的對象對至少一個(gè)事件的響應(yīng)和它處于其他
15、狀態(tài)時(shí)對該事件的響應(yīng)不同。(2)事件(event):當(dāng)某些事情發(fā)生時(shí),對象的狀態(tài)發(fā)生改變,稱改變對象狀態(tài)的事情為“事件”。表現(xiàn)為發(fā)送給對象的消息。(3)遷移(Transition):檢測到一個(gè)事件可能導(dǎo)致對象從一個(gè)狀態(tài)移動到另一個(gè)狀態(tài),這樣的移動成為遷移或轉(zhuǎn)換。狀態(tài)遷移用連接兩個(gè)狀態(tài)的箭頭表示。箭頭必須標(biāo)注一個(gè)事件的名字。箭頭的含義:如果對象在處于箭頭尾的狀態(tài)時(shí)接收到事件,對象將遷移到箭頭所指向的狀態(tài)。(4)動作和活動的理解動作和活動都是一種過程,都由對象中的方法來實(shí)現(xiàn),但動作與遷移關(guān)聯(lián),處理較快且不會被中斷;活動與狀態(tài)關(guān)聯(lián),處理時(shí)間較長且可以被事件中斷。l 特殊狀態(tài)-初始狀態(tài)和終止?fàn)顟B(tài)初始狀
16、態(tài):一個(gè)黑色小圓點(diǎn)表示。從初始狀態(tài)出發(fā)的遷移表示創(chuàng)建或初始化對象時(shí)進(jìn)入的狀態(tài)。從初始狀態(tài)出發(fā)的轉(zhuǎn)換不寫任何事件。終止?fàn)顟B(tài):用大圓圈中加一個(gè)黑色小圓點(diǎn)表示。終止?fàn)顟B(tài)代表對象在響應(yīng)撤l 特殊狀態(tài)-組合狀態(tài)允許一個(gè)狀態(tài)包含若干子狀態(tài)。這些子狀態(tài)都具有一些共有的特性。這些特性組合成一組放入一個(gè)狀態(tài)中,這個(gè)狀態(tài)即是組合狀態(tài)。4活動圖捕獲動態(tài)行為(面向活動的),目的是給商業(yè)工作流建模、給操作建模。要素:泳道、信號1泳道活動圖告訴你發(fā)生了什么,但沒有告訴你該項(xiàng)活動由誰來完成。在程序設(shè)計(jì)中,這意味著活動圖沒有描述出各個(gè)活動由哪個(gè)類來完成。泳道解決了這一問題。它將活動圖的邏輯描述與序列圖的責(zé)任描述結(jié)合起來。泳道
17、用矩形框來表示,屬于某個(gè)泳道的活動放在該矩形框內(nèi),將對象名放在矩形框的頂部,表示泳道中的活動由該對象負(fù)責(zé)。2信號在活動圖中可以表示信號的發(fā)送與接收,分別用發(fā)送和接收標(biāo)志來表示。發(fā)送和接收標(biāo)志也可與對象相連,用于表示消息的發(fā)送者和接收者。第7講 UML順序圖1使用順序圖建模順序圖是兩種類型的交互圖之一。順序圖用來建模以時(shí)間順序安排的對象交互,并且把用例行為分配給類。它是用來顯示參與者如何采用若干順序步驟與系統(tǒng)對象交互的模型。2為什么要建模順序圖建模順序圖有許多理由,順序圖與活動圖具有類似的作用。其中重要的理由就是實(shí)現(xiàn)用例。任何用例都可以使用順序圖進(jìn)一步闡明和實(shí)現(xiàn)。3順序圖的標(biāo)記符順序圖有兩個(gè)主要
18、的標(biāo)記符:活動對象和這些活動對象之間的通信消息。活動對象可以是任何在系統(tǒng)中扮演角色的對象,不管它是對象實(shí)例還是參與者,如下圖所示?;顒訉ο笾g發(fā)送的消息是順序圖的關(guān)鍵。消息說明了對象之間的控制流,對象是如何交互的,以及什么條件會改變控制流。(1)活動對象 活動對象可以是系統(tǒng)的參與者或者任何有效的系統(tǒng)對象。對象是類的實(shí)例,它使用包圍名稱的矩形框來標(biāo)記。(2)消息用來說明順序圖中不同活動對象之間的通信。它可在一個(gè)對象需要取消不同對象的進(jìn)程時(shí)或者需要向另一個(gè)對象提供服務(wù)時(shí),使用消息。 消息從活動對象生命線到接收對象生命線的箭頭表示。箭頭上面標(biāo)記要發(fā)送的消息。4如何使用消息進(jìn)行通信消息是順序圖活動對象
19、之間通信的惟一方式。UML中的消息使用了一些簡潔的標(biāo)記符。消息可以包含條件以便限制它們只在滿足條件時(shí)才能發(fā)送。條件顯示在消息名稱上面的方括號中。5順序圖的其他技術(shù)學(xué)習(xí)如何在創(chuàng)建順序圖的過程中創(chuàng)建對象。與活動圖一樣,可以在順序圖中設(shè)置擁有控制權(quán)的對象狀態(tài)。另外一點(diǎn)和活動圖相似的是,可以通過使用分支和從屬控制流來以多種方式修改順序圖的控制流。(1)創(chuàng)建對象創(chuàng)建對象的標(biāo)記符如下圖中的示例所示。有一個(gè)主要步驟用來把“create” 消息發(fā)送給對象實(shí)例。對象創(chuàng)建之后就會具有生命線,可以使用該對象發(fā)送和接收消息。在處理新創(chuàng)建的對象,或者處理順序圖中的任何其他對象時(shí),都可以發(fā)送“destroys”消息來刪除
20、對象。若要想說明某個(gè)對象被銷毀,需要在被銷毀對象的生命線上放一個(gè)X字符。(2)分支和從屬流有兩種方式來修改順序圖的控制流:使用分支和使用從屬流。這兩種方式很相似,各自的標(biāo)記符略微不同。控制流的改變是由于不同的條件導(dǎo)致控制流走向不同的道路。6學(xué)習(xí)如何建模順序圖創(chuàng)建順序圖包含4項(xiàng)任務(wù): 1)確定需要建模的工作流。 2)從左到右布置對象。 3)添加消息和條件以便創(chuàng)建每一個(gè)工作流。 4)繪制總圖以便連接各個(gè)分圖。第8講 UML協(xié)作圖1概述與順序圖一樣,協(xié)作圖也展示對象之間的交互關(guān)系。它繪制出對象與對象之間的消息連接。順序圖與協(xié)作圖很相似,實(shí)際上這兩種圖表達(dá)的是同一種信息,并且可以將順序圖轉(zhuǎn)換為等價(jià)的協(xié)
21、作圖,反之亦然。順序圖和協(xié)作圖雖然都可以表示各對象間的交互關(guān)系,但它們的側(cè)重點(diǎn)不同。順序圖強(qiáng)調(diào)的是交互的時(shí)間順序。協(xié)作圖強(qiáng)調(diào)的是交互的語境與參與交互的對象的整體組織。2協(xié)作圖在UML中的表示方法對象圖展示出對象和對象之間的靜態(tài)關(guān)系。協(xié)作圖是對象的擴(kuò)展。協(xié)作圖除了展示出對象之間的關(guān)聯(lián),還顯示出對象之間的消息傳遞。通常在協(xié)作圖中省略掉關(guān)聯(lián)的名字,因?yàn)楸硎境鲫P(guān)聯(lián)的名字會使圖變得混亂。關(guān)聯(lián)線附近的箭頭線表示對象之間傳遞的消息,箭頭指向消息接收對象。消息名稱和消息序號附在箭頭線附近。消息的一般含義是觸發(fā)接收消息的對象執(zhí)行它的一個(gè)操作。箭頭的含義和順序圖中的一樣。3其他概念(1)發(fā)送給多對象的消息一個(gè)對象
22、可能會向同一個(gè)類的多個(gè)對象同時(shí)發(fā)送一個(gè)消息。例如老師會讓多個(gè)學(xué)生同時(shí)交作業(yè)。在協(xié)作圖中,多對象(multiple object)用“一疊向后延伸的多個(gè)對象圖標(biāo)”來表示。在多對象前面可以加上用方括號括起來的條件,前面加一個(gè)星號,用來說明消息發(fā)送給多個(gè)對象。(2)返回結(jié)果消息可能是要求某個(gè)對象進(jìn)行計(jì)算并返回結(jié)果的值 。例如一個(gè)顧客對象可能請求一個(gè)計(jì)算器(calculator)對象計(jì)算某項(xiàng)商品的總價(jià),包括該項(xiàng)商品的價(jià)格和稅款。UML提供了返回值的表示法。返回值的名字在最左,后跟賦值號“:=”.接著是操作名和操作參數(shù)。對計(jì)算商品價(jià)格這個(gè)例子,可以表示成:totalPrice:=compute(item
23、Price ,salesTax)。下圖說明了在協(xié)作圖中返回值的表示法。表達(dá)式中賦值號的右邊部分被稱為消息構(gòu)型(message signature).(3)主動對象在一些交互中,控制流是由一個(gè)特定的對象控制的。這樣的對象叫做主動對象(active object)。一個(gè)主動對象可以向被動對象發(fā)送消息也可以與其他主動對象交互。(4)同步有時(shí)遇到的另一種情況是一個(gè)對象只能等到其他一些對象發(fā)送了消息(可能是不連續(xù)的發(fā)送消息)后才能發(fā)送消息。也就是說,這個(gè)對象必須要“同步“自己發(fā)送的消息與其他對象發(fā)送的消息。第9講 UML狀態(tài)圖狀態(tài)圖的標(biāo)記符與活動圖的標(biāo)記符非常相似,有時(shí)會讓人混淆。其實(shí),狀態(tài)圖用來表示單
24、個(gè)對象的行為如何改變其狀態(tài)。而活動圖是用來建模不同區(qū)域的工作如何彼此交互。1定義狀態(tài)圖狀態(tài)圖用來建模對象是如何改變其狀態(tài)以響應(yīng)事件和展示對象從創(chuàng)建到刪除的生命周期。狀態(tài)定義為對象行為在某一個(gè)時(shí)刻的快照或者轉(zhuǎn)折點(diǎn)。2為什么要建模狀態(tài)圖狀態(tài)圖除了可以用于描述對象接收事件觸發(fā)時(shí)的行為狀態(tài)外,它還可以用于許多其他情況。例如,狀態(tài)圖可以用來說明基于用戶輸入的屏幕狀態(tài)改變,也可以用來說明復(fù)雜用例的狀態(tài)進(jìn)展情況。在一般系統(tǒng)中,不需對每個(gè)類創(chuàng)建狀態(tài)圖。當(dāng)一個(gè)類實(shí)例(對象)有多種狀態(tài),每種狀態(tài)中的行為表現(xiàn)又不相同,則可創(chuàng)建狀態(tài)圖。3狀態(tài)圖的標(biāo)記符狀態(tài)圖由狀態(tài)、轉(zhuǎn)移和事件組成。(1)狀態(tài)狀態(tài)圖中共有3種獨(dú)立的狀態(tài)
25、標(biāo)記符,如下圖所示:狀態(tài)細(xì)節(jié)是指當(dāng)對象處于特定狀態(tài)時(shí),可能要進(jìn)行一些活動,例如生成報(bào)表、進(jìn)行計(jì)算或向另一對象發(fā)送事件。為了進(jìn)一步描述對象在特定狀態(tài)下的一些活動,可加入細(xì)節(jié)活動、進(jìn)入、退出、事件和狀態(tài)歷史信息。(2)轉(zhuǎn)移轉(zhuǎn)移用來顯示從一個(gè)狀態(tài)到另一個(gè)狀態(tài)的處理流。轉(zhuǎn)移使用從一個(gè)狀態(tài)到另一個(gè)狀態(tài)的開放箭頭來標(biāo)記,如下圖所示。(3)決策點(diǎn)決策點(diǎn)在建模狀態(tài)圖時(shí)提供了方便,因?yàn)樗ㄟ^在中心位置分組轉(zhuǎn)移到各自的方向,從而提高了狀態(tài)圖的可視性,如下圖所示。(4)同步狀態(tài)圖中使用同步是為了說明并發(fā)工作流的分岔與聯(lián)合。下圖所示為同步條的標(biāo)記符。4轉(zhuǎn)移的事件、條件和動作條件用來描述狀態(tài)轉(zhuǎn)移的前提。事件用來指示什么觸發(fā)了轉(zhuǎn)移,動作用來說明當(dāng)轉(zhuǎn)移發(fā)生時(shí)會產(chǎn)生什么情況。事件、條件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度網(wǎng)絡(luò)安全服務(wù)協(xié)議書
- 2024年度版權(quán)使用與授權(quán)合同
- 2024供水、供電合同范文
- 2024年建筑工程股權(quán)轉(zhuǎn)讓合同樣本
- 2024城市軌道交通安檢設(shè)備采購合同
- 文書模板-產(chǎn)品委外開發(fā)合作協(xié)議書
- 產(chǎn)業(yè)新城課件教學(xué)課件
- 2024年度企業(yè)品牌形象設(shè)計(jì)及VI手冊整編合同
- 2024年度版權(quán)購買與授權(quán)合同具體內(nèi)容
- 2024年廢物回收居間買賣合同
- 外貿(mào)業(yè)務(wù)與國際市場培訓(xùn)課件
- 信創(chuàng)醫(yī)療工作總結(jié)
- 教師教育教學(xué)質(zhì)量提升方案
- 滅火器的規(guī)格與使用培訓(xùn)
- 2024《中央企業(yè)安全生產(chǎn)治本攻堅(jiān)三年行動方案(2024-2026年)》
- 紀(jì)錄片《園林》解說詞
- 建筑專題攝影培訓(xùn)課件
- 《民間文學(xué)導(dǎo)論》課件
- 《輸血查對制度》課件
- 拳擊賽策劃方案
- 分離性障礙教學(xué)演示課件
評論
0/150
提交評論