UML基础与Rose建模实用教程(第三版)
上QQ阅读APP看书,第一时间看更新

5.1.1 用例图的定义

由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。其中用例和参与者之间的对应关系又叫作通信关联(Communication Association),它表示参与者使用了系统中的哪些用例。用例图是从软件需求分析到最终实现的第一步,它显示了系统的用户和用户希望提供的功能,这有利于用户和软件开发人员之间的沟通。

要在用例图上显示某个用例,可以绘制一个椭圆,然后将用例的名称放在椭圆的中心或椭圆下面的中间位置。要在用例图上绘制一个参与者(表示一个系统用户),可绘制一个人形符号。参与者和用例之间的关系使用带箭头或者不带箭头的线段来描述,箭头表示在这一关系中哪一方是对话的主动发起者,箭头所指方是对话的被动接受者;如果不想强调对话中的主动与被动关系,可以使用不带箭头的线段。如图5-1所示为银行自动取款机(ATM)的用例图。

进行用例建模时,所需要的用例图数量是根据系统的复杂度来衡量的。在一个简单的系统中往往只需要有一个用例图就可以描述清楚所有的关系。但是对于复杂的系统,一张用例图显然是不够的,这时候就需要用多个用例图来共同描述复杂的系统。然而,一个系统的用例图也不应该过多。

对于较复杂的大中型系统,用例模型中的参与者和用例会大大增加,这样的系统往往会需要几张甚至几十张用例图。为了有效地管理由于规模上升而造成的复杂度,对于复杂的系统还会使用包(Package)—UML中最常用的管理模型复杂度的机制。

在用例建模中,有时为了更加清楚地描述用例或者参与者,会用到注释。如图5-2所示,可以对参与者进行注释。

图5-1 ATM用例图

图5-2 银行用户注释图

要注意的是,不管是包(Package)还是注释,都不是用例图的基本组成元素,不过在用例建模过程中可能会用到这两种附加元素。