專家解析UML面向?qū)ο蠓治鲞^程及包含圖形
UML建模語言大家應(yīng)該有所了解了,這里向大家介紹一下UML面向?qū)ο蠓治黾捌浒ǖ膱D、建模步驟,相信本節(jié)的學(xué)習(xí)也一定會讓你對UML面向?qū)ο蠼S猩羁痰恼J(rèn)識。下面是具體介紹。
UML面向?qū)ο蠓治黾捌浒ǖ膱D、建模步驟
一、敘述基于UML的面向?qū)ο蠓治鲈O(shè)計(jì)過程
1)識別系統(tǒng)的用例和角色
首先對項(xiàng)目進(jìn)行需求調(diào)研,依據(jù)項(xiàng)目的業(yè)務(wù)流程圖和數(shù)據(jù)流程圖以及項(xiàng)目中涉及的各級操作人員,通過分析,識別出系統(tǒng)中的所有用例和角色;接著分析系統(tǒng)中各角色和用例間的聯(lián)系,再使用UML建模工具畫出系統(tǒng)的用例圖,同時(shí),勾畫系統(tǒng)的概念層模型,借助UML建模工具描述概念層類圖和活動圖。
2)進(jìn)行系統(tǒng)分析,并抽象出類
系統(tǒng)分析的任務(wù)是找出系統(tǒng)中所有需求并加以描述,同時(shí)建立特定領(lǐng)域模型。建立域模型有助于開發(fā)人員考察用例,從中抽取出類,并描述類之間的關(guān)系。
3)設(shè)計(jì)系統(tǒng)和系統(tǒng)中的類及其行為
設(shè)計(jì)階段由結(jié)構(gòu)設(shè)計(jì)和詳細(xì)設(shè)計(jì)組成。
①結(jié)構(gòu)設(shè)計(jì)是高層設(shè)計(jì),其任務(wù)是定義包(子系統(tǒng)),包括包間的依賴關(guān)系和主要通信機(jī)制。包有利于描述系統(tǒng)的邏輯組成部分以及各部分之間的依賴關(guān)系。
②詳細(xì)設(shè)計(jì)就是要細(xì)化包的內(nèi)容,清晰描述所有的類,同時(shí)使用UML的動態(tài)模型描述在特定環(huán)境下這些類的實(shí)例的行為。
二、UML面向?qū)ο笾邪男﹫D及每件圖的作用
UML中包括九種圖:用例圖、類圖、對象圖、狀態(tài)圖、時(shí)序圖、協(xié)作圖、活動圖、組件圖、配置圖。
1)用例圖(UseCaseDiagram)
它是UML中最簡單也是最復(fù)雜的一種圖。說它簡單是因?yàn)樗捎昧嗣嫦驅(qū)ο蟮乃枷耄质腔谟脩粢暯堑?,繪制非常容易,簡單的圖形表示讓人一看就懂。說它復(fù)雜是因?yàn)橛美龍D往往不容易控制,要么過于復(fù)雜,要么過于簡單。
用例圖表示了角色和用例以及它們之間的關(guān)系。
2)類圖(ClassDiagram)
是最常用的一種圖,類圖可以幫助我們更直觀的了解一個(gè)系統(tǒng)的體系結(jié)構(gòu)。通過關(guān)系和類表示的類圖,可以圖形化的方式描述一個(gè)系統(tǒng)的設(shè)計(jì)部分。
3)對象圖
UML面向?qū)ο笾袑ο髨D是類圖的實(shí)例,幾乎使用與類圖完全相同的標(biāo)識。它們的不同點(diǎn)在于對象圖顯示類的多個(gè)對象實(shí)例,而不是實(shí)例的類。一個(gè)對象圖是類圖的一個(gè)實(shí)例。由于對象存在生命周期,因此對象圖只能在系統(tǒng)某一時(shí)間段存在。
4)狀態(tài)圖
描述一個(gè)實(shí)體基于事件反應(yīng)的動態(tài)行為,顯示了該實(shí)體如何根據(jù)當(dāng)前所處的狀態(tài)對不同的時(shí)間做出反應(yīng)的。通常創(chuàng)建一個(gè)UML狀態(tài)圖是為了以下的研究目的:研究類、角色、子系統(tǒng)、或組件的復(fù)雜行為。
5)時(shí)序圖
又稱順序圖,描述了對象之間動態(tài)的交互關(guān)系,著重體現(xiàn)對象間消息傳遞的時(shí)間順序。
順序圖由一組對象構(gòu)成,每個(gè)對象分別帶有一條豎線,稱作對象的生命線,它代表時(shí)間軸,時(shí)間沿豎線向下延伸。順序圖描述了這些對象隨著時(shí)間的推移相互之間交換消息的過程。消息用從一務(wù)垂直的對象生命線指向另一個(gè)對象的生命線的水平箭頭表示。圖中還可以根據(jù)需要增加有關(guān)時(shí)間的說明和其他注釋。
6)協(xié)作圖
UML面向?qū)ο笾袇f(xié)作圖用于顯示組件及其交互關(guān)系的空間組織結(jié)構(gòu),它并不側(cè)重于交互的順序。協(xié)作圖顯示了交互中各個(gè)對象之間的組織交互關(guān)系以及對象彼此之間的鏈接。與序列圖不同,協(xié)作圖顯示的是對象之間的關(guān)系。另一方面,協(xié)作圖沒有將時(shí)間作為一個(gè)單獨(dú)的維度,因此序列號就決定了消息及并發(fā)線程的順序。協(xié)作圖是一個(gè)介于符號圖和序列圖之間的交叉產(chǎn)物,它用帶有編號的箭頭來描述特定的方案,以顯示在整個(gè)方案過程中消息的移動情況。
協(xié)作圖用途:
通過描繪對象之間消息的移動情況來反映具體的方案。
顯示對象及其交互關(guān)系的空間組織結(jié)構(gòu),而非交互的順序。
7)活動圖(ActivityDiagram)
UML面向?qū)ο笾蠻ML活動圖記錄了單個(gè)操作或方法的邏輯,單個(gè)用戶案例,或者單個(gè)業(yè)務(wù)流程的邏輯。描述系統(tǒng)中各種活動的執(zhí)行順序,通常用于描述一個(gè)操作中所要進(jìn)行的各項(xiàng)活動的執(zhí)行流程。同時(shí),它也常被用來描述一個(gè)用例的處理流程,或者某種交互流程。
活動圖由一些活動組成,圖中同時(shí)包括了對這些活動的說明。當(dāng)一個(gè)活動執(zhí)行完畢之后,控制將沿著控制轉(zhuǎn)移箭頭轉(zhuǎn)向下一個(gè)活動?;顒訄D中還可以方便地描述控制轉(zhuǎn)移的條件以及并行執(zhí)行等要求。
8)組件圖(ComponentDiagram)
組件圖是用來反映代碼的物理結(jié)構(gòu)。從組件圖中,可以了解各軟件組件(如源代碼文件或動態(tài)鏈接庫)之間的編譯器和運(yùn)行時(shí)依賴關(guān)系。使用組件圖可以將系統(tǒng)劃分為內(nèi)聚組件并顯示代碼自身的結(jié)構(gòu)。
組件圖的主要目的是顯示系統(tǒng)組件間的結(jié)構(gòu)關(guān)系。
9)配置圖
UML面向?qū)ο笾信渲脠D描述系統(tǒng)中硬件和軟件的物理配置情況和系統(tǒng)體系結(jié)構(gòu)。
在配置圖中,用結(jié)點(diǎn)表示實(shí)際的物理設(shè)備,如計(jì)算機(jī)和各種外部設(shè)備等,并根據(jù)它們之間的連接關(guān)系,將相應(yīng)的結(jié)點(diǎn)連接起來,并說明其連接方式。在結(jié)點(diǎn)里面,說明分配給該結(jié)點(diǎn)上運(yùn)行的可執(zhí)行構(gòu)件或?qū)ο螅瑥亩f明哪些軟件單元被分配在哪些結(jié)點(diǎn)上運(yùn)行。
【編輯推薦】
- 淺析UML面向?qū)ο蟮南到y(tǒng)分析設(shè)計(jì)方法
- 專家指導(dǎo) 如何進(jìn)行UML面向?qū)ο蠓椒ǚ治雠c設(shè)計(jì)
- 實(shí)例講解UML面向?qū)ο蠓治鲈O(shè)計(jì)
- 解析UML面向?qū)ο蠓治雠c建模中交互圖
- UML面向?qū)ο蠼VR簡介