用例图可以帮助需求工程师和项目成员搞清楚项目的大概需求,与敏捷中的用户故事有相似之处。
在做用例图的时候往往会问这两个问题:
1)这个系统用户是谁?
2)用户通过这个系统能做什么?
3)系统是怎样解决了这个用户需求?
1.用例图的基本语法:
1)小人:执行者Actor
2)圈圈:用例Use Case
3)大框:系统边界System Boundary
4) 线条:关联Association,分为有向的和无向的
2. 角色的继承:为了简化用例图,对于各个角色共有的用例描述一次即可,不要多次描述或每个角色的连线都连在用例上。我们可以用角色的继承来表示。可以帮助我们看清角色之间的关系,大大简化用例。
3.用例图的Include:系统的数据库的CRUD操作,是系统中用例的大部分。用例可以叫做“管理**”,用虚箭头,连线上用《include》标注。管理菜式可以是完全分解也可以是部分情调分解。
4.用例的Extend:表示在什么基础上做什么事情,连线用虚线标记,指向基础用例,连线上用《extend》标注。在用例图上使用较多。可以很好的表现用户的使用效果和用户体验,功能层次。
5.用例的继承:表示用例继承一个抽象的用例,这个对用户很难理解,在使用的过程当中很少使用。连线是一个继承的箭头。这里不多说明了。
6.用例的粒度控制:
1)用户全面理解的接触上,越精简越好。
2)用客户的语言保证用户能看懂。
3)可通过角色继承,include,extend。
4)基于用户的想法,又要高于用户的想法,,不要用户怎么想就直接导出用例。
7. 用例图制作的心得:
1)先画出宏观纬度的用例图,用系统边界将系统划分出来。
2)对高度概括的用例,再细分画出相应的用例。
3)通过包对用例进行适当的分类。
4)当角色比较多的时候,先单独画出角色和他们之间的关系,并用表格说明角色在本系统期望解决的问题和关注点等。