UML中的图主要有九种:用例图、类图、对象图、状态图、活动图、时序图(顺序图)、协作图、组件图和部署图(配置图)。
第一部分 看图说话
第二部分 各图介绍
一、用例图( Use Case Diagram)
用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元
二、类图(Class Diagram)
类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和方法)。
三、对象图( Object Diagram )
对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类
四、顺序图(Sequence Diagram)
顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。顺序图是用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或引起状态转换的触发事件。
五、协作图(CollaborationDiagram)
协作图描述对象间的协作关系,协作图跟顺序图 相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系。协作图是表示一个类操作的实现。
协作图与顺序图对比:
1、 协作图和顺序图都表示出了对象间的交互作用,但是它们侧重点不同。
2、 顺序图清楚地表示了交互作用中的时间顺序(强调时间),但没有明确表示对象间的关系。
3、 协作图清楚地表示了对象间的关系(强调空间),但时间顺序必须从顺序号获得。
4、 协作图和顺序图可以相互转化。(通过F5)
六、状态图(State ChartDiagram)
状态图是一个类对象所可能经历的所有历程的模型图。状态图由对象的各个状态和连接这些状态的转换组成
七、活动图(ActivityDiagram)
活动图是状态图的一个变体,用来描述执行算法的工作流程中涉及的活动,活动图描述了一组顺序的或并发的活动。
活动图与状态图的对比:
活动图被设计用于描述一个过程或操作的工作步骤;状态图描述一个对象的状态以及状态改变,而活动图除了描述对象状态之外,更突出了它的活动。
活动图与流程图的对比:
1、流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系;而活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。
2、活动图能够表示并发活动的情形,而流程图不能。
3、活动图是面向对象的,而流程图是面向过程的。
八、组件图(ComponentDiagram)
构件图为系统的构件建模型,构件即构造应用的软件单元,还包括各构件之间的依赖关系,以便通过这些依赖关系来估计对系统构件的修改给系统可能带来的影响。
九、部署图(DeploymentDiagram)
部署视图描述位于节点实例上的运行构件实例的安排。节点是一组运行资源,如计算机、设备或存储器。视图允许评估分配结果和资源分配。
第三部分适用范围
一、需求阶段:用例图、活动图、交互图、状态图;
二、分析阶段:类图、活动图、交互图、状态图;
三、设计阶段:类图、包图;
四、实现阶段:构件图、部署图;