第三部分UML基礎(chǔ)(第一章UML概述)_第1頁
第三部分UML基礎(chǔ)(第一章UML概述)_第2頁
第三部分UML基礎(chǔ)(第一章UML概述)_第3頁
第三部分UML基礎(chǔ)(第一章UML概述)_第4頁
第三部分UML基礎(chǔ)(第一章UML概述)_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第三部分UML基礎(chǔ)-第一章UML簡介1軟件技術(shù)基礎(chǔ)-PPT課件UML (統(tǒng)一建模語言Unified Modeling Language) 是一種建模語言,是第三代用來為面向?qū)ο箝_發(fā)系統(tǒng)的產(chǎn)品進行說明可視化和編制文檔的方法。它是由信息系統(tǒng)IS(Information System )和面向?qū)ο箢I(lǐng)域的三位著名的方法學(xué)家(Grady Booch James Rumbaugh和Ivar Jacobson 稱為三個好朋友the Three Amigos )提出的。2軟件技術(shù)基礎(chǔ)-PPT課件這種建模語言得到了UML 伙伴聯(lián)盟的應(yīng)用與反饋,并得到工業(yè)界的廣泛支持。由OMG 組織(Object Managem

2、ent Group) 采納作為業(yè)界標準,UML 取代目前軟件業(yè)眾多的分析和設(shè)計方法。這是軟件界的第一次有了一個統(tǒng)一的建模語言。3軟件技術(shù)基礎(chǔ)-PPT課件一、 UML的產(chǎn)生和成長 從二十世紀八十年代初期開始眾多的方法學(xué)家都在嘗試用不同的方法進行面向?qū)ο蟮姆治雠c設(shè)計。有少數(shù)幾種方法開始在一些關(guān)鍵性的項目中發(fā)揮作用包括Booch、OMT、Shlaer、Mellor、Odell/Martin、RDD、OBA和Objectory到了二十世紀九十年代中期,出現(xiàn)了第二代面向?qū)ο蠓椒?。著名的有Booch94、OMT的沿續(xù)以及Fusion等。此時面向?qū)ο蠓椒ㄒ呀?jīng)成為軟件分析和設(shè)計方法的主流。這些方法所做的最重要

3、的嘗試是,在程序設(shè)計藝術(shù)與計算機科學(xué)之間,尋求合理的平衡來進行復(fù)雜軟件的開發(fā)。4軟件技術(shù)基礎(chǔ)-PPT課件 由于Booch和OMT方法都已經(jīng)獨自成功地發(fā)展成為世界上主要的面向?qū)ο蠓椒ǎ虼薐im Rumbaugh和Grady Booch在1994年10月,共同合作把他們的工作統(tǒng)一起來。到1995年,成為統(tǒng)一方法Unified Method版本0.8。隨后Ivar Jacobson加入,并采用他的用例use case思想。到1996年成為統(tǒng)一建模語言版本0.9。1997年1月,UML版本1.0被提交給OMG組織,作為軟件建模語言標準化的候選。其后的半年多時間里,一些重要的軟件開發(fā)商和系統(tǒng)集成商都成

4、為UML伙伴,如Mircrosoft、IBM、HP等,它們積極地使用UML,并提出反饋意見,最后于1997年9月再次提交給OMG組織。于1997年11月7日,正式被OMG采納作為業(yè)界標準。5軟件技術(shù)基礎(chǔ)-PPT課件6軟件技術(shù)基礎(chǔ)-PPT課件二、什么是UMLUML 是一種標準的圖形化建模語言,它是面向?qū)ο蠓治雠c設(shè)計的一種標準表示。UML:不是一種可視化的程序設(shè)計語言,而是一種可視化的建模語言不是工具或知識庫的規(guī)格說明,而是一種建模語言規(guī)格說明,是一種表示的標準不是過程也不是方法,但允許任何一種過程和方法使用它7軟件技術(shù)基礎(chǔ)-PPT課件UML 的目標是易于使用表達能力強進行可視化建模與具體的實現(xiàn)無

5、關(guān),可應(yīng)用于任何語言平臺和工具平臺與具體的過程無關(guān),可應(yīng)用于任何軟件開發(fā)的過程簡單并且可擴展,具有擴展和專有化機制,便于擴展,無需對核心概念進行修改為面向?qū)ο蟮脑O(shè)計與開發(fā)中涌現(xiàn)出的高級概念,例如協(xié)作框架模式和組件提供支持,強調(diào)在軟件開發(fā)中對架構(gòu)框架模式和組件的重用與最好的軟件工程實踐經(jīng)驗集成可升級具有廣闊的適用性和可用性有利于面對對象工具的市場成長8軟件技術(shù)基礎(chǔ)-PPT課件1、UML 的架構(gòu)UML 是由圖和元模型組成的,圖是UML 的語法,而元模型則給出的圖的意思是UML 的語義。UML 的語義是定義在一個四層或四個抽象級建模概念框架中的。元元模型層元模型層模型層用戶模型層9軟件技術(shù)基礎(chǔ)-PP

