版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第3章UML簡介本章學習導航本章學習導航本章學習要點
UML的發(fā)展
UML的特點
UML的結構
UML的視圖
UML圖形符號
UML建?;玖鞒探ㄗh課時:8課時任務1
了解UML的基本概念,了解UML的發(fā)展歷程,理解UML的特點,并理解為什么選擇UML進行建模。
任務目標
分組教學法資料查詢法教學方法3.1.1UML的發(fā)展歷程二十世紀八十年代初期,開始了用不同的方法進行面向?qū)ο蟮姆治雠c設計。二十世紀九十年代中期,出現(xiàn)了第二代面向?qū)ο蠓椒?。GradyBooch和JamesRumbaugh在1994年10月共同合作把他們的工作統(tǒng)一起來,到1995年成為“統(tǒng)一方法(UnifiedMethod)”版本0.8。隨后,UM方法又吸納了IvarJacobson提出的用例(usecase)思想,到1996年,成為“統(tǒng)一建模語言”版本0.9。1997年1月,UML版本1.0被提交給OMG組織,作為軟件建模語言標準化的候選。發(fā)展歷程
UML(統(tǒng)一建模語言,UnifiedModelingLanguage)是一種建模語言,是第三代用來為面向?qū)ο笙到y(tǒng)的產(chǎn)品進行說明、可視化和編制文檔的方法。
UML的含義3.1.1UML的發(fā)展歷程3.1.1UML的發(fā)展歷程UML的版本及下載地址OMG官方發(fā)布的UML的當前最高版本為2.0,可以從http:///上下載;出于建模工具的選用,本書仍然采用UML1.4進行講解;2.1版沒有作為一個正式的版本獨立發(fā)布。3.1.1UML的發(fā)展歷程易于使用、表達能力強,進行可視化建模;與具體的實現(xiàn)無關,可應用于任何語言平臺和工具平臺;與具體的過程無關,可應用于任何軟件開發(fā)的過程;簡單并且可擴展,具有擴展和專有化機制,便于擴展,無需對核心概念進行修改;為面向?qū)ο蟮脑O計與開發(fā)中涌現(xiàn)出的高級概念提供支持,強調(diào)在軟件開發(fā)中對架構、框架、模式和組件的重用;與最好的軟件工程實踐經(jīng)驗集成;可升級,具有廣闊的適用性和可用性;有利于面對對象工具的市場成長。
UML的目標
UML不是一種可視化的程序設計語言,而是一種可視化的建模語言;UML不是工具或知識庫的規(guī)格說明,而是一種建模語言規(guī)格說明,是一種表示的標準;UML不是過程,也不是方法,但允許任何一種過程和方法使用它。理解UML3.1.2理解UML建模自1997年UML被OMG采納為面向?qū)ο蟮慕UZ言的國際標準以來,它不斷融入了軟件工程領域的新思想、新方法和新技術。UML不局限于支持面向?qū)ο蟮姆治雠c設計,還支持從需求分析開始的軟件開發(fā)的全過程。近年來,UML憑借其簡潔明晰的表達方式、超凡脫俗的表達能力,為業(yè)界所廣泛認同。目前,在多數(shù)軟件企業(yè)的正規(guī)化開發(fā)流程中,開發(fā)人員普遍使用UML進行模型的建立。作為一名軟件開發(fā)人員,我們必須學會UML,因為UML就象是統(tǒng)一的“文字”,統(tǒng)一的“度”、“量”、“衡”。
理解UML建模3.2UML的特點1.標準的表示方法
UML是一種建模語言,是一種標準的表示,而不是一種方法(或方法學)。2.與軟件開發(fā)的成功經(jīng)驗集成
UML和RUP在軟件開發(fā)過程中的“最佳拍檔”。3.UML的應用貫穿在系統(tǒng)開發(fā)的五個階段(1)需求分析(2)系統(tǒng)分析(3)系統(tǒng)設計(4)構造(5)測試UML的特點UML是一種建模語言,即軟件開發(fā)過程中各類人員交流和溝通的工具;RUP是一種軟件過程模型,是指導軟件開發(fā)過程的方法,詳見第11章;RationalRose是一種建模工具,完成UML模型繪制的一種工具課堂實踐1(1)比較UML和其他面向?qū)ο蟪绦蛟O計語言的區(qū)別。(2)理解UML和面向?qū)ο笏枷氲穆?lián)系。
操作提示(1)通過訪問OMG的官方網(wǎng)站http://,了解UML的發(fā)展歷程。(2)訪問http://,以小組的形式討論UML的基本特點。(3)收集UML的相關學習資源和學習網(wǎng)站。
操作要求任務2了解UML的基本事物及其特點,了解UML的關系,了解UML的視圖及其主要功能
。
任務目標分組教學法資料查詢法案例教學法教學方法3.3UML的結構
3.3.1UML的事物
(1)類(Class):類是指具有相同屬性、方法、關系和語義的對象的集合。(2)接口(Interface):接口是指類或組件所提供的服務(操作),描述了類或組件對外可見的動。(3)協(xié)作(Collaboration):協(xié)作描述合作完成某個特定任務的一組類及其關聯(lián)的集合,用于對使用情形的實現(xiàn)建模。(4)用例(UseCase):用例定義了參與者(在系統(tǒng)外部與系統(tǒng)交互的人或系統(tǒng))和被考慮的系統(tǒng)之間的交互來實現(xiàn)的一個業(yè)務目標。(5)活動類(ActiveClass):活動類的對象有一個或多個進程或線程?;顒宇惡皖惡芟嘞螅皇撬膶ο蟠淼脑氐男袨楹推渌脑厥峭瑫r存在的。(6)組件(Component):組件是物理的、可替換的部分,包含接口的集合,例如COM+、JavaBean等。(7)結點(Node):結點是系統(tǒng)在運行時存在的物理元素,代表一個可計算的資源,通常占用一些內(nèi)存和具有處理能力。
1-結構事物3.3.1UML的事物
行為事物指的是UML模型中的動態(tài)部分,代表語句里的“動詞”,表示模型里隨著時空不斷變化的部分,包含兩類:(1)交互(Interaction):交互是由一組對象之間在特定上下文中,為達到特定的目的而進行的一系列消息交換而組成的動作。(2)狀態(tài)機(StateMachine):狀態(tài)機由一系列對象的狀態(tài)組成。
2-行為事物可以把分組事物看成是一個“盒子”,模型可以在其中被分解。目前只有一種分組事物,即包(Package)。結構事物、動作事物甚至分組事物都有可能放在一個包中。包純粹是概念上的,只存在于開發(fā)階段。
3-分組事物注釋事物是UML模型的解釋部分。4-注釋事物3.3.2UML的關系
UML的關系是將UML的事物聯(lián)系在一起的方式,UML中定義了四種關系:(1)依賴關系(Dependency):兩個事物之間的語義關系,其中一個事物發(fā)生變化會影響另一個事物的語義。(2)關聯(lián)關系(Association):一種描述一組對象之間連接的結構關系,如聚合關系就描述了整體和部分間的結構關系。(3)泛化關系(Generalization):一種一般化和特殊化的關系。(4)實現(xiàn)關系(Realization):類之間的語義關系,其中的一個類指定了由另一個類保證執(zhí)行的契約。
UML的關系3.4UML的視圖
描述一個系統(tǒng)涉及到的許多方面,比如:功能性方面(它包括靜態(tài)結構和動態(tài)交互)、非功能性方面(定時需求、可靠性、展開性等)和組織管理方面(工作組、映射代碼模塊等)。完整地描述系統(tǒng),通常的做法是用一組視圖反映系統(tǒng)的各個方面,每個視圖代表完整系統(tǒng)描述中的一個抽象,顯示這個系統(tǒng)中的一個特定的方面。
4+1視圖模型3.4.1用例視圖
用例視圖用于描述系統(tǒng)應該具有的功能集。用例視圖是從系統(tǒng)的外部用戶角度出發(fā),對系統(tǒng)的抽象表示。用例視圖所描述的系統(tǒng)功能依靠于外部用戶或由另一個系統(tǒng)觸發(fā)激活,為用戶或另一個系統(tǒng)提供服務,實現(xiàn)用戶或另一個系統(tǒng)與系統(tǒng)的交互。系統(tǒng)實現(xiàn)的最終目標是提供用例視圖中描述的功能。用例視圖中可以包含若干個用例,用例用來表示系統(tǒng)能夠提供的功能(系統(tǒng)用法),一個用例是系統(tǒng)用法(功能請求)的一個通用描述。用例視圖是其他四個視圖的核心和基礎。
用例視圖3.4.2邏輯視圖
邏輯視圖可以揭示系統(tǒng)內(nèi)部的設計和協(xié)作狀況。邏輯視圖用來顯示系統(tǒng)內(nèi)部的功能是怎樣設計的,它利用系統(tǒng)的靜態(tài)結構和動態(tài)行為來刻畫系統(tǒng)功能。靜態(tài)結構描述類、對象和它們之間的關系等。動態(tài)行為主要描述對象之間的動態(tài)協(xié)作,當對象之間彼此發(fā)送消息給給定的函數(shù)時產(chǎn)生動態(tài)協(xié)作、一致性和并發(fā)性等性質(zhì),以及接口和類的內(nèi)部結構都要在邏輯視圖中定義。在UML中,靜態(tài)結構由類圖和對象圖進行描述,動態(tài)行為用狀態(tài)圖、順序圖、協(xié)作圖和活動圖描述。
邏輯視圖3.4.3并發(fā)視圖
并發(fā)視圖用來顯示系統(tǒng)的并發(fā)工作狀況。并發(fā)視圖將系統(tǒng)劃分為進程和處理機方式,通過劃分引入并發(fā)機制,利用并發(fā)高效地使用資源、并行執(zhí)行和處理異步事件。除了劃分系統(tǒng)為并發(fā)執(zhí)行的控制線程外,并發(fā)視圖還必須處理通信和這些線程之間的同步問題。并發(fā)視圖所描述的方面屬于系統(tǒng)中的非功能性質(zhì)方面。并發(fā)視圖供系統(tǒng)開發(fā)者和集成者使用。它由動態(tài)圖(狀態(tài)圖、順序圖、協(xié)作圖、活動圖)和執(zhí)行圖(組件圖、部署圖)構成。
并發(fā)視圖3.4.4組件視圖
組件視圖用來顯示代碼組件的組織方式。它描述了系統(tǒng)的實現(xiàn)模塊和它們之間的依賴關系。組件視圖由組件圖構成。組件是代碼模塊,不同類型的代碼模塊形成不同的組件,組件按照一定的結構和依賴關系呈現(xiàn)。組件的附加信息(如:為組件分配資源)或其他管理信息(如:進展工作的進展報告)也可以加入到組件視圖中。組件視圖主要供開發(fā)者使用。
組件視圖3.4.5部署視圖
部署視圖用來顯示系統(tǒng)的物理架構,即系統(tǒng)的物理部署情況。如:計算機和設備以及它們之間的聯(lián)接方式,其中計算機和設備稱為結點。部署視圖還包括一個映射,該映射顯示在物理架構中組件是怎樣部署的。比如,在每臺獨立的計算機上,哪一個程序或?qū)ο笤谶\行。部署視圖提供給開發(fā)者、集成者和測試者。部署視圖課堂實踐2(1)通過學習小組討論和上網(wǎng)查詢資料形式完成。(2)UML的作用與工程設計和機械設計的繪圖標準進行比較。
操作提示(1)小組討論UML的結構包括哪些內(nèi)容。。(2)使用Word或其他繪圖工具繪制圖3-3所示的UML結構圖(3)依據(jù)工程/機械制圖中的三視圖概念,類比理解UML的視圖的思想。
操作要求3.5UML圖形符號
UML中的圖(Diagram)由圖片(Graph)組成,圖片是模型元素的符號化。把這些符號有機地組織起來形成的圖表示了系統(tǒng)的一個特殊部分或某個方面。
3.5.1用例圖用例圖用于顯示若干角色(actor)以及這些角色與系統(tǒng)提供的用例之間的連接關系
。
用例圖3.5.2類圖類圖用來表示系統(tǒng)中的類以及類與類之間的關系,它是對系統(tǒng)靜態(tài)結構的描述
。
類圖3.5.3對象圖&3.5.4狀態(tài)圖對象圖是類圖的變體。兩者之間的差別在于對象圖表示的是類的對象實例,而不是真實的類。對象圖是類圖的一個范例,它及時具體地反映了系統(tǒng)執(zhí)行到某處時,系統(tǒng)的工作狀況。
對象圖狀態(tài)圖是對類所描述事物的補充說明,它顯示了類的所有對象可能具有的狀態(tài),以及引起狀態(tài)變化的事件
。
狀態(tài)圖3.5.5活動圖活動圖反映一個連續(xù)的活動流,活動圖常用于描述某個操作執(zhí)行時的活動狀況。
活動圖3.5.6順序圖順序圖用來反映若干個對象之間的動態(tài)協(xié)作關系,也就是隨著時間的流逝,對象之間是如何交互的
。
順序圖3.5.7協(xié)作圖協(xié)作圖和順序圖的作用一樣,反映的也是動態(tài)協(xié)作。除了顯示消息變化(稱為交互)外,協(xié)作圖還顯示了對象和它們之間的關系(稱為上下文有關)
。
協(xié)作圖3.5.8組件圖組件圖用來反映代碼的物理結構。代碼的物理結構用代碼組件表示。組件可以是源代碼、二進制文件或可執(zhí)行文件組件。
組件圖3.5.9部署圖部署圖用來顯示系統(tǒng)中軟件和硬件的物理架構。通常部署圖中顯示實際的計算機和設備(用結點表示),以及各個結點之間的關系(還可以顯示關系的類型)。每個結點內(nèi)部顯示的可執(zhí)行的組件和對象清晰地反映出哪個軟件運行在哪個結點上。組件之間的依賴關系也可以顯示在部署圖中。
部署圖3.5.10UML2.0新特性
語言定義精確程度提高改良的語言組織重點改進大規(guī)模的軟件系統(tǒng)模型性能對特定領域的改進的支持全面的合并,合理化、清晰化各種不同的模型概念UML2.03.6UML建模流程
建模流程課堂實踐3(1)通過學習小組討論和上網(wǎng)查詢資料形式完成。(2)本書仍以UML1.4為例進
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年浙教版七年級歷史上冊階段測試試卷含答案
- 2025年上教版必修3地理上冊月考試卷含答案
- 2025年華東師大版八年級生物上冊月考試卷含答案
- 2024版房地產(chǎn)交易居間合同版B版
- 二零二五年度私募股權投資基金合同樣本與仲裁委裁決書解讀3篇
- 2025年蘇教版七年級地理下冊階段測試試卷含答案
- 2025年人教版PEP八年級化學上冊月考試卷
- 年終總結2024年護理人員
- 2025年北師大新版九年級科學下冊月考試卷
- 2025年冀教新版七年級語文下冊月考試卷含答案
- 民間借貸利息計算表
- 酒店保潔服務投標方案(技術方案)
- 《白描花卉妙筆生》 課件 2024-2025學年嶺南美版(2024) 初中美術七年級上冊
- 2025年公務員考試申論試題與參考答案
- 2024年秋季新人教PEP版三年級上冊英語全冊教案
- 蘇教版四年級上冊四則混合運算練習200道及答案
- 2024耐張線夾技術規(guī)范
- 2024年中考英語語法感嘆句100題精練
- 《海洋與人類》導學案
- 挑戰(zhàn)杯紅色賽道計劃書
- 第十五屆全國石油和化工行業(yè)職業(yè)技能競賽(化工總控工)考試題庫-上(單選題)
評論
0/150
提交評論