统一建模语言UML是用一组视图反应系统的各个方面,以完整地描述系统,每个视图代表系统描述中的一个抽象,显示系统中一个特定的方面。
UML中有四种关系:依赖、关联、泛化和实现:
- 依赖(dependency):依赖是两个事物间的语义关系,其中一个事物(独立事务)发生变化会影响另一个事务(依赖事务)的语义。在图形上,把一个依赖画成一条可能有方向的虚线。
- 关联(association):关联是一种结构关系,它描述了一组链,链是对象之间的连接。聚集(aggregation)是一种页数类型的关联,它描述了整体和部分之间的结构关系。在关联上可以标准重复度(multiplicity)和角色(role)。
- 泛化(generalization):泛化是一种特殊/一般关系,特殊元素(子元素)的对象可代替一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。
- 实现(realization):实现是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。
UML设计视图包含了类、接口和协作,其中设计视图的静态方面由类图和对象图表现;动态图方面由交互图、状态图和互动图表现。
UML提供了九种不同的图:
(1) 用例图(Use Case Diagram),描述系统功能;
(2) 类图(Class Diagram),描述系统的静态结构;
(3) 对象图(Object Diagram),描述系统在某个时刻的静态结构;
(4) 组件图(Component Diagram),描述了实现系统的元素的组织;
(5) 配置图(Deployment Diagram),描述了环境元素的配置,并把实现系统的元素映射到配置上;
(6) 状态图(State Diagram),描述了系统元素的状态条件和响应;
(7) 时序图(Sequence Diagram),按时间顺序描述系统元素间的交互;
(8) 协作图(Collaboration Diagram),按照时间和空间顺序描述系统元素间的交互和它们之间的关系;
(9) 活动图(Activity Diagram),描述了系统元素的活动;
在软件资格考试中,通常下午考试第三道答题都是涉及用例图和类图,因此,这里我们重点分析类图和用例图。、
UML用例图
用例图是指由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的静态视图。用例图(UserCase)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
用例图由参与者(Actor)、用例(Use Case)、系统边界、箭头组成,用画图的方法来完成。参与者不是特指人,是指系统以外的,在使用系统或与系统交互中所扮演的角色。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。