介绍
用例图是表示一个系统中用例与参与者之间关系的图,它描述了系统中相关用户和系统对不同用户提供的功能和服务。
对于用户而言,最关心的是一个系统具有的功能与呈现的外部特性,而并不十分关注实际过程及实现方法本身。用例视图就相当于从用户的视角来描述和建模整个系统,分析系统的功能和行为。
用例视图中主要元素包括参与者,用例以及元素之间的关系,此外,用例视图还可以包括注释和约束,也可以使用包将图中的元素组合成模块。
用例视图用于展示参与者和用例
用例视图的组成元素
参与者
描述了与系统交互的外部用户或外部事物。
参与者位于系统边界之外,而不是系统中的一部分。参与者是从现实世界中与系统有交互的事物中抽象出来的。
参与者是从现实世界中抽象出来的一种形式,却不一定确切的对应现实中的某个特定对象,一个现实中的对象可以根据不同目的抽象成多个参与者,多个现实中的对象也可以按照对系统的相同目的抽象为一个参与者。比如,一个人可以是一个网站的管理员和普通用户,那么可以将他抽象为两个参与者;一个网站有多个用户,但他们对网站的操作和权限等是一样的,那么他们全体被抽象为一个参与者。
表示法
参与者有两种表示方法:
- 人形图
- 使用带有
<<actor>>
构造型的矩形表示。
一般情况下,使用人形图表示人,用矩形图表示事物
如何确定参与者
可以重点考虑如何与系统交互这一问题便于进一步确定系统的边界。可以从以下几个角度考虑:
- 为系统提供输入的人或事物
- 接收系统输出的人或事物
- 需要接入的第三方系统或设备
- 时间是否会触发某些事件?
- 负责支持或维护系统中信息的人
用例模型
用例模型是系统既定功能及系统环境的模型,可以作为客户和开发人员之间的契约。用例是贯穿了整个系统开发的一条主线,用例模型即为需求工作流程的结果,可以当作分析设计工作流程以及测试工作流程的输入使用。
用例
用例是整个开发过程中的驱动元素