摘要:用例图是可以帮我们搞清楚这个产品是谁在用,通过这个系统能做什么事情。
基本语法
小人(actor,执行者)
执行者可能是人也可能是系统。如果是人的话,可以称之为角色;若是系统,可以将该系统画成执行者就可以了。
圈圈(use case,用例)
圈圈里面的文字是动词加名词,这个就代表了系统能做什么事情。
大框框(system boundary,系统边界)
这个框仅框住了用例,没有框住执行者,这个就叫系统边界。
线条(association,关联)
线条指的是用例和角色之间的线条,一般有三种,无箭头的、指向用例的箭头、指向执行者的箭头。一般情况下会有俩种解释,一种是数据流向,还有一种是谁启动谁。如下图:
进阶语法
用例的进阶语法主要包括继承、包含、扩展
(1)包含(include)
包含一般有两种用法,一种是以树的方式组织各种用例,用包含来组织好父子用例,子用例可以再次包含自己的子用例,这样层次分明。如下图:
还有一种是某些用例的一部分可以抽离出来成为子用例,该子用例同时也被其他用例包含。如下图:
(2)扩展(extend)
扩展的意思就是在某用例的基础上,还能做什么事情。例如用户在查看报表的时候,还可以导出报表,打印报表。如下图:
(3)继承
继承与类图中的继承性质是一样的,但是一般在画用例图的时候很少用,都会用其他的方式替代,因为不太好理解,而且还会降低沟通效率。如下图:
建议:
首先,在能全面理解的基础上,越精简越好;
通过使用扩展和包含来细化用例图,但要灵活把握,用例图只是一种表达方式,必要时可以结合其他方式来表达(结构图等等)。