UML 用例建模
- 用例建模
用例建模的主要功能是表达系统的功能性需求或行为。主要包含用例图和用例描述,其中用例图由参与者、用例、系统边界和箭头组成,用例描述以文本文档的形式详细的描述了用例图中的每个用例。
用例建模时,用例一定要简单,名字清晰,不要太注重于细节,还有要牢记无论考虑的有多么周全,用例总是会有所变化。
- 用例图
用例图描述了系统提供的一个功能单元。用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系,以及系统内用例之间的关系。用例图一般表示出用例的组织关系,要么是整个系统的全部用例,要么是完成具有功能的一组用例。要在用例图上显示某个用例,可绘制一个椭圆,然后将用例的名称放在椭圆的中心或椭圆下面的中间位置。要在用例图上绘制一个角色,可绘制一个人形符号。角色和用例之间的关系使用简单的线段来描述。
-
- 参与者
-
- 用例
用例是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者价值的可观察结果,即参与者想要系统做的事情。
-
- 系统边界
系统边界表示正在建模系统的边界。
-
- 箭头
箭头用来表示参与者与系统通过相互发送信号或消息进行交互的关联关系。
- 用例描述
-
- 简要描述:对用例的角色、目的等的简要描述
- 前置条件:执行用例之前必须满足的条件
- 基本事件流:描述该用例的基本流程,指每个流程都正常运作时所发生的事情
- 其他事件流:表示这个行为或流程是可选或备选的,并不是总要执行他们
- 异常事件流:表示发生某些非正常的事情所要执行的流程
- 后置条件:用例一旦执行后系统所处的状态
- 示例
-
- CD销售系统
-
- 查看乐队CD的销售统计
- 乐队经理
- 查看Billboard 200排行榜报告
- 唱片经理
- 查看特定CD的销售统计
- 索最新的Billboard 200排行榜报告
- 排行榜报告服务
用例图通常用于表达系统或者系统范畴的高级功能。如图所示,可以很容易看出该系统所提供的功能。这个系统允许乐队经理查看乐队CD的销售统计报告以及Billboard 200排行榜报告。它也允许唱片经理查看特定CD的销售统计报告和这些CD在Billboard 200排行榜的报告。这个图还告诉我们,系统将通过一个名为"排行榜报告服务"的外部系统提供Billboard排行榜报告。此外,在用例图中,没有列出的用例表明了该系统不能完成的功能。例如,它不能提供给乐队经理收听Billboard 200上不同专辑中的歌曲的途径,也就是说,系统没有引用一个叫做"收听Billboard 200上的歌曲"的用例。这种缺少不是一件小事。在用例图中提供清楚的、简要的用例描述,项目赞助商就很容易看出系统是否提供了必须的功能。