6、T課件元元模型(meta-meta model )層:組成UML 最基本的元素:事物(Thing)代表要定義的所有事物元模型(meta model )層:組成了UML 的基本元素包括面向?qū)ο蠛兔嫦蚪M件的概念。這一層的每個概念都是元元模型中事物概念的實例。10軟件技術(shù)基礎(chǔ)-PPT課件模型model 層:組成了UML 的模型。這一層中的每個概念都是元模型層中概念的一個實例。這一層的模型通常叫做類模型class model 或類型模型type model用戶模型user model 層:這層中的所有元素都是UML 模型的例子,這一層的模型通常叫做對象模型object model 或?qū)嵗P蚷nsta

7、nce model11軟件技術(shù)基礎(chǔ)-PPT課件2、 UML 的模型、視圖、圖與系統(tǒng)架構(gòu)建模UML是用來描述模型的。它用模型來描述系統(tǒng)的結(jié)構(gòu)或靜態(tài)特征以及行為或動態(tài)特征。它從不同的視角為系統(tǒng)的架構(gòu)建模,形成系統(tǒng)的不同視圖view。12軟件技術(shù)基礎(chǔ)-PPT課件這些視圖view包括:用例視圖use case view:強調(diào)從用戶的角度看到的或需要的系統(tǒng)功能。這種視圖也叫做用戶模型視圖user model view或想定視圖scenario view;邏輯視圖logical view:展現(xiàn)系統(tǒng)的靜態(tài)或結(jié)構(gòu)組成及特征,也稱為結(jié)構(gòu)模型視圖structural model view或靜態(tài)視圖static v

8、iew;13軟件技術(shù)基礎(chǔ)-PPT課件并發(fā)視圖concurrent view:體現(xiàn)了系統(tǒng)的動態(tài)或行為特征,也稱為行為模型視圖behavioral model view、過程視圖process view、協(xié)作視圖collaborative、動態(tài)視圖dynamic view;組件視圖component view:體現(xiàn)了系統(tǒng)實現(xiàn)的結(jié)構(gòu)和行為特征,也稱為實現(xiàn)模型視圖implementation model view和開發(fā)視圖development view;14軟件技術(shù)基礎(chǔ)-PPT課件展開視圖deployment view:體現(xiàn)了系統(tǒng)實現(xiàn)環(huán)境的結(jié)構(gòu)和行為特征,也稱為環(huán)境模型視圖implementatio

9、n model view或物理視圖physical view。必要時,還可以定義其它架構(gòu)視圖。每一種UML的視圖都是由一個或多個圖diagram組成的。一個圖就是系統(tǒng)架構(gòu)在某個側(cè)面的表示,它與其它圖是一致的。所有的圖一起組成了系統(tǒng)的完整視圖15軟件技術(shù)基礎(chǔ)-PPT課件 UML提供了九種不同的圖,可以分成兩大類:一類是靜態(tài)圖:包括用例圖、類圖、對象圖、組件圖、配置圖;另一類是動態(tài)圖:包括序列圖、協(xié)作圖、狀態(tài)圖和活動圖也可以根據(jù)它們在不同架構(gòu)視圖的應(yīng)用把它們分成:16軟件技術(shù)基礎(chǔ)-PPT課件在用戶模型視圖:用例圖Use case diagram:描述系統(tǒng)的功能在結(jié)構(gòu)模型視圖:類圖Class dia

10、gram:描述系統(tǒng)的靜態(tài)結(jié)構(gòu)對象圖Object diagram:描述系統(tǒng)在某個時刻的靜態(tài)結(jié)構(gòu)17軟件技術(shù)基礎(chǔ)-PPT課件在行為模型視圖:序列圖Sequence diagram:按時間順序描述系統(tǒng)元素間的交互協(xié)作圖Collaboration diagram:按照時間和空間的順序,描述系統(tǒng)元素間的交互,和它們之間的關(guān)系狀態(tài)圖State diagram:描述了系統(tǒng)元素的狀態(tài)條件和響應(yīng)活動圖Activity diagram:描述了系統(tǒng)元素的活動18軟件技術(shù)基礎(chǔ)-PPT課件在實現(xiàn)模型視圖:組件圖Component diagram:描述了實現(xiàn)系統(tǒng)的元素的組織在環(huán)境模型視圖:展開圖Deployment di

