01. UML软件
-
StarUML Version StarUML-v2.8.1.msi
-
软件破解
// 修改的文件为: // $StarUML_HOME/www/licence/node/LicenseManagerDomain.js function validate(PK, name, product, licenseKey) { var pk, decrypted; // 修改内容,直接返回json return { name: "username", // 用户名 product: "StarUML", // 产品,固定为StarUML licenseType: "vip", // license类型,固定为vip quantity: "www.example.com", // quantity licenseKey: "licenseKey" // licenseKey }; } -
Enter License Help -> Enter License
-
View License Help -> Abort StarUML
02. UML图分类
- 分类
- Class Diagram(类图)
- Package Diagram(包图)
- Object Diagram(对象图)
- Composite Structure Diagram(复合组件图)
- Component Diagram(组件图)
- Deployment Diagram(部署图)
- Use Case Diagram(用例图)
- Sequence Diagram(时序图)
- Communication Diagram(通信图)
- Statechart Diagram(状态机图)
- Activity Diagram(活动图)
- Profile Diagram(配置文件图)
- ER Diagram(E-R图)
- Flowchart Diagram(流程图)
- StarUML分类导航
03. 类图
3.1. 分类
- Generalization(泛化)
- Realization(实现) &&
- Interface Realization(接口实现)
- Association(关联)
- Aggregation(聚合)
- Composition(组合)
- Dependency(依赖)
3.2. 关系
Generalization(泛化)
- 关系:继承关系,类、接口的继承关系。
- 箭头:带三角箭头的实线,箭头指向父类或父接口
Realization(实现) && Interface Realization(接口实现)
- 描述:Interface Realization是Realization的一种省略表示方法。
- 关系:类与接口之间的实现关系。 箭头:带三角箭头的虚线, 箭头指向接口; 或者实线。
Association(关联)
- 关系:关联关系,即类成员变量为关联类对象,这种使用关系是具有偶然性的、临时性的、非常弱的。关联可以是双向的,也可以是单向的;双向的可以有2个箭头或者没有箭头,单向的只有一个箭头。
- 箭头:带箭头的实心线, 指向被拥有者。
Aggregation(聚合)
- 关系:整体与部分的关系, 部分可以离开整体单独存在。聚合是一种强的关联关系,语法上无法区分,必须考察具体的逻辑关系。如汽车与轮胎的关系,轮胎可以脱离汽车而单独存在。
- 箭头:带空心的菱形实心线, 菱形指向整体。
Composition(组合)
- 关系:整体与部分的关系,部分不能离开整体而存在。组合关系,比聚合还要强的关联关系。即部分对象的生命周期依赖于整体对象而存在。
- 箭头:带实心菱形的实线,菱形指向整体。
Dependency(依赖)
- 关系:类之间的连接,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类。
- 箭头:带箭头的虚线, 指向被使用者。
04. Package Diagram(包图)
4.1. Definition(定义)
维护和控制中型-大型项目中模型元素之间的布置和组织关系,以及子系统或模块之间的结构和相关性。
4.2. Funtion(作用)
包图用于表现包和其所包含元素的组织关系。当用来代表类元素时,包图提供了命名空间的可视化。包图最常用的用途是用来组织用例图和类图。
4.3. RelationShip(关系)
Dependency(依赖)
- 关系:一个包引入另一个包的元素。
- 箭头:带箭头的虚线,指向被依赖的包。
- Containment(遏制)
05. Use Case Diagram(用例图)
5.1. Description(描述)
主要用来描述用户, 需求, 系统功能单元之间的关系。
5.2. Structure(构件)
- Package(包)
- Use Case Subject(用例主题) :表示一个模块。
- Use Case(用例) :外部可见的系统功能, 对系统提供的服务进行描述。
- Actor(参与者) :与系统交互的人或物。
图标:
- Frame类似于"Sequence Diagram的Frame"
5.3. Relationship(关系)
Association(关联)
- 关系:表示参与者与用例之间的通信, 任何一方均可发送或接收消息。
- 箭头:无箭头实线。
Directed Association(直接关联)
- 关系:表示参与者与用例之间的通信, 单向接收消息。
- 箭头:带箭头实线, 箭头指向接收方。
Generalization(泛化)
- 关系:继承关系。父用例一般为抽象用例。
- 箭头:带三角箭头的实线, 指向父用例。
Dependency(依赖)
- 关系:表示一个用例依赖于另一个用例,被依赖用例的变化将影响到依赖用例。
- 箭头:带箭头的虚线。指向被依赖项。
Include(包含)
- 关系:复杂用例表示的功能分解到多个用例中。
- 箭头:带箭头的虚线, 并且有<>注释。指向分解出来的功能用例。
Extend(拓展)
- 描述:指用例功能的延伸,相当于为基础用例提供一个附加功能。
- 箭头:带箭头的虚线,并且有<<extend>>注释。箭头指向基础用例。
06 Sequence Diagram(时序图)
6.1. Description(描述)
描述对象间信息传递的顺序。 用一个二维图描述对象之间的交互关系,纵轴为时间轴; 横轴代表参与交互的对象。 消息用从一个对象到另一个对象生命线的箭头表示,箭头以时间顺序从上到下排序。
6.2. Structure(构件)
6.2.1. Lifeline(对象)
对象+类
类名:符合对象的命名规范。
6.2.2. 对象
描述:小写字母开头。
6.2.3. 生命线
描述:对象的生命周期。
6.2.4. 激活
描述:箭头指向对象处于执行状态的时间段。
6.3. Message(消息)
- Message(同步消息) 区别:实心三角箭头为同步消息。
- Self Message(自关联消息)
- Async Message(异步消息) 区别:只是一个箭头代表异步消息。
- Reply Message(返回消息)
- Create Message(创建对象消息) 箭头:箭头指向被创建者,标注为被创建者生成对象的方法
Delete Message(删除对象消息)
- Async Signal Message(异步信号消息)
- Found Message(拾取消息) 描述:收到来自未知发送者/没有显示在当前图中的发送者的消息。 表明:来自一个终点元素。
- Lost Message(迷路消息) 描述:发送却没有到达指定接收者, 或者到达的接收者不再当前图中。 表明:去往一个终点元素。
6.4. Composite Fragment(复合片段)
6.4.1. for & while
6.4.2. mutiple thread
6.4.3. if..else..
6.4.4. if
6.5. State invariant(状态不变)
6.6. Continuation
6.7. Frame(框架)
引入另一个顺序图的引用。
Sequence Diagram(顺序图)
Interaction(交互)
07. ER Diagram(E-R图)
7.1. Description(描述)
E-R模型,亦者实体-联系模型。 E-R图主要用来描述现实世界的概念模型,表示实体及实体间的关系图,广泛应用于数据库的设计。
7.2. Structure(构件)
-
Entity(实体) - 客观存在可以相互区分的事物。
-
Entry Set(实体集) - 具有共性的一类实体。
-
Attribute(属性) - 实体具有的特征,称其为实体属性。
-
Relationship(联系) - 实体间的关系。
注意: 联系不能脱离实体,必须有实体连接,可以是实体的自身联系。 属性既可以连接实体,也可以连接联系。但一个属性只能有唯一的连接对象。
7.3. Relationship(关系)
One to One Relationship
One to Many Relationship
Many to Many Relationship
08. Flowchart Diagram(流程图)
-
Flow
-
Process(处理) 描述:代表流程图中的一个处理或步骤。
-
Terminator(起始和终止) 描述:此图标表示流程的开始和结束。
-
Decision(判断) 描述:对一个条件进行判断抉择。
-
Delay(推迟) 描述:代表没有活动, 延迟一定的周期。
-
Predefined Process(预定义流程) 描述:引入其他流程或者子流程, 从而减少流程图内容过多问题。
-
Alternate Process(事件)
-
Data 描述:调用外部数据
-
Document(文档)
-
Muti-Document(多重进程/文档)
-
Preparation(准备)
-
Display(显示内容)
-
Manual Input(手动输入)
-
Manual Operation(手动操作)
-
Card(卡)
-
Punched Tape(纸带)
-
Connector(连接点/页面内引用) 描述:页面内多个流程图连接引用。
-
Off-Page Connector(离页引用)
-
Or(或)
-
Summing Junction(求和)
-
Collate(校验)
-
Sort(排序)
-
Merge(合并)
-
Extract(提取)
-
Stored Data(存储数据) 描述:存储数据, 或输出到外部存储。
-
Database(数据库)
-
Direct Access Storage(直接访问存储)
-
Internal Storage(内部存储器)