UML
语言概述
统一建模语言(
UML
,
Unified Modeling Language
)
用例图(
Use Case Diagram
),从用户的角度描述系统功能,并指出各功能的操作者。
静态图(
Static Diagram
),包括类图,对象图和包图。
行为图(
Behavior Diagram
),包括状态图和协作图
交互图(
Interactive Diagram
),包括时序图和合作图
实现图(
Implementation Diagram
),包括组织图和配置图
用例视图(
Use Case View
),
逻辑视图(
Logical View
),结构模型视图(
Structural Model View
),静态视图(
Static View
)
并发视图(
Concurrent View
),行为模型视图(
Behavioral Model View
),动态视图(
Dynamic View
)
组件视图(
Component View
),实现模型视图(
Impementation Model View
)
配置视图(
Deployment View
),环境模型视图(
Environment Model View
),物理视图(
Physical View
)
用例图(
Use Case Diagram
),描述系统功能
类图(
Class Diagram
),描述系统的静态结构
对象图(
Object Diagram
),描述系统在某个时刻的静态结构
时序图(
Sequence Diagram
),按时间顺序描述系统元素间的交互
协作图(
Collaboration Diagram
),按照时间和空间顺序描述系统元素的交互和他们之间的关系
状态图(
State Diagram
),描述了系统元素的状态条件和响应
活动图(
Activity Diagram
),描述了系统元素的活动
组件图(
Component Diagram
),描述了实现系统的元素的组织
配置图(
Deployment Daigram
),描述了环境元素的配置,并把实现系统的元素映射到配置上。
用户模型视图,用例图
结构模型视图,类图和对象图
行为模型视图,时序图、协作图、状态图和活动图(动态图)
实现模型视图,组件图
环境模型视图,配置图
结构事物(
Structure Things
)
l
类(
Class
)是具有相同属性、相同方法、相同语义和相同关系的一组对象的集合。
l
接口(
Interface
)是指类或组件所提示的、可以完成特定功能的一组操作的集合,换句话说,接口描述了类或组件的对外的、可见的动作。
l
协作(
Collaboration
)定义了交互的操作,表示一些角色和其他元素一起工作,提供一些合作的动作。
l
用例(
Use Case
)定义了系统执行的一组操作,对特定的用户产生可以观察的结果。
l
活动类(
Active Class
)是对拥有线程并可发起控制活动的对象(主动对象)的抽象。
l
组件(
Component
)是物理上可以替换的,实现了一个或多个接口的系统元素。
l
节点(
Node
)是一个物理元素,它在运行时存在,代表一个可计算得资源。
行为事物(
Behavior Things
)
l
交互(
Interaction
)
l
状态机(
State Machine
)是对象的一个或多个状态的集合。
组织事物(
Grouping Things
)
l
包(
Package
)是一种有组织地将一系列元素分组的机制。
包与组件的最大区别在于,包纯粹是一种概念上的东西,仅仅存在于开发阶段结束之前,而组件是一种物理的元素,存在于运行时。
辅助事物(
Annotation Things
)
l
注释(
Annotation
)是
UML
模型的解释部分
关联关系(
Association Relationships
)是一种结构化的关系,指一种对象和另一种对象有联系,给定关联的两个类,可以从其中的一个类的对象访问另一个类的相关对象。
依赖关系(
Dependency Relationships
)对于两个对象
X
、
Y
,如果对象
X
发生变化,可能会引起对另一个对象
Y
的变化,则称
Y
依赖于
X
。
泛化关系(
Generalization Relationships
)定义了一般元素和特殊元素之间的分类关系。
实现关系(
Reslization Reslationships
)将一种模型元素(如类)与另一种模型元素(如接口)连接起来,其中接口只是行为的说明而不是结构或者实现。真正的实现由前一个模型元素来完成。
静态图(
Static Diagrams
)
l
用例图(
Use Case Diagram
)展现了一组用例、参与者以及它们间的关系。描述系统的静态使用情况。
l
类图(
Class Diagram
)展示了一组类,接口和协作及他们间的关系。说明系统的静态设计视图。
l
对象图(
Object Diagram
)展示了一组对象及它们间的关系。对象图说明类图中所反映的事实例的数据结构和静态快照。
l
组件图(
Component Diagram
)又称构件图,展现了一组组件之间的组织和依赖,用于对源代码、可执行的发布、物理数据库和可调整的系统建模。
l
配置图(
Deployment Diagram
)展现了对运行时处理节点以及其中组件的配置。描述系统硬件的物理拓扑结构,以及在此结构上执行的软件。
动态图(
Dynamic Diagram
)
l
时序图(
Sequence Diagram
)展现了一组对象和由这组对象收发的消息,用于按时间顺序对控制流建模。
l
协作图(
Collaboration Diagram
)展现了一组对象间的连接以及这组对象收发的消息。它强调收发消息对象的组织结构,按组织结构对控制流建模。
l
状态图(
Statechart Diagram
)展示了一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态间的转移。状态图对于接口、类或协作的行为建模尤为重要。
l
活动图(
Activity Diagram
)显示了系统中从一个活动到另一个活动的流程。活动图显示了一些活动,强调的是对象之间的流程控制。
主要的域
|
视图
|
图
|
主要概念
|
结构
|
静态视图
|
类图
|
类、关联、泛化、依赖关系、实现、接口
|
用例视图
|
用例图
|
用例、参与者、关联、扩展、包括、用例泛化
|
实现视图
|
组件图
|
组件、接口、依赖关系、实现
|
配置视图
|
配置图
|
节点、构件、依赖关系、位置
|
动态
|
状态视图
|
状态图
|
状态、事件、转换、动作
|
活动图
|
活动图
|
状态、活动、完成转换、分叉、结合
|
交互视图
|
时序图
|
交互、对象、消息、激活
|
协作图
|
协作、交互、协作角色、消息
|
模型管理
|
模型管理视图
|
类图
|
包、子系统、模型
|
可扩展性
|
所有
|
所有
|
约束、构造型、标记值
|