UML之用例图

来源:互联网 发布:韩国作曲家甘雨知乎 编辑:程序博客网 时间:2024/06/04 04:38

引言:

   上篇博客大概总结了一下UML的九种图,到现在差不多也有一个月的时间了,之后每个图实践了一遍,又有一些的新的感触,所以再分别来详细介绍介绍!

概述:

    用例图(Use Case Diagram)是由开发人员与用户经过多次商讨而共同完成,用于定义系统的功能需求,描述了系统的参与者与系统提供用例之间的连接关系。一般情况下,包括四个基本组成部分:用例、参与者、系统和关系。

用例:

    用例是用户期望系统具备的功能,定义了系统的行为特征。
    用例的目标是定义系统(包括一个子系统或整个系统)的一个行为,但并不显示系统的内部结构。每个用例说明了一个系统提供给它的一种服务(用例即系统要实现什么样的功能)
例:去银行取钱的时候,包括有身份验证、提取现金等用例。
    用例的名称可以写在椭圆内部,也可以在外部,通常写在内部。注意:不要在一个用例图中使用两种命名方法,即用例名写在椭圆之外和椭圆之内。
   
    用例名可以是带数字、字母和除保留符号--冒号以外的任何标点符号的任意字符串。

参与者:

   参与者用于表示系统的使用对象。可以是一个人、一个计算机系统、另一个子系统或另外一种对象。
    例:计算网络系统的参与者可以包括操作员、系统管理员、数据库管理员和普通的用户,也可以有非人类参与者,如网络打印机。
    一个用例可以被一个或多个参与者使用,一个参与者也可以与一个或多个实例交互。
            

系统:

   系统是用例图的一个重要组成部分,系统是为用户执行某类功能的一个或多个软件构件。
    系统在用例图中用长方框表示,系统的名称写在方框上面或方框内,方框内包含了该系统中用符号标识的用例。
    系统边界用来说明用例图应用的范围。准确定义系统的边界并不是很容易的,因为有些情况下,不能严格划分那些是系统完成的。

关系:

   1、 泛化:
    泛化可以应用于参与者和用例中来表示子项从父项继承的功能,而且泛化还表示了父项的每个子项都有略微不同的功能或目的,以确保自己的唯一性。

泛化用例:用例泛化是指一个用例(子用例)和另一用例(父用例)之间的关系,其中的父用例描述了子用例与其他用例共享的特性,而且这些用例是有着同一父用例的。

泛化参与者:泛化后的参与者也在系统中扮演较为具体的角色。
2、包含(include)

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



3、扩展(extend)

    是对基用例的扩展,基用例是一个完整的用例,即使没有子用例的参与,也可以完成一个完整的功能。extend的基用例中将存在一个扩展点,只有当扩展点被激活时,子用例才会被执行。 extend关系在用例图中使用带箭头的虚线表示(在线上标注<<extend>>),箭头从子用例指向基用例。


总结

隔了这么长回头去看,发现好多东西已经很生疏了,这几种关系又混淆了,现在弄明白了,知识需要不断回顾。





       
0 0
原创粉丝点击