UML (Unified Modeling Language)统一建模语言
是一种建模语言,第三代用来面向对象开发系统的产品进行说明、可视化和编辑文档的方法。
UML的结构:
UML 是由图和原模型组成的。图是UML的语法,而原模型给出图的意思,是UML的语义
UML 是用来描述模型的,它用模型来描述系统的结构或静态特征,以及行为或动态特征。他从不同的视角为系统的架构建模,形成系统的不同视图
l 用例视图(use case view),强调从用户的角度或需要看到的系统。系统中与实现无关的视图,只关心系统的高级功能,而不关心系统的具体实现细节。通常在项目开始时要先确定,之后不轻易修改。
l 逻辑视图(logical view),展现系统的静态或结构组成及特征。也成为结构模型视图(structural model view)或静态视图(static view) 关注系统如何实现使用用例中提到的功能,涵盖系统实现的具体细节。从中可以看到系统的逻辑结构
l 并发试图(concurrent view),体现了系统的动态或行为特征。也称为流程视图(process view)
l 组建视图(component view),体现了系统实现的结构和行为特征,也称开发视图(development view)
l 展开视图(deployment view),体现了系统实现环境的结构
每一种UML的视图(view)都是由图(diagram)组成的,包括
l 用户模型视图
用例图(use case diagram),描述系统功能;
l 结构模型视图
类图(Class diagram),描述系统的静态结构;
对象图(Object diagram),描述系统在某个时刻的静态结构;
l 行为模型视图
序列图(Sequence diagram) 按时间顺序描述系统元素间的交互。
协作图(Collaboration diagram)按时间和空间的顺序描述元素的交互和它们的关系;
状态图(State diagram),描述了系统元素的状态条件和相应。
活动图(Activity diagram),描述了系统元素的活动;
l 实现模型视图
组件图(Component diagram),描述了实现系统的元素和组织
环境模型视图
展开图(deployment diagram),描述了环境元素的配置,并把实现系统的元素映射到配置上。
模型图 | 图标 | 描述 | 建模角度 |
类图 Class diagram | 显示系统中的类和包,提供系统构件及其相互关系 | 静态结构建模 | |
用例图 Use-case diagram | 用例图从用户的角度描述系统功能的使用者和主要的系统操作流程。显示用例与参与者及其相互关系 | 系统功能建模 | |
协作图 Collaboration diagram |
| 从对象组织结构的角度显示用例中特定情形的操作流程 | 动态行为建模 |
顺序图 Sequence diagram |
| 按时间顺序显示用例中特定情形的操作流程 | 动态行为建模 |
状态图 Statechart diagram |
| 显示系统中类的对象所有可能的状态以及事件发生时状态的转换条件 | 动态行为建模 |
活动图 Activity diagram |
| 描述满足用例要求所需进行的活动以及活动间的关系的图 | 动态行为建模 |
构件图 Component diagram | 描述代码构件的物理结构以及构件之间的依赖关系。组件图有助于分析和理解组件之间的影响程度 | 静态结构建模 | |
部署图 Deployment diagram | 描述系统中的物理结构 | 静态结构建模 |
用例图:use case diagram
类图:Class diagram
对象图:Object diagram
状态图:Statechart diagram
时序图:Sequence diagram
协作图:Collaboration diagram
活动图:Activity diagram
组件图:Component diagram
模型间的关系: