本章將按視圖、模型元素、圖以及公共機(jī)制依次介紹UML的構(gòu)造和基本元素,以使得讀者對(duì)UML有一個(gè)總體了解,其具體細(xì)節(jié)將在后續(xù)章節(jié)中詳細(xì)描述。 2.1 視圖 建模方法由建模語(yǔ)言和建模過程兩部分構(gòu)成。其中建模語(yǔ)言是用來表述設(shè)計(jì)方法的表示法,建模過程是對(duì)設(shè)計(jì)中所應(yīng)采取的步驟的描述。UML是一種建模語(yǔ)言,它在很大程度上獨(dú)立于建模過程。在實(shí)際建模中,建模人員最好把UML用于以用案驅(qū)動(dòng)的、以體系機(jī)構(gòu)為中心的、迭代的和漸增式的開發(fā)過程中。 一般而言,軟件系統(tǒng)的體系結(jié)構(gòu)給出了軟件系統(tǒng)的組織、組成系統(tǒng)的構(gòu)造元素及其接口的選擇、系統(tǒng)的行為和體系結(jié)構(gòu)風(fēng)格等信息。也就是說,它不僅關(guān)心系統(tǒng)的結(jié)構(gòu)和行為等功能性需求,而且也涉及系統(tǒng)的性能、易理解性、易復(fù)用性等非功能呢性需求。如圖2-1所示,UML利用用戶模型視圖、結(jié)構(gòu)模型視圖、行為模型視圖、實(shí)現(xiàn)模型視圖和環(huán)境模型視圖來描述軟件系統(tǒng)的體系結(jié)構(gòu)。其中: 用戶模型視圖由專門描述最終用戶、分析人員和測(cè)試人員看到的系統(tǒng)行為的用案組成,它實(shí)際上是從用戶角度來描述系統(tǒng)應(yīng)該具有的功能。用戶模型視圖所描述的系統(tǒng)功能依靠外部用戶或者另外一個(gè)系統(tǒng)來激活,為用戶或者另一系統(tǒng)提供服務(wù),從而實(shí)現(xiàn)用戶或另一系統(tǒng)與系統(tǒng)的交互。系統(tǒng)實(shí)現(xiàn)的最終目標(biāo)是提供用戶模型視圖中所描述的功能。在UML中,用戶模型視圖是由用案圖組成。 結(jié)構(gòu)模型視圖描述組成系統(tǒng)的類、對(duì)象以及它們之間的關(guān)系等靜態(tài)結(jié)構(gòu),用來支持系統(tǒng)的功能需求,即描述系統(tǒng)內(nèi)部功能是如何設(shè)計(jì)的。結(jié)構(gòu)模型視圖由類圖和對(duì)象圖構(gòu)成,主要供設(shè)計(jì)人員和開發(fā)人員使用。 行為模型視圖主要用來描述形成系統(tǒng)并發(fā)與同步機(jī)制的線程和進(jìn)程,其關(guān)注的重點(diǎn)是系統(tǒng)的性能、易伸縮性和系統(tǒng)的吞吐量等非功能性需求。行為模型視圖利用并發(fā)來描述資源的高效使用、并行執(zhí)行和處理異步事件。除了講系統(tǒng)劃分為并發(fā)執(zhí)行的控制線程之外,行為模型還必須處理通信和這些線程及進(jìn)程之間的同步問題。行為模型視圖主要供系統(tǒng)開發(fā)人員和系統(tǒng)集成人員使用,它由序列圖、協(xié)作圖、狀態(tài)圖和活動(dòng)圖組成。 實(shí)現(xiàn)模型視圖用來描述系統(tǒng)的實(shí)現(xiàn)模塊、它們之間的依賴關(guān)系以及資源分配情況。這種視圖主要用于系統(tǒng)的配置管理,它是由一些獨(dú)立的構(gòu)件組成的。實(shí)現(xiàn)模型視圖由構(gòu)件圖組成。其中構(gòu)件是代碼模塊,不同類型的代碼模塊形成不同的構(gòu)件。實(shí)現(xiàn)模型視圖主要供開發(fā)人員使用。 環(huán)境模型視圖用來描述物理系統(tǒng)的硬件拓?fù)浣Y(jié)構(gòu)。例如,系統(tǒng)中的計(jì)算機(jī)和設(shè)備的分布情況以及它們之間的連接方式,其中計(jì)算機(jī)和設(shè)備統(tǒng)稱為節(jié)點(diǎn)。在UML中環(huán)境模型視圖是由部署圖來表示的。系統(tǒng)部署圖描述了系統(tǒng)構(gòu)件在節(jié)點(diǎn)上的分布情況,即用來描述軟件構(gòu)件到物理節(jié)點(diǎn)的映射。部署圖主要供開發(fā)人員、系統(tǒng)集成人員和測(cè)試人員使用。 上面每一種視圖反映了系統(tǒng)的一個(gè)特定方面,不同人員可以單獨(dú)的使用其中每一種視圖,從而可以關(guān)注特定的體系結(jié)構(gòu)問題。但在通常情況下,由于系統(tǒng)的最終目標(biāo)是提供用戶模型視圖中描述的功能以及其它一些非功能性需求,因此,用戶模型視圖是其它視圖的核心基礎(chǔ),其它視圖的構(gòu)造都依賴與用戶模型視圖中所描述的類容。 細(xì)心的讀者已經(jīng)發(fā)現(xiàn),每一種UML圖都是由多個(gè)圖組成的,每一種圖都是體系結(jié)構(gòu)某個(gè)側(cè)面的表示,各種圖實(shí)際上是一致的,所有的圖在一起組成了系統(tǒng)的完整視圖。如圖2-2所示,UML中總共提供了用案圖、類圖、對(duì)象圖、序列圖、協(xié)作圖、狀態(tài)圖、活動(dòng)圖、構(gòu)建圖和部署圖9種圖。根據(jù)它們描述的是系統(tǒng)的靜態(tài)結(jié)構(gòu)還是動(dòng)態(tài)行為,可以將它們分為靜態(tài)圖和動(dòng)態(tài)圖兩類。再進(jìn)一步介紹這9中UML圖時(shí),先了解下什么是模型元素: 2.2 模型元素 所有包含語(yǔ)義的元素都是模型元素。模型元素可以有名字,每個(gè)模型元素有與其類型相符的命名空間。在UML圖中,模型元素用其相應(yīng)的符號(hào)來表示。一個(gè)模型元素可以出現(xiàn)在多個(gè)不同類型的圖中,在不同的圖中以何種形式出現(xiàn)須遵循一定的UML規(guī)則。 圖2-3中給出了UML圖中最基本的設(shè)施。設(shè)施是對(duì)模型中最具有代表性成分的抽象,關(guān)系把設(shè)施結(jié)合在一起,圖則聚合了相關(guān)的設(shè)施。 在UML中,設(shè)施可以分為結(jié)構(gòu)設(shè)施、行為設(shè)施、分組設(shè)施和注釋設(shè)施4大類。 結(jié)構(gòu)設(shè)施是UML模型的靜態(tài)部分,主要用來描述概念或者物理元素,包括類、接口、協(xié)作、用案、主動(dòng)類、構(gòu)件和結(jié)點(diǎn)7種設(shè)施。其中: 類 是對(duì)一組具有相同屬性、相同動(dòng)作、相同關(guān)系和相同語(yǔ)義對(duì)象的描述,一個(gè)類實(shí)現(xiàn)了一個(gè)或多個(gè)接口。在圖形上類用帶有類名、屬性和操作的矩形框來表示。對(duì)象是類的實(shí)例,其名字有下劃線。模板類是參數(shù)化類,它用部分重疊的兩個(gè)矩形來表示。 接口 描述了一個(gè)類或構(gòu)件的一個(gè)服務(wù)操作集,即定義了元素的外部可見行為。接口定義的是一組操作的描述,而不是操作的實(shí)現(xiàn)。在圖形上,接口用一端帶有小圓圈的直線來表示,它通常依附在實(shí)現(xiàn)接口的類或構(gòu)件上。 協(xié)作 定義了一個(gè)交互,是由一組通過共同工作以提供某協(xié)作行為的角色和其它元素構(gòu)成的一個(gè)實(shí)體。一個(gè)給定的類可以參與幾個(gè)協(xié)作。在圖形上,協(xié)作用一個(gè)通常僅包含名字的虛線橢圓表示。 用案 用一組動(dòng)作序列的描述,系統(tǒng)執(zhí)行這些動(dòng)作之后將產(chǎn)生一個(gè)對(duì)特定參與者可以觀察且有價(jià)值的結(jié)果。在圖形上,用案用一個(gè)通常包含名字的實(shí)現(xiàn)橢圓表示。 主動(dòng)類 是其對(duì)象至少要有一個(gè)進(jìn)程或線程的類,因此它能夠啟動(dòng)控制活動(dòng)。主動(dòng)類的對(duì)象所描述的元素的行為與其它元素的行為為并發(fā),除此以外,它和類是一樣的。在圖形上,主動(dòng)類用有粗外框的矩形來表示。 構(gòu)件 是系統(tǒng)中物理的、可替代的部件,它通常是一個(gè)描述了一些邏輯元素的物理包。再圖形上,構(gòu)件用一個(gè)帶有小方框的矩形來表示。 結(jié)點(diǎn) 是在運(yùn)行是存在的物理元素。它代表一種可計(jì)算的資源,通常具有一定的記憶能力和處理能力。在圖形上,結(jié)點(diǎn)用立方體表示。 行為設(shè)施是UML模型的動(dòng)態(tài)部分,它包括如下兩類設(shè)施: 交互 在特定語(yǔ)境中共同完成一定任務(wù)的一組對(duì)象之間交換的消息組成。一個(gè)對(duì)象群體的行為或單個(gè)操作的行為都可以用一個(gè)交互來描述。如圖2-3所示,消息可以分為簡(jiǎn)單消息,同步消息和異步消息等類型。 狀態(tài)機(jī) 描述一個(gè)對(duì)象或一個(gè)交互在在生命周期內(nèi)響應(yīng)事件所經(jīng)歷的狀態(tài)序列,單個(gè)類或者一組類之間協(xié)作的行為可以用狀態(tài)機(jī)來描述。狀態(tài)機(jī)涉及到狀態(tài)、變遷和活動(dòng).,其中狀態(tài)用圓角矩形來表示. 分組設(shè)施是UML的組織部分。最主要的分組設(shè)施是包,它是一種用于把模型元素組織成組的設(shè)施,結(jié)構(gòu)設(shè)施、行為設(shè)施和其它的分組設(shè)施都可以放進(jìn)包里,構(gòu)件僅在運(yùn)行時(shí)存在,而包只在開發(fā)時(shí)存在。 注釋設(shè)施是UML的解釋部分,它們用來描述和標(biāo)注模型的任何元素。通常可以用注釋修飾或解釋帶有約束的圖。 模型元素之間的連接關(guān)系也是模型元素。入圖2-4所示,常見的關(guān)系有關(guān)聯(lián)、泛化、依賴和實(shí)現(xiàn)4種。其中: 關(guān)聯(lián)是一種結(jié)構(gòu)關(guān)系,它描述了一組鏈,鏈?zhǔn)怯脕磉B接對(duì)象的。聚合是一種特殊的關(guān)聯(lián),它描述了整體和部分之間的結(jié)構(gòu)關(guān)系。關(guān)聯(lián)除可以具有方向外,也可以帶有多重性標(biāo)注和角色名這類修飾符。 泛化是一種特殊(或一般)關(guān)系,特殊元素的對(duì)象(子元素)可以替代一般元素(父元素)的對(duì)象。這樣,子元素就可以共享父元素的結(jié)構(gòu)和行為。 依賴是兩個(gè)設(shè)施之間的語(yǔ)義關(guān)系,其中一個(gè)設(shè)施的變化會(huì)影響到另外一個(gè)設(shè)施的語(yǔ)義,它是一條可帶方向的虛線來表示的。 實(shí)現(xiàn)是依賴和泛化的組合,通常在接口和實(shí)現(xiàn)它們的類或構(gòu)件之間用到這種關(guān)系。 2.3 圖 圖是一組元素的圖形表示,通常是由代表設(shè)施的頂點(diǎn)和代表關(guān)系的弧所構(gòu)成的聯(lián)通圖。理論上,圖可以包含任何設(shè)施及其關(guān)系的復(fù)合。一個(gè)典型的模型應(yīng)該有多個(gè)各種類型的圖。UML中包含用案圖、類圖、對(duì)象圖、序列圖、協(xié)作圖、狀態(tài)圖、活動(dòng)圖、構(gòu)件圖和部署圖9種。 2.3.1 用案圖 用案圖是用于描述一組用案,參與者以及它們之間的連接關(guān)系。一個(gè)用案圖描述了一組動(dòng)作序列,每一個(gè)序列表示系統(tǒng)的外部設(shè)施(系統(tǒng)的參與者)與系統(tǒng)本身的交互。從一個(gè)特定參與者的角度看,一個(gè)用案完成對(duì)其有價(jià)值的工作。如圖2.5所示,用案圖僅僅是從參與者使用系統(tǒng)的角度來描述系統(tǒng)中的信息,即站在系統(tǒng)外部查看系統(tǒng)應(yīng)該具有什么功能,而并不描述該功能在軟件內(nèi)部是如何實(shí)現(xiàn)的。用案可以應(yīng)用于整個(gè)系統(tǒng),也可以應(yīng)用于系統(tǒng)的一個(gè)部分,包括子系統(tǒng)、單個(gè)的類或者接口。通常,用案不僅代表這些元素所期望的行為,而且還可以把這些元素用作開發(fā)過程中測(cè)試用案的基礎(chǔ)。 2.3.2 類圖 類圖是用于描述一組類、接口、協(xié)作以及它們之間的靜態(tài)關(guān)系。在面向?qū)ο笙到y(tǒng)的建模中,類圖是最為常用的圖,它用來闡明系統(tǒng)的靜態(tài)結(jié)構(gòu)。事實(shí)上類是對(duì)一組具有相同屬性、操作、關(guān)系和語(yǔ)義的對(duì)象的描述,其中對(duì)類的屬性和操作進(jìn)行描述時(shí)的一個(gè)最重要的細(xì)節(jié)就是它的可見性。 類可以以多種形式連接,例如關(guān)聯(lián)、泛化、依賴和實(shí)現(xiàn)等。一個(gè)典型的系統(tǒng)中通常有若干個(gè)類圖。一個(gè)類圖不一定要包含系統(tǒng)中所有的類,一個(gè)類可以加到幾個(gè)類圖中。如圖2-6給出了一個(gè)典型的類圖: 2.3.3 對(duì)象圖 對(duì)象圖是類圖的實(shí)例,用來描述特定運(yùn)行時(shí)刻一組對(duì)象之間的關(guān)系。也就是說,對(duì)象用于描述交互的靜態(tài)部分,它由參與協(xié)作的有關(guān)對(duì)象組成。但不包括在對(duì)象之間傳遞的任何消息。 在創(chuàng)建對(duì)象圖時(shí),建模人員并不需要用單個(gè)的對(duì)象圖來描述系統(tǒng)中的每一個(gè)對(duì)象。事實(shí)上,絕大多數(shù)系統(tǒng)中都會(huì)包含成百上千的對(duì)象。用對(duì)象來描述系統(tǒng)的所有對(duì)象以及它們之間的關(guān)系一般是不太現(xiàn)實(shí)的。因此,建模人員可以選擇所感興趣的對(duì)象極其之間的關(guān)系來描述。 對(duì)象圖中所使用的符號(hào)和類圖中使用的符號(hào)幾乎完全相同,區(qū)別僅在于對(duì)象圖的對(duì)象名帶有下劃線,而且類與類之間關(guān)系的所有的實(shí)例都要畫出來。如圖2-7A描述了各個(gè)類及它們之間的關(guān)系,圖2-7B是與它對(duì)應(yīng)的對(duì)象圖。 2.3.4 序列圖 序列圖和協(xié)作圖統(tǒng)稱為交互圖。其中,序列圖用來描述對(duì)象之間消息發(fā)送的先后次序,闡明對(duì)象之間的交互過程以及在系統(tǒng)執(zhí)行過程中的某一具體時(shí)刻將會(huì)發(fā)生什么事件。如圖2-8所示,序列圖是一種強(qiáng)調(diào)時(shí)間順序的交互圖,其中對(duì)象沿橫軸方向排列,消息沿縱軸方向排列。 序列圖中的對(duì)象生命線是一條垂直的虛線,它表示一個(gè)對(duì)象在一段時(shí)間內(nèi)存在。 由于序列圖中大多數(shù)對(duì)象都存在于整個(gè)交互過程中,因此這些對(duì)象全部排列在圖的頂部,它們的生命線從圖的頂部畫到圖的底部。每個(gè)對(duì)象的下方有一個(gè)矩形條,它與對(duì)象的生命線重疊,它表示該對(duì)象的控制焦點(diǎn)。序列圖中的消息可以有序號(hào),但由于這種圖上的消息已經(jīng)從縱軸上按時(shí)間順序排序,因此消息序號(hào)通常予以省略。 2.3.5 協(xié)作圖 協(xié)作圖也是一種交互圖,它強(qiáng)調(diào)收發(fā)消息的對(duì)象的組織結(jié)構(gòu)。 協(xié)作圖和序列圖是協(xié)作的,它們可以互相轉(zhuǎn)換。在多數(shù)情況下,協(xié)作圖主要對(duì)單調(diào)的、順序的控制流建模,但它也可以用來對(duì)包括迭代和分支在內(nèi)的復(fù)雜控制流進(jìn)行建模。 一般而言,建模人員可以創(chuàng)建多個(gè)協(xié)作圖,其中一些是主要的,另外一些是可選擇的路徑或者異常條件。建模人員可以用包來組織這些協(xié)作圖,并給每個(gè)圖起一個(gè)合適的名字,以便與其它圖區(qū)別開。圖2-9給出了一個(gè)典型的協(xié)作圖: 2.3.6 狀態(tài)圖 狀態(tài)圖實(shí)際上是一種由狀態(tài)、變遷、事件和活動(dòng)組成的狀態(tài)機(jī)。狀態(tài)圖描述從狀態(tài)到狀態(tài)的控制流,常用于系統(tǒng)的動(dòng)態(tài)特性建模。在大多數(shù)情況下,它用來對(duì)反應(yīng)型對(duì)象的行為建模。 在UML中,狀態(tài)圖可以用來對(duì)一個(gè)對(duì)象按事件排序的行為建模。如圖2-10所示,一個(gè)狀態(tài)圖是強(qiáng)調(diào)從狀態(tài)到狀態(tài)的控制流的狀態(tài)機(jī)的簡(jiǎn)單表示。一般而言,狀態(tài)圖是對(duì)類所描述的設(shè)施的補(bǔ)充說明,它描述了類的所有對(duì)象可能具有的狀態(tài)以及引起狀態(tài)變化的事件。 2.3.7 活動(dòng)圖 活動(dòng)圖是狀態(tài)圖的一種特殊情況,其中幾乎所有或大多數(shù)狀態(tài)都處于活動(dòng)狀態(tài),而且?guī)缀跛谢蛘叽蠖鄶?shù)變遷都是由源狀態(tài)中活動(dòng)的完成觸發(fā)的?;顒?dòng)圖本質(zhì)上是一種流程圖,它描述了從活動(dòng)到活動(dòng)的控制流。 可以把活動(dòng)圖看作是新樣的交互圖,但交互圖觀察的是傳遞消息的對(duì)象,而活動(dòng)圖觀察到的是對(duì)象之間傳送的消息。盡管兩者在語(yǔ)義上的區(qū)別很細(xì)微,但它們使用不同的方式來看系統(tǒng)的。圖2-1給出了一種典型的活動(dòng)圖。 2.3.8 構(gòu)件圖 構(gòu)件圖是用于描述一組構(gòu)件之間的組織和依賴關(guān)系,用于建模系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖。構(gòu)件可以是可執(zhí)行程序集、庫(kù)、表、文件和文檔等,它包含了邏輯類或者邏輯類的實(shí)現(xiàn)信息,因此結(jié)構(gòu)模型視圖和實(shí)現(xiàn)模型視圖之間存在映射關(guān)系。 構(gòu)建圖中也可以包括包或子系統(tǒng),它們都是用于將模型元素組成較大的組塊。圖2-12給出了一個(gè)典型的構(gòu)件圖。 2.3.9 部署圖 部署圖用來描述系統(tǒng)運(yùn)行是進(jìn)行處理的節(jié)點(diǎn)以及在節(jié)點(diǎn)上活動(dòng)的構(gòu)件的配置。部署圖用來對(duì)系統(tǒng)的環(huán)境模型視圖進(jìn)行建模。在大多數(shù)情況下,部署圖用來描述系統(tǒng)硬件的擴(kuò)普結(jié)構(gòu)。 在UML中,建模人員可以用類圖來描述系統(tǒng)的靜態(tài)結(jié)構(gòu),可以用序列圖、協(xié)作圖、狀態(tài)圖、活動(dòng)圖來描述系統(tǒng)的動(dòng)態(tài)行為,而用部署圖來描述軟件所執(zhí)行所需的處理器和設(shè)備的拓?fù)浣Y(jié)構(gòu)。圖2-13給出了一個(gè)典型的部署圖: 2.4 公共機(jī)制 UML提供了一些公共機(jī)制,以便為圖添加一些附加信息,這些信息通常無法用基本的模型元素表示。通常的公共機(jī)制包括規(guī)約、修飾符和擴(kuò)展機(jī)制。 2.4.1 規(guī)約 在UML中,每個(gè)模型元素的圖形表示法之后都存在一個(gè)規(guī)約,它以文字的形式描述基本模型元素的語(yǔ)法和語(yǔ)義。例如,在類的圖符之后就有一個(gè)全面描述該類所擁有哦屬性、操作和行為的規(guī)約;在視圖上,類的圖符可能僅展示了部分規(guī)約。 事實(shí)上,UML圖形表示法可視化的描述系統(tǒng),而UML的規(guī)約則用來描述系統(tǒng)的細(xì)節(jié)。 2.4.2 修飾符 UML中的大多數(shù)模型元素都可用唯一的和直接的圖形符號(hào)來表示,這些圖形符號(hào)可視化的表示模型元素最重要的信息。例如,類的圖形符號(hào)展示了類名、操作和屬性這些最重要的信息。但也可以給類增添修飾符以給出類規(guī)約的細(xì)節(jié)。例如,用斜體類名表示它是抽象類,用+和#等符號(hào)表示屬性和操作的可見性。 在UML眾多的修飾符中,注釋是一種最重要的并且能單獨(dú)存在的修飾符,它是附加在模型元素或元素集上用來表示約束或注解信息的圖形符號(hào)。例如,圖2-14表示的是一個(gè)帶修飾符的類,圖中的斜體類名表明這個(gè)類是抽象類。它有兩個(gè)公共操作、一個(gè)保護(hù)操作和一個(gè)私有操作。此外,注釋還指出了rollback的算法細(xì)節(jié)在文檔exe.doc中。 2.4.3 擴(kuò)展機(jī)制 由于一種語(yǔ)言即使表達(dá)能力再?gòu)?qiáng)也難以表示出各種領(lǐng)域中的各種模型在不同時(shí)刻所有可能的細(xì)微差別,因此,UML提供了擴(kuò)展機(jī)制,使得它可以以受控的方式進(jìn)行擴(kuò)展。UML的擴(kuò)展包括衍型、標(biāo)記值和約束。 衍型是對(duì)UML詞匯的擴(kuò)展,主要用于創(chuàng)建和已有的模型元素相似且針對(duì)特定的問題的新種類的模型元素。衍型是用書名號(hào)括起來的名字表示的,其位置在其它元素之上。 標(biāo)記值是對(duì)UML元素的語(yǔ)義擴(kuò)展,主要用于在模型元素的規(guī)約中創(chuàng)建新信息。標(biāo)記值是用花括號(hào)括起來的字符串表示的,其位置在其它元素之下。 約束是圖UML元素語(yǔ)義的擴(kuò)展,主要用于增加新的規(guī)則或者修改已有的規(guī)則。約束是用花括號(hào)括起來的字符串表示,并且應(yīng)該放在所關(guān)聯(lián)的元素附近或者通過依賴關(guān)系連接相應(yīng)的元素。 例如,在圖2-15中,衍型exeception使得Overflow成為一個(gè)模型元素,EveryQueue中的版本和作者就是標(biāo)記值,add上的約束(Ordered)使得EveryQueue中的事件按序排列。這3種擴(kuò)展機(jī)制允許建模人員根據(jù)項(xiàng)目的需要來對(duì)UML進(jìn)行相應(yīng)的擴(kuò)展。 2.5 小結(jié) 本章就視圖、模型元素、圖以及公共機(jī)制依次介紹了一下。 UML中的視圖是由用戶模型視圖、結(jié)構(gòu)模型視圖、實(shí)現(xiàn)模型視圖、行為模型視圖和環(huán)境模型視圖5種視圖組成的,它們分別用來描述系統(tǒng)應(yīng)該具備什么樣的功能、靜態(tài)結(jié)構(gòu)、動(dòng)態(tài)行為、配置以及硬件拓?fù)浣Y(jié)構(gòu),其中,用戶模型視圖是由用案圖組成的,結(jié)構(gòu)模型視圖由類圖和對(duì)象圖組成,實(shí)現(xiàn)模型視圖由構(gòu)件圖組成,行為模型視圖由狀態(tài)圖、活動(dòng)圖、序列圖和協(xié)助圖組成,環(huán)境模型視圖由部署圖組成。 UML所提供的公共機(jī)制使得人們可以為各種圖增添一些無法由基本模型元素表示的附加信息。 |
|