11、agram:描述了環(huán)境元素的配置并把實現(xiàn)系統(tǒng)的元素映射到配置上19軟件技術(shù)基礎(chǔ)-PPT課件三、 UML與面向?qū)ο蟮能浖治雠c設(shè)計OOA&DUML是一種建模語言,是一種標準的表示,而不是一種方法或方法學(xué)。方法是一種把人的思考和行動結(jié)構(gòu)化的明確方式。方法需要定義軟件開發(fā)的步驟,告訴人們做什么,如何做,什么時候做以及為什么要這么做UML只定義了一些圖以及它們的意義。它的思想是與方法無關(guān)。20軟件技術(shù)基礎(chǔ)-PPT課件1、標準的表示方法人們用各種方法來使用UML,而無論方法如何變化,它們的基礎(chǔ)是UML的圖。這就是UML的最終用途為不同領(lǐng)域的人們提供統(tǒng)一的交流標準。軟件開發(fā)的難點在于:一個項目的參與包括領(lǐng)

12、域?qū)<?、軟件設(shè)計開發(fā)人員、客戶,以及用戶他們之間交流的難題,成為軟件開發(fā)的最大難題。21軟件技術(shù)基礎(chǔ)-PPT課件UML 的重要性在于:表示方法的標準化。這可以:有效地促進了不同背景人們的交流;有效地促進軟件設(shè)計、開發(fā)和測試人員的相互理解;無論分析、設(shè)計和開發(fā)人員采取何種不同的方法或過程,他們提交的設(shè)計產(chǎn)品都是用UML 來描述的,這有利地促進了相互的理解。22軟件技術(shù)基礎(chǔ)-PPT課件2、與軟件開發(fā)的成功經(jīng)驗集成UML 盡可能地結(jié)合了世界范圍內(nèi)面向?qū)ο箜椖康某晒?jīng)驗,因而它的價值在于:它體現(xiàn)了世界上面向?qū)ο蠓椒▽嵺`的最好經(jīng)驗,并以建模語言的形式把它們打包,以適應(yīng)開發(fā)大型復(fù)雜系統(tǒng)的要求。23軟件技術(shù)

13、基礎(chǔ)-PPT課件在眾多成功的軟件設(shè)計與實現(xiàn)的經(jīng)驗中,最突出的兩條,一是:注重系統(tǒng)架構(gòu)的開發(fā)一是:注重過程的迭代和遞增性盡管UML 本身對過程沒有任何定義,但UML 對任何使用它的方法或過程提出的要求,是支持用例驅(qū)動use-case driven 、以架構(gòu)為中心architecture-centric 以及遞增incremental 和迭代iterative 地開發(fā)。24軟件技術(shù)基礎(chǔ)-PPT課件注重架構(gòu)意味著:不僅要編寫出大量的類和算法還要設(shè)計出這些類和算法之間簡單而有效地協(xié)作所有高質(zhì)量的軟件中,似乎大量是這類的協(xié)作。而近年出現(xiàn)的軟件設(shè)計模式也正在為這些協(xié)作起名和分類,使它們更易于重用。最好的架

14、構(gòu)就是概念集成conceptual integrity ,它驅(qū)動整個項目注重開發(fā)模式,并力圖使它們簡單。25軟件技術(shù)基礎(chǔ)-PPT課件迭代和遞增的開發(fā)過程,反映了項目開發(fā)的節(jié)奏。不成功的項目沒有進度節(jié)奏,因為它們總是機會主義的,在工作中是被動的;成功的項目有自己的進度節(jié)奏,反映在它們有一個定期的版本發(fā)布過程,注重于對系統(tǒng)架構(gòu)進行持續(xù)的改進。26軟件技術(shù)基礎(chǔ)-PPT課件四、UML 的應(yīng)用領(lǐng)域UML 被用來為系統(tǒng)建模,它可應(yīng)用的范圍非常廣泛:可以描述許多類型的系統(tǒng)它也可以用在系統(tǒng)開發(fā)的不同階段,從需求規(guī)格說明到對已完成系統(tǒng)的測試。27軟件技術(shù)基礎(chǔ)-PPT課件1、在不同類型系統(tǒng)中的應(yīng)用UML 的目標是

15、:用面向?qū)ο蟮姆绞矫枋鋈魏晤愋偷南到y(tǒng)。其中最直接的是,用UML 為軟件系統(tǒng)創(chuàng)建模型。但UML 也可用來描述其它非計算機軟件的系統(tǒng),或者是商業(yè)機構(gòu)或過程。28軟件技術(shù)基礎(chǔ)-PPT課件信息系統(tǒng)Information System:向用戶提供信息的儲存、檢索、轉(zhuǎn)換和提交。處理存放在關(guān)系或?qū)ο髷?shù)據(jù)庫中大量具有復(fù)雜關(guān)系的數(shù)據(jù)。技術(shù)系統(tǒng)Technical System:處理和控制技術(shù)設(shè)備如:電信設(shè)備、軍事系統(tǒng)或工業(yè)過程。它們必須處理設(shè)計的特殊接口,標準軟件很少。技術(shù)系統(tǒng)通常是實時系統(tǒng)。29軟件技術(shù)基礎(chǔ)-PPT課件嵌入式實時系統(tǒng)Embedded Real-Time System:在嵌入到其它設(shè)備如移動電話、

16、汽車、家電上的硬件上,執(zhí)行的系統(tǒng)。通常是通過低級程序設(shè)計進行的需要實時支持分布式系統(tǒng)Distributed System:分布在一組機器上運行的系統(tǒng)。數(shù)據(jù)很容易從一個機器傳送到另一臺機器上,需要同步通信機制來確保數(shù)據(jù)完整性。30軟件技術(shù)基礎(chǔ)-PPT課件系統(tǒng)軟件System Software:定義了其它軟件使用的技術(shù)基礎(chǔ)設(shè)施。操作系統(tǒng)、數(shù)據(jù)庫和在硬件上完成底層操作的用戶接口等,同時提供一般接口供其它軟件使用。商業(yè)系統(tǒng)Business System:描述目標、資源(人、計算機等)規(guī)則(法規(guī)、商業(yè)策略、政策等)和商業(yè)中的實際工作(商業(yè)過程)。31軟件技術(shù)基礎(chǔ)-PPT課件UML 具有描述以上這些類型的

17、系統(tǒng)的能力。通常大多數(shù)系統(tǒng)都不是單純屬于上面的某一種系統(tǒng),而是一種或多種系統(tǒng)的結(jié)合。例如現(xiàn)在許多信息系統(tǒng)都有分布式和實時的需要。使用面向?qū)ο蠼UZ言,為過程建模和編制文檔,使過程易于使用。32軟件技術(shù)基礎(chǔ)-PPT課件2、在軟件開發(fā)的不同階段中的應(yīng)用UML 的應(yīng)用貫穿在系統(tǒng)開發(fā)的五個階段:需求分析:UML 的用例視圖可以表示客戶的需求。通過用例建模,可以對外部的角色以及它們所需要的系統(tǒng)功能建模。每個用例都指定了客戶的需求:他或她需求系統(tǒng)干什么。33軟件技術(shù)基礎(chǔ)-PPT課件系統(tǒng)分析:分析階段主要考慮所要解決的問題??捎肬ML 的邏輯視圖和動態(tài)視圖來描述。類圖,對象圖描述系統(tǒng)的靜態(tài)結(jié)構(gòu)協(xié)作圖、狀態(tài)圖、序列圖、活動圖描述系統(tǒng)的動態(tài)特征在分析階段只為問題領(lǐng)域的類建模,不定義軟件系統(tǒng)的解決方案的細節(jié)如:用戶接口的類、數(shù)據(jù)庫等34軟件技術(shù)基礎(chǔ)-PPT課件系統(tǒng)設(shè)計:在設(shè)計階段把分析階段的結(jié)果擴展成技術(shù)解決方案。加入新的類來提供技術(shù)基礎(chǔ)結(jié)構(gòu)用戶接口、數(shù)據(jù)庫操作等。分析階段的領(lǐng)域問題類被嵌入在這個技術(shù)基礎(chǔ)結(jié)構(gòu)中。設(shè)計階段的結(jié)果是構(gòu)造階段的詳細的規(guī)格說明。35軟件技術(shù)基礎(chǔ)-PPT課件系統(tǒng)構(gòu)造:在構(gòu)造或程序設(shè)計階段,把設(shè)計階段的類轉(zhuǎn)換成某種面向?qū)ο蟪绦蛟O(shè)計語言的代碼。在對UML 表示的分析和設(shè)計模型進行轉(zhuǎn)換時,最好不要直接把模型轉(zhuǎn)化成代碼,因為在早期階段,模型是理解系統(tǒng),并對系統(tǒng)進行結(jié)構(gòu)化的手段。3

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論