首先来看一张即时通讯里的一个用例图。
看这张图,第一反应是乱,没条理。再来分析下这张图,管理好友可以理解成一级用例,实际上它是一个虚拟用例,查找好友是个二级用例,以后的操作都是建立在查找好友的基础上的,添加好友、删除好友、更新好友资料是查找好友的扩展。
有一个行业规则,这张图就不满足,即:当一级用例下只有一个二级用例,且二级用例没有共享(指没有其它的父亲),则将这个二级用例(儿子)和一级用例(父亲)合二为一。
这张图还有个优化,因为查找好友是必须做的,所以可以把它和一级用例之间用include表示,意味着做其他操作必须先做此用例。其它几个人是一级用例的扩展,这样就很巧妙、言简意赅的表达出这个用例来。
用例是拿给程序员看的,所以设计人员要把意思表达清楚。