版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、UML基礎(chǔ)與Rose建模案例,主講:王曉輝,參考書及網(wǎng)站,參考書: UML with Rational Rose從入門到精通(入門) UML參考手冊(精通) UML面向?qū)ο笤O(shè)計基礎(chǔ) UML Programming Guide設(shè)計核心技術(shù) 參考網(wǎng)站(中文): http:/www. ,第一章 軟件工程與UML概述,一、軟件工程概述 二、UML語言概述 三、UML的應(yīng)用領(lǐng)域,軟件開發(fā)是一套關(guān)于軟件開發(fā)各階段的定義、任務(wù)、作用的,建立在理論上的一門工程學(xué)科。它對解決軟件危機,指導(dǎo)人們利用科學(xué)、有效的方法來開發(fā)軟件,提高及保證軟件開發(fā)的效率和質(zhì)量起到了一定的作用。 經(jīng)典的軟件工程思想將軟件開發(fā)分成以下5
2、個階段:需求分析(Requirements Capture)階段、系統(tǒng)分析與設(shè)計(System Analysis and Design)階段、系統(tǒng)實現(xiàn)(Implementation)階段、測試(Testing)階段和維護(Maintenance)階段。,一、軟件工程概述,模型是對現(xiàn)實的簡化,常見的模型,生活相關(guān):氣象圖、道路交通圖、交通標(biāo)志 展示相關(guān):建筑物模型、沙盤、公司總部的3D復(fù)制品 數(shù)據(jù)分析相關(guān):條形圖、餅狀圖 業(yè)務(wù)分析相關(guān):組織結(jié)構(gòu)圖、跨職能流程圖 設(shè)計相關(guān):建筑平面圖、管線圖、電路板設(shè)計圖,誰應(yīng)該建模,業(yè)務(wù)建模:以領(lǐng)域?qū)<覟橹?,需求分析人員是主力,系統(tǒng)分析員、架構(gòu)師可參與 需求模型
3、:以需求分析人員為主,系統(tǒng)分析員是主力,領(lǐng)域?qū)<姨峁┲笇?dǎo),架構(gòu)師和資深開發(fā)人員參與 設(shè)計模型:高層設(shè)計模型以架構(gòu)師為主,系統(tǒng)分析員從需求方面提供支持,資深開發(fā)人員從技術(shù)實現(xiàn)方面提供支持。詳細(xì)設(shè)計模型則以資深開發(fā)人員為主,架構(gòu)師提供指導(dǎo)。 實現(xiàn)模型:以資深開發(fā)人員(設(shè)計人員)為主,架構(gòu)師提供總體指導(dǎo)。 數(shù)據(jù)庫模型:以數(shù)據(jù)庫開發(fā)人員為主,架構(gòu)師提供指導(dǎo),資深開發(fā)人員(設(shè)計人員)予以配合。,1 建模的重要性,模型:為理解事物而對事物作出的一種抽象,是對事物規(guī)范、無歧異描述的一種工具。常見模型有數(shù)學(xué)模型、描述模型和圖形模型。模型的實質(zhì):對現(xiàn)實的簡化。 建模的用途與作用:建模是為軟件開發(fā)服務(wù)的。建模的使
4、用是軟件成功的一個基本因素,建模的最主要作用就是進行交流。 精確捕獲和表達項目的需求與應(yīng)用領(lǐng)域的知識,以使各方面的利益相關(guān)者能夠理解并達成一致。 便于用戶和各個領(lǐng)域的專家審查 降低復(fù)雜度提高開發(fā)效率和質(zhì)量 模型可以作為軟件系統(tǒng)維護和升級時的文檔,2 建模四原則,準(zhǔn)確原則:模型必須反映真實情況。選擇建立什么樣的模型對如何發(fā)現(xiàn)和解決問題具有重要的影響。 分層原則:必須有不同的模型以不同的抽象程度反映系統(tǒng)不同的側(cè)面。 分治原則:軟件系統(tǒng)是復(fù)雜的,對于軟件模型的任意一個側(cè)面,不可能用一個模型來反映所有整個系統(tǒng)的任何側(cè)面。 標(biāo)準(zhǔn)原則:模型必須在某種程度上是通用的。,3 面向?qū)ο蠼?兩種最常用的建模方法
5、:基于算法的,如下圖1和面向?qū)ο蟮娜鐖D2。 隨著需求的變化和系統(tǒng)的增長,運用基于算法的建模方法建立起來的系統(tǒng)很難維護。,圖1,圖2,在面向?qū)ο蟮慕7椒ㄖ?,主要的模塊是對象或類。 在開發(fā)早期就定義了一系列面向問題域的對象,即建立了一個對象模型。在整個開發(fā)過程統(tǒng)一使用了這些對象,并不斷地充實和擴充對象模型。 所有其他概念,如屬性、關(guān)系、事件、操作等也圍繞對象模型組成的,使用統(tǒng)一的概念和描述符號,分析階段得到的模型也適用于設(shè)計階段和實現(xiàn)階段。因此軟件生命周期個階段區(qū)分不明顯,整個開放過程是無縫連接的。 面向?qū)ο筌浖_發(fā)特點:開發(fā)階段界限模糊,開發(fā)過程逐步求精,開發(fā)過程反復(fù)迭代。,二、 UML語言概
6、述,1.UML的歷史 UML:統(tǒng)一建模語言Unified Modeling Language UML是一種總結(jié)了以往建模技術(shù)的經(jīng)驗并吸收了當(dāng)今優(yōu)秀成果的標(biāo)準(zhǔn)建模技術(shù),利用UML表達的軟件模型,可以直接和某種設(shè)計語言建立映射關(guān)系,通過UML建造工具將UML模型轉(zhuǎn)換為對應(yīng)的程序設(shè)計語言的代碼框架。 面向?qū)ο蟮姆治雠c設(shè)計(OOA&D)方法的發(fā)展在20世紀(jì)80年代末至20世紀(jì)90年代中出現(xiàn)了一個高潮,UML是這個高潮的產(chǎn)物。它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且對其做了進一步的發(fā)展,并最終統(tǒng)一為大眾所接受的標(biāo)準(zhǔn)建模語言。,3位世界級面向?qū)ο蠹夹g(shù)大師,Grady Bo
7、och,James Rumbaugh,Ivar Jacobson,UML已經(jīng)迅速成長為一個事實上的工業(yè)標(biāo)準(zhǔn)。,1.UML的歷史,不論在計算機學(xué)術(shù)界、軟件產(chǎn)業(yè)界還是在商業(yè)界,UML已經(jīng)逐漸成為人們?yōu)楦鞣N系統(tǒng)建模、描述系統(tǒng)體系結(jié)構(gòu)、商業(yè)體系結(jié)構(gòu)和商業(yè)過程時使用的統(tǒng)一工具,而且在實踐過程中人們還在不斷擴展它的應(yīng)用領(lǐng)域。,UML形成,UML的定義包括UML語義和UML表示法兩個部分。 UML語義:描述UML的精確元模型定義。 元模型:UML的所有元素在語法和語義上提供了簡單的、一致的和通用的定義說明,使開發(fā)者在語義上取得一致,消除了因人而異的表達方式造成的影響。,2.UML包含的內(nèi)容,UML表示法:為
8、開發(fā)者或者開發(fā)工具使用這些圖形符號和文本語法建立提供的標(biāo)準(zhǔn)。圖形符號和文本所表達的是應(yīng)用級的模型,在語義上是UML元模型的實例。 如:UML由 視圖(view) 圖(diagram) 模型元素(model element) 通用機制(general mechanism)等幾個部分組成。 這些就是UML的表示法。,3.UML的定義 UML(Unified Modeling Language)統(tǒng)一建模語言,是一種面向?qū)ο蟮慕UZ言。 它的主要作用是幫助用戶對軟件系統(tǒng)進行面向?qū)ο蟮拿枋龊徒#ńJ峭ㄟ^將用戶的業(yè)務(wù)需求映射為代碼,保證代碼滿足這些需求,并能方便地回溯需求的過程),它可以描述這個軟件開
9、發(fā)過程從需求分析直到實現(xiàn)和測試的全過程。 UML通過建立各種聯(lián)系如類與類之間的關(guān)系、類/對象怎樣相互配合實現(xiàn)系統(tǒng)的行為狀態(tài)(模型元素)來組建整個結(jié)構(gòu)模型。 UML包含各種圖形,把這些圖形元素及其關(guān)系可視化,讓人們可以清楚容易的理解模型。,3.1 UML的組成 UML由視圖(View)、圖(Diagram)、模型元素(Model Element)和通用機制(General Mechanism)等部分組成。 1.視圖:為了完整地描述一個系統(tǒng),往往需要描述該系統(tǒng)的許多方面。視圖可以表示被建模系統(tǒng)的各個方面,即從不同角度為系統(tǒng)建立多個模型,這些模型都描述同一個系統(tǒng),僅描述的角度不同,相互間具有一致性。
10、從某一個角度觀察到的系統(tǒng),稱為一個視圖。 包括五類視圖: 用例視圖 邏輯視圖 并發(fā)視圖 組件視圖 配置視圖,用例視圖(use case view),是整個系統(tǒng)的核心,強調(diào)從用戶的角度看到的或需要的系統(tǒng)功能,是被稱為參與者的外部用戶所能觀察到的系統(tǒng)功能的模型圖; 邏輯視圖(logical view),展現(xiàn)系統(tǒng)的靜態(tài)或結(jié)構(gòu)組成及特征,也稱為結(jié)構(gòu)模型視圖(structural model view)或靜態(tài)視圖(static view); 并發(fā)視圖(concurrent view),體現(xiàn)了系統(tǒng)的動態(tài)或行為特征,也稱為行為模型視圖(behavioral model view)、動態(tài)視圖(dynamic
11、view); 組件視圖(component view),體現(xiàn)了系統(tǒng)實現(xiàn)的結(jié)構(gòu)和行為特征,也稱為實現(xiàn)模型視圖(implementation model view) ; 配置視圖(deployment view),體現(xiàn)了系統(tǒng)實現(xiàn)環(huán)境的結(jié)構(gòu)和行為特征,也稱為環(huán)境模型視圖(environment model view)或物理視圖(physical view)。,UML的視圖模型,Use case View描述系統(tǒng)的外部特性、系統(tǒng)功能等。,Implementation View 表示系統(tǒng)的實現(xiàn)特征,常用構(gòu)件圖表示。,Design View 描述系統(tǒng)設(shè)計特征,包括結(jié)構(gòu)模型視圖和行為模型視圖,前者描述系統(tǒng)的
12、靜態(tài)結(jié)構(gòu)(類圖、對象圖),后者描述系統(tǒng)的動態(tài)行為(交互圖、狀態(tài)圖、活動圖)。,Process View 表示系統(tǒng)內(nèi)部的控制機制。常用類圖描述過程結(jié)構(gòu),用交互圖描述過程行為。,Deployment View 配置視圖描述系統(tǒng)的物理配置特征。用配置圖表示。,UML常用視圖,2.圖:圖是用來表達一個視圖的內(nèi)容的,通常,一個視圖由多張圖組成。UML語言共定義了9種不同的圖,把它們有機地結(jié)合起來就可以描述系統(tǒng)的所有視圖。 分別是:用例圖、類圖、對象圖、時序圖、協(xié)作圖、狀態(tài)圖、活動圖、組件圖和配置圖。 根據(jù)它們不同的架構(gòu)視圖的應(yīng)用,把9種圖分成以下5類: 用戶模型視圖:用例圖 結(jié)構(gòu)模型視圖:類圖和對象圖
13、行為模型視圖:時序圖、協(xié)作圖、狀態(tài)圖和活動圖 實現(xiàn)模型視圖:組件圖 環(huán)境模型視圖:配置圖,第一類:用戶模型視圖:包括用例圖(Use Case Diagram),從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。,UML可以由下列5類圖來定義(以ATM為例),類圖:描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu),不僅定義類,表示類之間的聯(lián)系還包括內(nèi)部結(jié)構(gòu)(類的屬性和操作)如下圖 。 對象圖:是類圖的實例, 使用與類圖完全相同的標(biāo) 識 包圖:由包或類組成, 表示包與包之間關(guān)系,用 于描述系統(tǒng)的分層結(jié)構(gòu)。,第二類:結(jié)構(gòu)模型視圖:靜態(tài)圖(Static diagram)包括類圖、對象圖和包圖。,第三類:行為模型視圖 (1)行為圖(
14、Behavior diagram),描述系統(tǒng) 動態(tài)模型和組成對象間的交互關(guān)系,包括狀態(tài)圖和活動圖。 狀態(tài)圖:描述對象所 有可能的狀態(tài)以及事 件發(fā)生時狀態(tài)的轉(zhuǎn)移 條件。如下圖: 活動圖: 描述滿足用例要求所 要進行的活動及活動 間的約束關(guān)系,(2).交互圖(Interactive diagram),描述對象 間的交互關(guān)系,包括 時序圖和協(xié)作圖。 時序圖:顯示對象間 的動態(tài)合作關(guān)系,強 調(diào)對象間消息發(fā)送順 序及交互,協(xié)作圖:除交換信息外,還顯示對象及其關(guān)系(上下級)。不強調(diào)時序,組件圖:描述代碼部件的物理結(jié)構(gòu)及各組件間的依賴關(guān)系、相互影響程度,第四類: 實現(xiàn)模型視圖: (Implementatio
15、n diagram),包括組件圖,第五類: 環(huán)境模型視圖:包括配置圖。 配置圖:定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。,3.模型元素:可以在圖中使用的概念(例如,用例、類、對象、消息和關(guān)系),統(tǒng)稱為模型元素。模型元素在圖中用相應(yīng)的視圖元素(圖形符號)表示。一個模型元素可以用在多個不同的圖中,不管怎樣使用,它總是具有相同的含義和相同的符號表示。,4.通用機制: UML語言利用通用機制為圖附加一些額外的信息,比如,可以在“筆記”中書寫注釋,或用“標(biāo)簽值”說明模型元素的性質(zhì)等。此外,它還提供擴展機制(例如,版類、標(biāo)簽值、約束),使UML能夠適應(yīng)一種特殊方法或滿足某些特殊用戶的需要。,UML組成,1.結(jié)構(gòu)元
16、素(類,接口,協(xié)作,用例,對象,構(gòu)件,節(jié)點等) 2.行為元素(交互,狀態(tài)機) 3.分組元素(包) 4.注解元素,1.關(guān)聯(lián) 2.依賴 3.泛化 4.實現(xiàn),1.靜態(tài)模型(類圖,構(gòu)件圖,部署圖) 2.動態(tài)模型(對象圖,用例圖,順序圖,協(xié)作圖,狀態(tài)圖,活動圖),UML的內(nèi)容結(jié)構(gòu),3.2 UML的建模機制 UML有兩套建模機制:靜態(tài)建模機制和動態(tài)建模機制。 靜態(tài)建模機制包括用例圖(Use Case Diagram)、類圖(Class Diagram)、對象圖(Object Diagram)、包(Package)、組件圖(Component Diagram)和配置圖(Deployment Diagram)
17、。 系統(tǒng)中的對象在執(zhí)行期間的不同時間點如何通信以及通信的結(jié)果如何,就是系統(tǒng)的動態(tài)行為,即對象通過通信相互協(xié)作的方式以及系統(tǒng)中的對象在系統(tǒng)生命期中改變狀態(tài)的方式,是系統(tǒng)的動態(tài)行為。動態(tài)建模機制包括消息(Message)、狀態(tài)圖(State Diagram)、時序圖(Sequence Diagram)、協(xié)作圖(Collaboration Diagram)和活動圖(Activity Diagram)。,UML的特點,(1) 統(tǒng)一標(biāo)準(zhǔn):統(tǒng)一了Booch、OMT和OOSE等方法中的基本概念,已成為OMG的正式標(biāo)準(zhǔn),提供了標(biāo)準(zhǔn)的面向?qū)ο蟮哪P驮氐亩x和表示。 (2) 面向?qū)ο螅篣ML還吸取了面向?qū)ο蠹夹g(shù)
18、領(lǐng)域中其他流派的長處。UML符號表示考慮了各種方法的圖形表示,刪掉了大量易引起混亂的、多余的和極少使用的符號,也添加了一些新符號。 (3) 可視化、表示能力強:系統(tǒng)的邏輯模型或?qū)崿F(xiàn)模型都能用UML模型清晰的表示,可用于復(fù)雜軟件系統(tǒng)的建模。 (4) 獨立于過程:UML是系統(tǒng)建模語言,獨立于開發(fā)過程。 (5) 易掌握、易用:由于UML的概念明確,建模表示法簡潔明了,圖形結(jié)構(gòu)清晰,易于掌握使用。,面向?qū)ο蠓椒ㄔO(shè)計系統(tǒng)步驟,描述需求 根據(jù)需要建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu) 前2個步驟建立所建立的模型都是靜態(tài)的,包括用例圖、類圖(包含包)、對象圖、組件圖和配置圖,是UML的靜態(tài)建模機制。 描述系統(tǒng)的行為 這個步驟建立的模型或者可以執(zhí)行或者是表示執(zhí)行時的時序關(guān)系或交互關(guān)系。包括狀態(tài)圖、活動圖、時序圖、協(xié)作圖,是UML的動態(tài)建模機制。,4 UML的應(yīng)用領(lǐng)域,UML的目標(biāo)是以面向?qū)ο髨D的方式來描述任何類型的系統(tǒng)。其中最常用的是建立軟件系統(tǒng)的模型,也可以用于描述非軟件領(lǐng)域的系統(tǒng),如機械系統(tǒng)、企業(yè)機構(gòu)或業(yè)務(wù)過程,以及處理復(fù)雜數(shù)據(jù)的信息系統(tǒng)、具有實時要求的工業(yè)系統(tǒng)或工業(yè)過程等。 UML是一個通用的標(biāo)準(zhǔn)建模語言,可以對任何具有靜態(tài)結(jié)構(gòu)和動態(tài)行為的系統(tǒng)進行建模。 UML的最終用途為不同領(lǐng)域的人提供統(tǒng)一的交流方法。 UML適用于系統(tǒng)開
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 甘肅省天水市清水縣多校聯(lián)考2025-2026學(xué)年高一上學(xué)期1月期末考試地理試卷(含答案)
- 2026屆高三生物二輪復(fù)習(xí)課件:選擇題強化練 4.遺傳的基本規(guī)律與伴性遺傳
- 化工企業(yè)冬季培訓(xùn)課件
- 鋼結(jié)構(gòu)綠色制造技術(shù)應(yīng)用
- 飛機結(jié)構(gòu)專業(yè)知識課件
- 2026安徽合肥工業(yè)大學(xué)管理學(xué)院管理學(xué)院醫(yī)療機器人與智慧醫(yī)療健康管理團隊科研助理招聘3人備考考試試題及答案解析
- 2026新疆前海集團有限責(zé)任公司招聘1人備考考試試題及答案解析
- 2026年上半年黑龍江事業(yè)單位聯(lián)考哈爾濱市招聘592人參考考試題庫及答案解析
- 2026江蘇蘇州人才發(fā)展有限公司招聘2人(一)備考考試題庫及答案解析
- 2026四川通發(fā)廣進人力資源管理咨詢有限公司AI數(shù)據(jù)標(biāo)注員(第三批)招聘備考考試題庫及答案解析
- 重慶律師收費管理辦法
- 安慶四中學(xué)2024年七上數(shù)學(xué)期末考試試題含解析
- 黑洞與量子糾纏的熱力學(xué)研究-洞察闡釋
- 帶狀皰疹中醫(yī)病例討論
- 公安交警隊和車輛管理所標(biāo)識制作及設(shè)置規(guī)范
- 【高中數(shù)學(xué)競賽真題?強基計劃真題考前適應(yīng)性訓(xùn)練】 專題03三角函數(shù) 真題專項訓(xùn)練(全國競賽+強基計劃專用)原卷版
- DB33∕T 1152-2018 建筑工程建筑面積計算和竣工綜合測量技術(shù)規(guī)程
- SL631水利水電工程單元工程施工質(zhì)量驗收標(biāo)準(zhǔn)第1部分:土石方工程
- (二調(diào))武漢市2025屆高中畢業(yè)生二月調(diào)研考試 英語試卷(含標(biāo)準(zhǔn)答案)+聽力音頻
- 汽車修理廠輪胎采購 投標(biāo)方案(技術(shù)標(biāo) )
- 2023年7月浙江省普通高中學(xué)業(yè)水平考試(學(xué)考)化學(xué)試題
評論
0/150
提交評論