UML——用例图

来源:互联网 发布:淘宝虚拟类目进不去 编辑:程序博客网 时间:2024/05/18 23:55

一、什么是用例图:

     用例图展现了一组用例、参与者以及他们之间的关系。可以用用例图描述系统的静态使用情况。用例视图是从软件产品外部特性描述的视图,是从用户的角度而不是开发者的角度来描述对软件产品的需求,分析产品所需要的功能和动态行为,因此对整个软件开发过程而言,用例图是至关重要的,他的正确与否直接影响到用户对最终产品的满意程度。

用例图的主要内容:

     

二、基本元素:

      用例图的基本元素有三个:分别是角色、用例、关系。在这里用一张导图来展示:

           

   

    三个组成部分:用例,角色,关系。小人和用例之间的有方向的线段表示关系。角色可以进行用户输入,也可以被动的接受信息。

     如何发现角色:角色可以是直接使用系统的那些人员,包括维护人员,也可以是与本系统相连外设或者系统。在确定系统的参与着时可以通过以下几个问题来考虑:

  1、谁或为什么使用这个系统;

  2、交互中,他们扮演什么角色;

  3、谁安装系统;

  4、谁启动和关闭系统;

  5、谁维护系统;

  6、与该系统交互的是什么系统;

  7、谁从系统中获得信息;

  8、谁提供信息给系统;

  9、有什么事发生在固定事件;

       用例是对一个系统或者一个应用的一种单一的使用方式所作的描述,是关于单个活动在参与系统对话中所执行的处理行为的陈述序列。用例表达了系统的功能和所提供的服务。识别用例时可以通过以下几个问题来判断;

   1、特定参与者希望系统提供什么功能;

   2、系统是否存储和检索信息,如果是,这个行为由那个参与者触发;

   3、当系统改变时,通知参与者吗;

   4、存在影响系统的外部事件吗;

   5、是哪个参与者通知系统这些事件;

三、主要属性:

 1、事件流:描述一个用例在执行者与系统之间的交互过程。这个过程包含多个分支:

        基本流:对用例中常规和预期路径的描述。

        备选流:由于受到其他因素影响,用例执行了其他的路径。如:我们常用的错误处理。

 2、前置条件:是该用例执行的前提条件,用来描述在什么条件下可以开始执行一个事件流。

 3、后置条件;说明用例结束时系统的状态。

四、 用例间的关系:

   1、泛化关系:

      指一个用例可以被特别列举为一个或多个子用例,这被称为用例泛化。这里的泛化跟上片博客中讲到的泛化关系没有什么区别,在这里就不重新详细说明了,下边重点说明包含(include)和扩展(extend)关系。

  2、包含(include)关系:

     包含关系把几个用例的公共步骤分离成一个单独的被包含用例。把包含用例称为客户用例,被包含用例称为提供者用例,包含用例提供功能给客户用例。比如说:我们在进行操作为:修改个人信息、查看个人信息、删除个人信息,在进行这几个操作时都要进过登录才行,那么这个登录就是个被包含用例,用例图应该这样画:


  3、扩展(extend)关系:

       扩展关系是把新行为插入到已有的用例的方法。扩展方法为处理异常或构建灵活系统框架提供了一种有效的方法。例如:我们借的图书馆的书,在归还时如果超过一个月就要交钱。那在系统的体现就是“收钱”是“归还”的一个扩展用例。基础用例是“归还”,画图如下:

   



   上边是用例图的一些基本的知识总结,下边附上一幅自己画的机房收费系统的用例图,如果有什么不多的地方,欢迎大家指正!

  

      



  

      

      

   

0 0