AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > 软件工程

统一建模语言UML轻松入门之用例

51自学网 http://www.51zixue.net

 

  通讯关联

  通讯关联用于表示参与者和用例之间的对应关系,它表示参与者使用了系统中的哪些用例(或者说系统所提供的用例被哪些参与者使用)。

  通讯关联以箭头或实线表示。若使用箭头,箭头所指方将是对话的被动接受者;如果不强调对话中的主动与被动关系,则可以使用不带箭头的关联实线。

  2.2建立用例模型

  知道了用例与用例图的概念,我们还需要懂得怎样建立用例模型,即怎样找出参与者、用例以及定义用例的过程。一般来说,建立用例模型的步骤为:

  (1)确定谁会直接使用该系统,即参与者(Actor),为了发现参与者,我们可以尝试问如下问题:

  a. 谁/什么使用系统?

  b. 谁/什么从系统获得信息?

  c. 谁/什么向系统提供信息?

  d. 谁/什么支持、维护系统?

  e. 哪些其它系统使用此系统?

  f. 公司的哪个部门使用系统?

  …

  (2)选取其中一个参与者;

  (3)定义该参与者希望系统做什么,参与者希望系统做的每件事成为一个用例,为了发现用例,我们可以尝试问如下问题:

  a. 为什么该参与者想要使用此系统?

  b. 该参与者是否要创建、保存、更改、移动或读取系统的数据?如果是,为什么?

  c. 该参与者是否要通知系统外部事件或变化?

  d. 该参与者是否需要知道系统内部的特定事件?

  …

  (4)对每件事来说,何时参与者会使用系统,通常会发生什么,这就是用例的基本过程;

  (5)描述该用例的基本过程;

  (6)考虑一些可变情况,把他们创建为扩展用例;

  (7)复审不同用例的描述,找出其中的相同点,抽出相同点作为共同的用例;

  (8)重复步骤2-7找出每一个用例。

  参与者检查的参考标准如下:

  (1)是否您已找到所有的参与者?也就是说,是否您已经对系统环境中的所有参与者都进行了说明和建模?

  (2)每个参与者是否至少涉及到一个用例?

  (3)您能否列出至少两名可以作为特定参与者的人员?

  (4)是否有参与者担任与系统相关的相似参与者?如果有,您应该将他们合并到一个参与者中。

  用例检查的参考标准如下:

  (1)用例模型的简介部分简明清晰地概述此系统的目的和功能;

  (2)所有的用例已确定,这些用例共同说明所有的必要行为;

  (3)所有的功能性需求都至少映射到一个用例;

  (4)该用例模型不包含多余的行为,所有的用例都可回溯到某个功能性需求来证明其合理性。

  用例图从总体上大致描述了系统所能提供的各种服务,让我们对于系统的功能有一个总体的认识,仅此还是不够的,我们还需要描述每一个用例的详细信息,即用例规约。用例模型正是由用例图和每一个用例的详细描述――用例规约所组成的。RUP中提供了用例规约的模板,包含以下内容:

  (1)简要说明 (Brief Description):简要介绍该用例的作用和目的;

  (2)事件流 (Flow of Event):包括基本流和备选流,事件流应该表示出所有的场景;

  (3)用例场景 (Use-Case Scenario) :包括成功场景和失败场景,场景主要是由基本流和备选流组合而成的;

  (4)特殊需求 (Special Requirement):描述与该用例相关的非功能性需求(包括性能、可靠性、可用性和可扩展性等)和设计约束(所使用的操作系统、开发工具等);

  (5)前置条件 (Pre-Condition):执行用例之前系统必须所处的状态;

  (6)后置条件 (Post-Condition):用例执行完毕后系统可能处于的一组状态。

  用例规约基本上是用文本方式来表述的,为了更加清晰地描述事件流,也可以选择使用状态图、活动图或序列图来辅助说明(状态图有助于描述与状态相关的系统行为,活动图有助于描述复杂的决策流程,序列图适合于描述基于时间顺序的消息传递)。另外,只要对简洁明了地表达用例有帮助,我们就可以在用例中任意粘贴用户界面、流程的图形化显示方式及其他图形。

 
 

上一篇:项目经理:做好项目开始阶段的九条经验  下一篇:统一建模语言UML轻松入门之类和对象