簡介
StarUML是一個高級的軟件建模工具,旨在支持敏捷而又簡潔的建模。
描述版本:3.0.2
參考
參考:【官方文檔】
Basic Concepts
項目(project)
項目是存儲為單個文件的頂級元素,存儲的文件后綴為: (
.mdj).
- 通常我們需要建立多個模型來描述一個軟件系統:
- 用例模型 Use-Case Model
- 設計模型 Design Model
- 組件模型 Component Model
- 開發模型 Deployment Model
- Others
Model vs View
很多人容易搞混 畫圖工具(諸如 Microsoft Visio) 和 建模工具(諸如 StarUML) ,首先你應當清楚,一個圖表並不是一個模型。
模型或者說軟件模型,是一個對軟件系統各個方面的描述,這些方面包括:架構,行為,需求等。軟件模型可以用文本、數學或視覺形式表示。模型元素是軟件模型的構建塊。
圖表是軟件模型的視覺幾何符號表示。一張或者是多張圖表能夠表示一個軟件模型的不同方面。例如:
- 一個圖表可以關注類層次結構,而另一個圖表可以關注對象之間的交互。
- 圖表由視圖元素組成,視圖元素是模型元素的視覺表示。
- 一個模型元素可能有對個對應的視圖元素。
- 模型元素有自己的數據,如名稱、構造型、類型等等。
- 視圖元素只是在圖表中呈現相應的模型元素。
- 視圖元素可能在一個圖或不同的圖中存在多次。
- 如果模型元素的名稱發生了更改,則所有相應的視圖元素都會反映其關系圖中的更改。
Fragment
片段是項目的一部分,另存為擴展名為.mfj的單獨文件。任何元素都可以作為片段導出,但通常導出的是,umlPackage、umlModel和umlsubsystem。
一旦分片被導出為單獨的文件,就可以在其他的項目中導入復用。
相關的操作:
- File - Import Fragment - To import a fragment file。
- File - Export Fragment - To export an element to a fragment file。
Profile
UML(統一建模語言)是一種通用的建模語言,可以用來表示各種軟件密集型系統。
因此,對特定域或平台使用 UML 是不夠的,因此您可能需要定義 UML 概要文件(UML Profile)。
StarUML 提供了可用於擴展 UML 的 UML profiles。例如,概要文件可以用於以下目的 UML profiles:
- 用於特定的編程語言 (Profiles for specific programming languages (C/C++, Java, C#, Python, etc.))
- 用於特定的開發方法 (Profiles for specific development methodologies (RUP, Catalysis, UML Components, etc.))
- 用於特定的域 (Profiles for specific domains (EAI, CRM, SCM, ERP, etc.))
Extension
擴展是向 StarUML 添加新特性的包。擴展可以擴展菜單、UI、對話框、建模符號、首選項等。
擴展可以用JavaScript、CSS3和HTML5編寫,也可以使用集成在StarUML中的node.js。
擴展可以通過主擴展注冊表輕松安裝、卸載和更新。
Managing Project
新建項目
- 方法一:
Ctrl+N - 方法二:
File -> New
通過模板新建項目
-
File -> New From Template -> [TemplateName] -
5 個默認的模板:
-
UMLMinimal: 一個使用 UML 標准 profile 的簡單模型。
-
UMLConventional: UML 標准 Profile,包括 Use Case Model, Analysis Model, Design Model, Implementation Model, and Deployment Model.
-
4+1 View Model : Pilippe Kruchten設計的 4+1 Architectural View Model. 基於多個並發視圖的使用,描述軟件密集型系統的體系結構:

-
Rational: 軟件 Rational Rose 的方法。
-
Data Model: 一個簡單的數據建模項目。
-
-
如果不想使用預先定義的模板,則需要創建自己的項目結構。
打開項目
- 項目文件后綴:
.mdj - 方法一:
Ctrl+O - 方法二:
File -> Open... and then select a file in Open Dialog
打開StarUML V1 File
- 如果你擁有 StarUML V1 版本的文件(后綴為 .uml)
- 使用
File -> Import -> StarUML 1 File (.uml)....導入。
保存項目
- 方法一:
Ctrl+S - 方法二:
FIle -> Save - 方法三:
Ctrl+Shift+S - 方法四:
File -> Save As
關閉項目
- 保存
File -> Close
導出 Fragment
- 導出項目的一部分為
fragment File -> Export -> Fragment... -> 在元素選擇對話框中選擇一個元素導出
導入 Fragment
- 將一個
fragment導入到項目中 File -> Import -> Fragment.... -> 導入的 fragment 會成為當前項目的子項
應用 UML 標准 Profiles
- 要包含標准 UML Profile,默認未包含。
Model -> Apply Profile -> UML Standard Profile (v2)
Editing Elements
Editing Diagrams
Create Diagram
- 在右邊
Model Explorer中選擇一個元素,默認名叫Model,新建的圖表將作為該元素的子項。 - 在菜單欄中:
Model -> Add Diagram -> [DiagramType]。 - 或者右擊選中的元素,在右擊菜單中:
Add Diagram -> [DiagramType]。
Delete Diagram
右擊選中 -> Delete From Model
Open Diagram
- 在右邊
Model Explorer中雙擊對應圖表即可
Close Diagram
- 在左側
Working Diagrams選中, 右擊, 關閉或者是點擊圖表名前面的叉號。 Shift+F4關閉所有的圖表
切換當前工作的圖表
- 在左側
Working Diagrams中鼠標點擊切換即可
Editing elements
Create Element
-
使用
Toolbox創建Element- 在左下角
Toolbox中選擇選擇元素類型。 - 在圖標中可以調節
element的尺寸,連接兩個元素等操作。 - 注意:大多數情況下,使用該方法創建的元素意味着同時創建了
Model Element和View Element
- 在左下角
-
如果
Model Elelment已經存在,則可以在視圖上創建相關的View Element-
通過拖放創建
View Element- 在右側資源管理器(Explorer)中先選中一個
Model Element - 鼠標點擊
Model Element拖動到圖表中釋放即可
- 在右側資源管理器(Explorer)中先選中一個
-
在右側資源管理器(Explorer)中創建
Model Element:- 首先選擇一個元素,其中新的模型元素將作為子元素包含在資源管理器中。
- 選中后右擊
Add -> [ElementType] - 或者在菜單欄中
Model -> Add -> [ElementType]
-
Delete Elements
-
刪除元素前,首先要區分以下基本概念:
- 模型元素 - Model Element.
- 視圖元素 - View Element.
- 圖表 - Diagram.
-
在圖表中刪除
View Elements- 在圖表中選中要刪除的視圖元素
- 使用
Del鍵刪除 - 或右擊
Delete - 或
Edit -> Delete
-
刪除
Model Element- 在圖表或者是
Explorer中選中要刪除的元素 Ctrl + Del- 或右擊
Delete from Model - 或
Edit -> Delete from Mode
- 在圖表或者是
Select Elements
-
在圖表編輯區域:
Ctrl+A或者Edit -> Select All選中所有元素- 鼠標點擊選中單個元素
Shift+鼠標單擊選中多個元素- 鼠標拖選,選中拖動區域中的元素
- 注意:在圖表編輯區域中選中一個元素,意味着同時選中了
Model Element和View Element
-
在右側資源管理器中:
- 可以點擊單獨選中一個模型元素
- 如果要在資源管理器中選擇與關系圖中所選元素對應的元素:
- 圖表編輯區域中選中,再在菜單欄中
Edit -> Select In Explorer - 在圖表編輯區域的對應元素上右擊
Select In Explorer
- 圖表編輯區域中選中,再在菜單欄中
Copy and Paste
復制或剪切要粘貼的元素時,必須在模型元素和視圖元素之間進行明確區分。 如果復制了模型元素,則必須將其粘貼到模型元素下。
在這種情況下選中元素的所有子元素都將會被一起復制。視圖元素可以復制到同一個圖表中,也可以復制到不同的圖表中。復制的視
圖元素只能粘貼到圖表中;它們不能粘貼到模型元素。復制和粘貼也可能受到限制,具體取決於視圖元素類型和圖表類型。
-
在圖表編輯器中復制粘貼視圖元素:
- 在途表中選中一個或多個視圖元素
Ctrl+C復制,Ctrl+X剪切- 在目標圖表中
Ctrl+V粘貼
-
在資源管理器中復制粘貼模型元素:
- 在資源管理器中
Ctrl+C復制選中的模型元素,Ctrl+X剪切 - 資源管理器中選中要粘貼到的目標模型元素
Ctrl+V粘貼
- 在資源管理器中
-
注意:有的元素不允許復制、剪切、粘貼
Undo and Redo
- 撤銷:
Ctrl+Z - 重做:
Ctrl+Y
編輯元素屬性(Edit Properties)
- 可以在右下角屬性編輯器(Properties)中編輯模型元素的屬性。
Documenting Elements
- 可以在右下角模型編輯器(Documentation)中為模型元素添加文檔說明
擴展元素(Extending Elements)
分配構造型(Assign Stereotype)
為元素分配已定義的構造型(Stereotype), 該構造型定義在 UML Standard Profile中
-
選中要分配 stereotype 的模型元素
-
單擊右下邊欄屬性編輯器中構造型屬性(stereotype)右側的放大鏡圖標
-
在元素選取器對話框中選擇一個構造型
-
為元素分配臨時構造型:
- 選擇要分配構造型的模型元素
- 在屬性編輯器中的
stereotype屬性中輸入構造型的名稱
Add Constraints
-
向元素添加約束:
- 右側選擇要添加約束的模型元素
Model -> Add -> Constraint或右擊 -> Add -> Constraint
Add Tags
標記是向模型元素添加擴展屬性的元素
-
右側選擇要添加
Tag的模型元素 -
Model -> Add -> Tag或右擊 -> Add -> Tag -
Tag的屬性:-
name: Tag 的名稱
-
kind: Tag 的類型, 類型可能是:
- string
- reference
- boolean
- number
- hidden
如果選擇了
hidden, 視圖元素中將不會顯示Tag -
value: 當
kind為string時,Tag的值 -
reference: 當
kind為reference時,reference的值 -
checked: 當
kind為boolean時的布爾值 -
number: 當
kind為number時的數值
-
-
要在視圖元素中展示或者是隱藏
Tag, 參看 Show Property
查找模型元素(Finding Model Elements)
Ctrl+F- 在查找對話框中填寫關鍵字,大小寫敏感
- 查找結果顯示在軟件底部
