《UML概述49403》由會(huì)員分享,可在線閱讀,更多相關(guān)《UML概述49403(40頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),UML,面向?qū)ο蠼Ec設(shè)計(jì),初識(shí),UML,本章要點(diǎn),UML,RUP,OO,分析與設(shè)計(jì)方法的演化,現(xiàn)實(shí)業(yè)務(wù)邏輯 解析至計(jì)算機(jī),功能分解法,數(shù)據(jù)流法-DFD,信息建模法 ER圖,OPP vs OOP,面向過程,世界由相互聯(lián)系的小系統(tǒng)構(gòu)成,,每個(gè)小系統(tǒng)有明確的開始和結(jié)束,因果關(guān)系。,基本任務(wù),-,編寫令序列,函數(shù),-,組織結(jié)構(gòu),數(shù)據(jù)流,-,組織行為,描述控制流,Traditional Businyess,OPP vs OOP,面向過程,過程復(fù)雜,需求變化,數(shù)據(jù)變化,面向?qū)ο?On Demand Businyess,
2、OPP vs OOP,面向?qū)ο?設(shè)計(jì)的重點(diǎn)在于數(shù)據(jù);,程序被劃分為對(duì)象;,函數(shù)與數(shù)據(jù)的封裝;,信息的隱藏,對(duì)象之間發(fā)送消息,喝酒唱歌,人生真爽!,。,對(duì)酒當(dāng)歌,人生真爽!,。,對(duì)酒當(dāng)歌,人生幾何!,。,評(píng)估軟件的質(zhì)量因素,Correctness,Maintainability,Reusability,Extensibility,Openness,Security,Integrity,User friendliness,分析與設(shè)計(jì)方法的演化,現(xiàn)實(shí)業(yè)務(wù)邏輯 解析至計(jì)算機(jī),面向現(xiàn)實(shí)對(duì)象,走向,UML,令人迷惑的,OO,術(shù)語(yǔ),Wirfs-Responsibility,Booch-operations,
3、Coad-Service,Stroustrup-function,Method,UML,三友,Grady,Booch,面向?qū)ο蟮姆治鲈O(shè)計(jì)方法,Booch Method,可重用的、靈活的,Booch,組件。,Object-Oriented Analysis and Design with Applications,James Rumbaugh,Object Modeling Technique,,,OMT,Object-oriented Modeling and Design with UML,Ivar Jacobson,Object-oriented software engineering,
4、OOSE,方法,面向用例,(Use-Case),The Unified Modeling Language Reference Manual,UML,發(fā)展歷程,UML 2.3,UML,的特性,UML-,Unified,Modeling,Language,軟件界第一個(gè),統(tǒng)一,的,建模語(yǔ)言,一種基于,面向?qū)ο?的,可視化,的,通用,建模語(yǔ)言,一種定義良好,易于表達(dá),功能強(qiáng)大且普遍實(shí)用,不是一種方法,,獨(dú)立于過程。,常見的模型,生活相關(guān):氣象圖、道路交通圖、交通標(biāo)志,展示相關(guān):建筑物模型、沙盤、公司總部的,3D,復(fù)制品,數(shù)據(jù)分析相關(guān):條形圖、餅狀圖,業(yè)務(wù)分析相關(guān):組織結(jié)構(gòu)圖、跨職能流程圖,設(shè)計(jì)相關(guān):
5、建筑平面圖、管線圖、電路板設(shè)計(jì)圖,模型是對(duì)系統(tǒng)的完整的,抽象,表示,建模是在不,同層次,上對(duì)系統(tǒng)的描述。,什么是模型,模型是對(duì)現(xiàn)實(shí)的簡(jiǎn)化,為什么要建模?,為什么要建模?,為什么要建模?,降低復(fù)雜度,鑒于軟件系統(tǒng)的復(fù)雜性和規(guī)模的不斷增大,,需要建立不同的模型對(duì)系統(tǒng)的各層次進(jìn)行描述。,交流工具,便于開發(fā)人員與用戶的交流。,可視化,為什么要建模?,模型為以后的系統(tǒng)維護(hù)和升級(jí)提供了文檔。,領(lǐng)域問題,概念模型,分析、抽取,系統(tǒng)需求,解決方案,分析、設(shè)計(jì),提取,建立什么模型,?,UML,是一種應(yīng)用面很廣泛的建模語(yǔ)言,模型的種類,模型的用途,業(yè)務(wù)模型,對(duì)業(yè)務(wù)過程、工作流、組織的建模,需求模型,對(duì)捕獲的需求進(jìn)
6、行整理和分析的工具,,輔助開發(fā)人員與用戶進(jìn)行溝通,設(shè)計(jì)模型,包含高層設(shè)計(jì)(架構(gòu)模型)和詳細(xì)設(shè)計(jì)模型,,用于統(tǒng)一開發(fā)人員、溝通設(shè)計(jì)信息,數(shù)據(jù)庫(kù)模型,設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)、表結(jié)構(gòu),以及與應(yīng)用系統(tǒng)的交互,實(shí)現(xiàn)模型,用來理清軟件的組成、部署方案,,為安裝與維護(hù)人員的工作提供指導(dǎo),誰(shuí)應(yīng)該建模,?,業(yè)務(wù)建模,領(lǐng)域?qū)<覟橹?,需求分析人員是主力,需求模型,以需求分析人員為主,系統(tǒng)分析員是主力,設(shè)計(jì)模型,高層設(shè)計(jì)模型以架構(gòu)師為主,系統(tǒng)分析員,資深開發(fā)人員,詳細(xì)設(shè)計(jì)模型則以資深開發(fā)人員為主,架構(gòu)師,實(shí)現(xiàn)模型,設(shè)計(jì)人員為主,架構(gòu)師提供總體指導(dǎo)。,什么是,UML,?,UML,是一種可視化的建模語(yǔ)言,UML,是一種可用于詳
7、細(xì)描述的語(yǔ)言,UML,是一種構(gòu)造語(yǔ)言,UML,是一種文檔化語(yǔ)言,具有指定的建模元素(圖式符號(hào)),具有嚴(yán)格的語(yǔ)法(構(gòu)圖規(guī)則),具有明確的語(yǔ)義(邏輯含義),UML,不是一種方法,它獨(dú)立于過程,UML,構(gòu)造塊,規(guī)則,公共機(jī)制,建模元素,關(guān)系,圖,規(guī)格描述,修飾,公共分類,擴(kuò)展機(jī)制,命名,范圍,可見性,完整性,執(zhí)行,UML,的主要構(gòu)成,UML,模型元素,注解,類,屬性,操作,對(duì)象:類,屬性,操作,狀態(tài),用例,結(jié)點(diǎn),供應(yīng)接口,包,依賴,關(guān)聯(lián),泛化,主動(dòng)類,屬性,操作,請(qǐng)求接口,構(gòu)件,實(shí)現(xiàn),類圖,展示了系統(tǒng)中類的靜態(tài)結(jié)構(gòu),即類與類之間的相互聯(lián)系。,可以把若干個(gè)相關(guān)的類包裝在一起作為一個(gè)單元,(,包,),相
8、當(dāng)于一個(gè)子系統(tǒng)。,UML,中的圖,對(duì)象圖,對(duì)象圖是類圖的實(shí)例,展示了系統(tǒng)執(zhí)行在某一時(shí)間點(diǎn)上的一個(gè)可能的快照。顯示了對(duì)象間的所有實(shí)例鏈接(,link,)關(guān)系。,UML,中的圖,用例圖,用例圖展示各類外部執(zhí)行者與系統(tǒng)所提供的用例之間的連接。,一個(gè)用例是系統(tǒng)所提供的一個(gè)功能的描述。,貿(mào)易經(jīng)理,風(fēng)險(xiǎn)分析,設(shè)置邊界,進(jìn)行交易,交易估價(jià),更新帳目,使用,使用,擴(kuò)展,營(yíng)銷人員,超越邊界,評(píng)價(jià),記帳系統(tǒng),銷售人員,UML,中的圖,構(gòu)件圖,展示系統(tǒng)中的構(gòu)件,(,即來自應(yīng)用的軟件單元,),,構(gòu)件間通過接口的連接,以及構(gòu)件之間的依賴關(guān)系。,UML,中的圖,構(gòu)件圖,狀態(tài)圖,活動(dòng)圖,順序圖,協(xié)作圖,部署圖,包圖,UML
9、,中的圖,售票處,計(jì)劃,廣告,時(shí)間表,客戶記錄,票記錄,運(yùn)作,售票,工資單,計(jì)算,購(gòu)買,包圖,Logical View,Implementation View,Process View,Deployment View,Use Case View,用例視圖描述系統(tǒng)的外部特性、系統(tǒng)功能等。,實(shí)現(xiàn)視圖表示系統(tǒng)的實(shí)現(xiàn)特征,常用構(gòu)件圖。,進(jìn)程視圖表示系統(tǒng)內(nèi)部的控制機(jī)制。,類圖描述過程結(jié)構(gòu),交互圖描述過程行為。,配置視圖描述系統(tǒng)的物理配置特征。用配置圖表示。,UML,的視圖,設(shè)計(jì)視圖描述系統(tǒng)設(shè)計(jì)特征,,結(jié)構(gòu)模型視圖,-,系統(tǒng)靜態(tài)結(jié)構(gòu),行為模型視圖,-,系統(tǒng)動(dòng)態(tài)行為,UML,視圖和圖,主要領(lǐng)域,視圖,圖,結(jié)
10、構(gòu),靜態(tài)視圖,類圖,設(shè)計(jì)視圖,復(fù)合結(jié)構(gòu)圖、協(xié)作圖、構(gòu)件圖,用例視圖,用例圖,動(dòng)態(tài),狀態(tài)視圖,狀態(tài)機(jī)圖,活動(dòng)視圖,活動(dòng)圖,交互視圖,順序圖、通信圖,物理,部署視圖,部署圖,模型管理,模型管理視圖,包圖,特性描述,包圖,UML,圖形分類,開發(fā)過程,Build-and-Fix Model,既沒有規(guī)格說明,也沒有經(jīng)過設(shè)計(jì),,軟件隨著客戶的需要一次又一次地不斷被修改。,主要問題,缺少規(guī)劃和設(shè)計(jì)環(huán)節(jié),忽略需求環(huán)節(jié),高風(fēng)險(xiǎn);,沒有考慮測(cè)試和程序的可維護(hù)性,軟件開發(fā)過程,軟件開發(fā)過程,Software Life Cycle,waterfall model,強(qiáng)調(diào)文檔的作用,,每個(gè)階段都要仔細(xì)驗(yàn)證。,主要問題在于
11、,1,)各個(gè)階段的劃分完全固定,,產(chǎn)生大量的文檔;,2,)線性開發(fā)模型,,增加了開發(fā)的風(fēng)險(xiǎn);,軟件開發(fā)過程,原型法(,Prototyping,),Rapid Prototype Model,軟件開發(fā)過程,瀑布模型,(waterfall model),漸增模型,/,演化,/,迭代,(incremental model),原型模型,(prototype model),螺旋模型,(spiral model),噴泉模型,(fountain model),智能模型,(intelligent model),混合模型,(hybrid model/meta-model),軟件開發(fā)過程,Rational Unified Process,RUP,一個(gè)面向?qū)ο笄一诰W(wǎng)絡(luò)的程序開發(fā)方法論。,把開發(fā)中面向過程的方面和其他開發(fā)的組件,整合在一個(gè)統(tǒng)一的框架內(nèi)。,管理與技術(shù)相結(jié)合的二維方法,適合處理需求頻繁變動(dòng)的高風(fēng)險(xiǎn)項(xiàng)目,RUP,迭代開發(fā)模式,軟件生命周期,為,4,個(gè)順序的階段,初始階段、細(xì)化階段、構(gòu)造階段和交付階段。,9,個(gè)核心工作流,核心過程工作流,核心支持工作流,RUP,主要特點(diǎn),重量級(jí)的軟件方法,開發(fā)穩(wěn)定的框架,面向?qū)ο?用例驅(qū)動(dòng),螺旋上升的開發(fā)過程,以體系結(jié)構(gòu)為中心,以質(zhì)量控制和風(fēng)險(xiǎn)管理為目標(biāo),與,UML,結(jié)合,