10.3 UML

10.3.1 UML

统一建模语言(Unified Modeling Language)是一种用来进行分析和设计的图形化语言。UML是一种建模语言,而不是一个开发过程。

UML有3种基本的构造块:事物、关系和图。

  • 事物:事物是对模型中最具有代表性的成分的抽象,包括结构事物(例如类)和行为事物(例如交互)。

  • 关系:关系用来把事物结合在一起,包括依赖、关联、泛化和实现关系。

  • 图:图聚集了相关的事物及其关系的组合。

10.3.2 UML的图

UML1.x提供9种图

  • 用例视图:
    用例图(Use Case Diagram)
  • 静态视图:
    类图(Class Diagram)
    对象图(Object Diagram)
  • 行为视图:
    协作图(Collaboration Diagram)
    状态图(Statechart Diagram)
    序列图(Sequence Diagram)
    活动图(Activity Diagram)
  • 实现视图:
    组件图(Component Diagram)
    配置图(Deployment Diagram)

UML2.x提供14种图:

  • 结构性视图:
    类图,对象图,包图(Package Diagram)
    组件图,部署图
    剖面图(Profile Diagram)
    复合结构图( Composite Structure Diagram )
  • 行为式视图:
    活动图,状态机图(State Machine Diagram),用例图
  • 交互性视图:
    序列图,通信图(Communication Diagram)
    交互概览图( Interaction Overview Diagram )
    时序图(Timing Diagram)

用例图

用例图给出系统的用户视图:它显示了用户是如何与系统通信的。
用例图的元素:
系统、用例、行动者、关系。

类图

类图表明系统的静态结构,它显示了类的特性和类间的关系。
类图的元素:
属性和类别,方法,关联,泛化。

对象图

类图的一个实例,描述系统在具体时间点上所包含的对象以及各个对象的关系。

协作图

描述对象之间的合作关系,侧重对象之间的消息传递。

状态图

状态图用来显示单个对象在状态上的变化。

序列图

序列图显示了对象(或行动者)间在一段时间内的交互。

活动图

活动图显示了一个复杂操作的分解或一个过程分解成一组简单的操作和过程。

组件图

组件图显示了软件的组成部分(组件)和它们之间的依赖关系。

部署图

部署图说明物理组件要如何部署到实际计算机中。