UseCase学习

概念

用例图是指由参与者、用例,边界以及它们之间的关系构成的用于描述系统功能的视图。

作用

  • 用例图是从用户的角度来描述对信息系统的需求,分析产品的功能和行为。
  • 用例图定义和描述了系统的外部可见行为,是分析、设计直至组装测试的重要依据。
  • 让用户参与前期的系统分析与设计。

组成元素

用例图中主要包括三个构成元素,分别是角色,用例,关系。

  • 参与者
    即使在系统之外,但与系统直接进行交互的对象。参与者可能是人,也可能是另外的一个系统,例如当当前系统与另外一个系统发生交互时,另一个系统可被描述为一个参与者。
    在分析参与者时,需要思考的内容有:
    1)有哪些直接使用系统的人
    2)涉及到的维护人员
    3)使用的外设
    4)与当前系统相连的其他系统
    5)还有哪些角色对当前系统产生的结果感兴趣

  • 用例
    即用户期望系统具备的功能,每一个用例说明一个系统提供给它的使用者的一种服务或功能。在例图中用椭圆圈表示,圈里文字用于描述该用例,一般为动宾短语。
    用例不一定是只属于一个角色的,有些用例是同时属于多个角色的,即被多个角色共享。用例的目标是要定义系统的一个行为,但并不显示系统的内部结构。
    在分析和确定用例时,需要思考以下几个问题:
    1)参与者需要从系统中获取何种功能
    2)参与者是否需要读取、产生、删除、修改或存储系统中的某种信息
    3)系统的状态改变时,是否需要通知参与者
    4)是否存在影响系统的外部事件
    5)系统需要什么样的输入与输出

  • 关联
    即角色与用例之间的关系,在用例图中用线条表示。
    线条用来表示某个角色能够完成什么样的用例。

用例间关系详解

形状 名称 描述
这里写图片描述 包括 包括用例可调用被包括用例。 包含用于显示用例如何分为更小的步骤。 被包括用例位于箭头端。
这里写图片描述 扩展 扩展用例向被扩展用例添加目标和步骤。 扩展仅在某些情况下运行。 被扩展用例位于箭头端。
这里写图片描述 继承 关联专用和通用元素,通用元素位于箭头端。专用用例继承其通用型的目标和参与者,并可添加更多特定目标和步骤来实现这些目标。专用参与者继承其通用型的用例、属性和关联,并可添加更多上述内容。

generalization关系是一种继承关系,子用例将继承基用例的所有行为,关系和通信关系,也就是说在任何使用基用例的地方都可以用子用例来代替,典型的用法就是“支付订单”用例可以有“现金支付”和“信用卡支付”两个子用例。 generalization关系在用例图中使用空心的箭头表示,箭头方向指向基用例。

include为包含关系,当两个或多个用例中共用一组相同的动作,这时可以将这组相同的动作抽出来作为一个独立的子用例,供多个基用例所共享,这比较类似代码开发中将重复的代码抽出来做为一个独立的函数调用。因为子用例被抽出,所以基用例并非一个完整的用例,所以include关系中的基用例必须和子用例一起使用才够完整,子用例也必然后被执行。include关系在用例图中使用带箭头的虚线表示(在线上标注<>),箭头指向子用例。

extend关系是对基用例的扩展,与include相比,最大的区别是extend的基用例是一个完整的用例,即使没有子用例的参与,也可以完成一个完整的功能。extend的基用例中将存在一个扩展点,只有当扩展点被激活时,子用例才会被执行,典型的例子是在查询用例之后,可以有一个扩展的导出用例。extend关系在用例图中使用带箭头的虚线表示(在线上标注<>),箭头指向基用例。

阅读更多
想对作者说点什么? 我来说一句
相关热词

没有更多推荐了,返回首页