建模—用例图

用例图是外部用户(参与者)所能观察到的系统功能的模型图,显示系统中的用例与角色及其相互关系,主要用于对系统、子系统或类的功能行为进行建模。用例是系统提供的高级功能块,角色是与所建系统交互的对象。用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。

用例图的目的:

一个用例模型由一个或者多个用例图和所有的支持文件(诸如用例规范和参与者定义等)所构成。用例规范是大多数用例模型的产物,而用例图充当将需求模型综合在一起的平台。用例模型应当从项目投资者的角度进行开发,而不是从开发者的(通常是技术)观点去开发。
因此我们所建的用例图要实现以下目的:

1. 利用“系统”的观点来分析问题、解决问题。

2. 使用计算机逻辑来模拟描述系统细节的最高形式,包括系统的组成、关系、系统的各种可能状态以及系统中可能产生的过程和过程引起的切换。它能准确地说明客户对他们要开发的应用程序期望有什么样的功能

3. 用例图是最容易被理解的模型,用来描述用户如何使用这个系统、系统和客户以及系统和外部系统之间的交互过程,因此,它是一种在系统完成后能使管理机构、用户和其他相关人员了解其功能的一种框图。

如下图是一个简单的bbs论坛用例图:
clip_image001

用例图常见元素:

Trufun工具在右边选用板中为用例图提供了如下图3-2-1所示使用元素:包(clip_image002[18])、角色(clip_image003)、主题(clip_image004)、用例(clip_image005)、关联(clip_image006)、单向关联(clip_image007)、泛化(clip_image008)、包含(clip_image009)、扩展(clip_image010)、依赖(clip_image011)。下面我们来一一解释这些元素的含义和用途。
clip_image012
图3-2-1 Trufun用例图元素
新建用例图:在Trufun UML2.1工具中,我们新建了UML项目之后,自动在模型浏览器中生成如下图3-2-2所示文件菜单,我们选择模型浏览器的model,右键菜单会出现如下图3-2-3所示,选择新建用例图,或者先对我们要建的模型进行包的归类划分,然后再相应的包中新建用例图。新建用例图之后,会自动在绘图区打开一个用例图的绘图区,我们可以在该绘图区建我们的相关用例模型。如下图3-2-4所示。
clip_image013
图3-2-2 Trufun工具UML项目模型浏览器文件
clip_image014
图3-2-3 Trufun工具新建框图的右键菜单
clip_image015
图3-2-4 用例图绘图区和模型浏览器生成的用例图元素
角色(clip_image003[1]:角色是与所建系统交互的人或物。用例描述系统范围内的一切,而角色描述系统范围外与系统范围内有关的一切,它以一定的方式参与用例的执行过程。角色通常有三大类:系统用户、与所建系统交互的其他系统和时间。
在Trufun系列UML2.x建模工具的用例图绘图区中,角色表现如下图3-2-5所示,选中选用板中的“clip_image003[2]”,在用例图绘图区中点击就可以生成一个角色。并在左边模型浏览器中生成clip_image016。一次生成多个角色可以使用锁定工具,参考前面常用功能技巧之锁定工具使用。
clip_image017
图3-2-5? Trufun建模工具用例图中的角色
角色的属性对话框如下图3-2-3所示。Trufun工具对所有元素属性都提供了【常规】、【文档】、【构造型】、【标签】、【链接】、【高级】六项内容,常规和高级已经在前面第三章常用属性中介绍了,主要是用于对元素命名和颜色字体的设置。
clip_image018
图3-2-6? Trufun工具角色属性框
这里特别说明一下构造型:构造型是在一个已定义的模型元素的基础上构造的一种新的模型元素。构造型的信息内容和形式与已存在的基本模型元素相同,但是含义和使用不同。例如,商业建模领域的建模者希望将商业对象和商业过程作为特殊的建模元素区别开来,这些元素的使用在特定的开发过程中是不同的。它们可以被看作特殊的类—它们有属性和操作,但是在它们与其他元素的关系上和它们的使用上有特殊的约束。 Trufun工具中为角色提供了四种常用的构造型类型,,构造型元素一般在原模型基础上演变而成,有自己的区别符号,如下图所示。
clip_image019?clip_image020
图3-2-7 Trufun角色构造型选择和图形表示
在绘图区中,我们也可以对生成的角色进行其他操作,trufun工具提供了丰富的右键菜单项,如下图3-2-8所示。其中Delete菜单将会把模型从绘图区和模型中完全删除,而从视图删除,则只会从当前绘图区删除,而模型元素仍保留在模型浏览器中。
clip_image021
图3-2-8 Trufun工具绘图区角色右键菜单
主题(clip_image004[1]):在Trufun最新版本中,为用例框图添加了主题元素,用来界定系统边界。一般我们把系统范围内的都放在主题中。系统范围外的部分放在主题之外。Trufun系列UML2.x建模工具的用例绘图区中,主题表现为如下图3-2-9所示。新建主题的操作为:在选用板上的用例图元素中选中主题元素clip_image004[2],在绘图区中点击就可以生成一个主题。该主题框默认绘制比较小,大小可以通过鼠标调节。图3-2-10是相应的模型浏览器中生成的主题元素。同样我们可以建多个主题,但是一般一个用例图有一个主题。
同角色一样,我们可以通过主题的属性框来调整它的名称,前背景色,字体等属性,也可以对它使用右键菜单。
clip_image022
图3-2-9 Trufun 工具生成的用例主题
clip_image023
图3-2-10 Trufun工具模型浏览器生成的用例主题元素
用例(clip_image005[1]):用例是外部可见的一个系统功能,这些功能由系统所提供,并通过与参与者之间消息的交换来表达。用例的用途是在不揭示系统内部构造的情况下定义行为序列,它把系统当作一个黑箱,表达整个系统对外部用户可见的行为。用例一般都放在主题中。在Trufun系列UML2.x建模工具的用例图绘图区中,用例表现如下图3-2-11所示,选中选用板中用例图元素的“clip_image005[2]”,在用例图绘图区中点击就可以生成一个用例。并在左边模型浏览器中生成clip_image024。一次生成多个用例可以使用锁定工具,参考前面常用功能技巧之锁定工具使用。
同角色相同,我们也可以对用例进行属性项的修改,对其进行右键操作,这里特别针对属性中的构造型进行说明。
clip_image025
图3-2-11 Trufun工具中用例图中的用例表示
用例的构造型和图形显示如下图3-2-12所示
clip_image026?? clip_image027
图3-2-12 Trufun工具中提供的用例构造型,左边为属性区,右边为绘图区显示

关联(clip_image006[1]):关联关系描述角色和用例之间的关系。如下图3-2-13所示。表示了角色“用户”和用例“登录”之间的通讯。Trufun工具对选中的元素会自动用不同颜色来标注出该对象相关的流入和流出关系线条。操作步骤,选择关联元素,从角色到用例进行画线操作,就可以在该角色和相关用例之间建立关联关系。在Trufun工具中,我们可以对关联连线进行曲折,如下图3-2-14,让其适应我们模型的布局,使其模型更加清晰和美观。曲折操作,选中关联连线,Trufun工具会自动标出线段的两个端点和中间点,拖动中间点就可以使其变为折线,并在新产生的折线上再产生中间点,因此可以任意曲折。
clip_image028
图3-2-13 角色与用例之间的关联关系
clip_image029
图3-2-14 Trufun工具连线可以任意曲折
单向关联(clip_image007[1]):我们将只在一个方向上存在导航表示的关联,称作单向关联。如下图3-2-15所示,表示角色对用例存在主动的导航关联。同样这里的单向关联线也可以曲折。
clip_image030
图3-2-15 角色到用例的单向关联关系
泛化(clip_image008[1]):UML定义中泛化关系是类元的一般描述和具体描述之间的关系,这里可以用来描述角色之间的关系。如下图3-2-16所示,会员为一般描述,针对会员可以具体到普通会员和vip会员。Trufun中对角色的泛化绘制操作为:选择右边用例图元素中的泛化元素,在绘图区中从具体角色画线到一般角色,就可以实现两个角色之间的泛化关系。泛化连线也可以随意曲折布局。
clip_image031
图3-2-16 Trufun用例图中的角色泛化关系
包含(clip_image009[1]):描述基用例与包含用例之间的关系。说明基用例总是利用包含用例的功能,如下图3-2-17所示,只有登录系统的用户才可以进行评论,也就是评论用例一定是要用到登录信息的。Trufun工具中对用例进行包含关系绘制的操作为:选择右边用例图元素中的包含元素,在绘图区中从基用例向包含用例画线,就可以实现两个用例之间的包含关系。包含连线也可以随意曲折布局。
clip_image032
图3-2-17 Trufun用例图中的用例包含关系
扩展(clip_image010[1]):扩展是指扩展用例与基用例之间的关系,说明如何将扩展用例定义的行为插入基用例定义的行为序列。将基用例中一段相对独立并且可选的动作,用扩展用例加以封装,再让它从基用例中声明的扩展点上进行扩展,从而使基用例行为更简练和目标更集中。基本用例不必知道扩展用例的任何细节,仅为其提供扩展点,事实上基本用例没有扩展也是完整的。
扩展关系有一系列的扩展点名称,其个数与扩展用例中的片断数相等。每个扩展点必须在基用例中定义,但用例实例执行到扩展点所指的基用例的位置,且满足所有扩展用例的控制条件是,实例就转入与扩展用例的片断所对应的行为序列中。但扩展片断执行完毕后,控制从转换点返回初始用例。一个用例可以有多个扩展点,每个扩展点也可以出现多次,通常情况下基本用例不会涉及到扩展用例的行为,只有在特定的条件发生时,扩展用例的行为才被执行,也就是说基本用例执行时,扩展用例可执行也可以不执行。如下图3-2-18所示,下载资料需要扣除用户相应的积分数,如果积分不够,可以通过积分充值的方式完成下载资料。这里积分充值不是每次都要执行的,他的扩展点是下载资料需要的积分值大于用户现有的积分值,也就是用户积分数不够。
Trufun工具中对用例进行扩展关系绘制的操作为:选择右边用例图元素中的扩展元素,在绘图区中从基用例向扩展用例画线,就可以实现两个用例之间的扩展关系。扩展连线也可以随意曲折布局。添加扩展点的操作为:选中绘图区的基用例,右键菜单新建—>扩展点,就可以对基用例新建一个扩展点,右键菜单如下图3-2-19所示。 clip_image033
图3-2-18 Trufun用例图中的用例扩展关系和扩展点
clip_image034
图3-2-19 Trufun工具中对用例新建扩展点右键菜单
依赖(clip_image011[1]):表示两个用例之间有一个用例的变化将影响另一个用例的关系。有的使用者觉得可以用前置条件和后置条件来替代依赖的表示,但是相比于文档的描述,图形应该更加形象化,因此我们可以使用用例之间的依赖关系。如下图3-2-20所示,积分增加是依赖于购买商品。Trufun工具中对用例进行依赖关系绘制的操作为:选择右边用例图元素中的依赖元素,在绘图区中从被动用例向主动用例画线,就可以实现两个用例之间的依赖关系。依赖连线也可以随意曲折布局。
clip_image035[12]
图3-2-20 Trufun工具中用例之间的依赖关系

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值