解析Rose中不同類型UML組件圖
UML組件圖中通常包含3種元素:組件(Component)、接口(Interface)和依賴(Dependency)。每個組件實現一些接口,并使用另一些接口。
UML組件圖概述
組件圖(ComponentDiagram)描述了軟件的各種組件和它們之間的依賴關系。組件圖中通常包含3種元素:組件(Component)、接口(Interface)和依賴(Dependency)。每個組件實現一些接口,并使用另一些接口。
組件
UML組件圖中組件是定義了良好接口的物理實現單元,是系統中可替換的物理部件。一般情況下,組件表示將類、接口等邏輯元素打包而形成的物理模塊。一個組件包含它所實現的一個或多個邏輯類的相關信息,創建了一個從邏輯視圖到組件視圖的映射。
在UML中,組件用一個左側帶有兩個突出小矩形的矩形來表示,如下圖:
1、名稱
組件的名稱是一個字符串,位于組件圖的內部。組件的名稱有兩種:簡單名和路徑名。通常,UML圖中的組件只顯示其名稱,但是也可以用標記值或表示組件細節的附加欄加以修飾。
2、組件的種類
UML組件圖中有3種類型的組件:配置組件(DeploymentComponent)、工作產品組件(Workproductcomponent)和執行組件(ExecutionComponent)
(1)、配置組件是運行系統需要配置的組件,是形成可執行文件的基礎。操作系統、Java虛擬機和數據庫管理系統都屬于配置組件。
(2)、工作產品組件包括模型、源代碼和用于創建配置組件的數據文件,它們是配置組件的來源。工作產品組件包括UML圖、Java類和JAR文件、動態鏈接庫(dll)和數據庫表等。
(3)、執行組件是在運行時創建的組件,是最終可運行的系統產生的允許結果。EJB、Servlets、HTML和XML文檔、COM+和.Net組件以及CORBA組件都是執行組件的例子。
3、Rose中不同類型UML組件圖的圖標表示
(1)、組件
Rose中的組件即一般意義上的組件。也可以用構造型來指定組件類型(如ActiveX、Applet、Application、DLL和Executable等)。
(2)、子程序規范
子程序規范(SubprogramSpecification)通常是一組子程序集合名,子程序中不包括類定義。下圖給出了兩種表示子程序規范的圖標:
(3)、子程序體
下圖給出了兩種表示子程序體的圖標:
(4)、主程序
主程序是包含程序根的文件。#p#
(5)、包規范
包是類的實現方法。包規范(PackageSpecification)是類的頭文件,包含類中函數的原型信息。在C++中,包規范就是.h文件。
(6)、包體
包體(PackageBody)包含類操作代碼。在C++中,包體就是.cpp文件。
(7)、任務規范
UML組件圖中任務表示具有獨立控制線程的包。可執行文件通常表示為擴展名為.exe的任務規范。
(8)、任務體
下圖是兩種表示任務體的圖標。
(9)、數據庫
數據庫可能含有一個或幾個結構。
(10)、虛包
下圖是兩種表示虛包的圖標。
(11)、虛子程序
下圖是兩種表示虛子程序的圖標。
接口
UML組件圖中接口和組件之間的關系分為兩種:實現關系(Realization)和依賴關系(Dependency)。接口和組件之間用實線連接表示實現關系,用虛線連接表示依賴關系。
組件的接口分為兩種:導入接口和導出接口。其中導入接口供訪問操作的組件使用,導出接口由提供操作的組件提供。上圖中,接口對于組件Component是導出接口,對于組件Component2來說是導入接口。
依賴關系
UML組件圖用依賴關系表示各組件之間存在的關系類型。組件圖中的依賴關系是由客戶指向提供者的虛線箭頭。客戶組件依賴于提供者組件,提供者組件只在開發時存在,運行時則不存在。
【編輯推薦】