前言
用例图是UML九种图中与用户联系最多的一种图,它主要表达的是系统对外提供给用户的服务,应用于需求分析阶段,从角色-功能的角度介绍项目。如果说“类”是系统的“里子”,用例就是系统的“面子”,它不需要过多的专业术语,越浅显易懂,用户一看就明白,那就是一个好的用例图。
内容
用例图主要由三部分组成:角色、用例和关系。
角色
角色就是功能的执行者,如果单纯把角色理解成“人”,那就大错特错了,角色既可以是人,也可以是事或者物。也就是说,它可以是用例的启动着,即主要服务对象,例如小明开门,小明就是执行开门动作的启动者,即小明就是该动作的角色。它也可以是扮演支持角色的支持者,例如自动柜员机(ATM)为例,一般储户是启动者,ATM背后联机的银行主机则是支持者。角色用一个人形表示。
用例
用例就是用户可以执行的功能,它用一个小椭圆形表示。这里需要注意的是用例要包含一条“基本流程”,用来描述正常的使用过程。有时也会包括数条“替代流程”,用来描述错误的、异常的状况。仍然用ATM机取钱举例,客户的用例(功能)为取款、存款、转账、查询余额、修改密码和还款。
关系
关系包括联系(associate)、包含(include)以及扩展(extend)。
联系:是指某某与某某有关系,例如取款过程中客户与取款用例、存款用例都是有联系的。
包含:就是大包小的意思,大用例的流程包含了小用例的流程,图标用一条带箭头的虚线表示,虚线上方有“include”标识。
扩展:相对于包含,扩展的意思就是小扩大的意思,即小用例的流程扩展了大用例的流程。图标同样用一条带箭头的虚线表示,虚线上方有“extend”标识。
下面这张图可以很好地表示包含和扩展的关系:
总结
用例图是我对机房收费系统画的第一个UML图,下面展示一下我画的用例图,。都是个人理解,有不同意见欢迎和我交流!
感谢您的阅读!