EA&UML日拱一卒 用例图开篇

2021-12-31 19:13:19 浏览数 (1)

创建用例图

在Package节点上调出上下文菜单。

选择【Add Diagram...】

选择【UML Behavioral】分类,选择【Use Case】图面类型。

上图中红框部分就是用例图常用的图形要素。

用例图基本要素

用例

用例是捕获建模主体需求的一种手段,一般用来描述主体应该做什么。作为用例描述对象的主体可以与一个或多个参与者之间进行协作。用例定义主体的行为而不必考虑其内部结构。这些行为涉及之间的相互作用参与者和主体,可能会导致主体状态的变化以及与其环境的通信。一个用例可以包括其基本行为的可能变化,包括异常行为和错误处理。

参与者

参与者是可能与主题发生交互的用户和任何其他系统。

边界

边界用于表示作为建模对象的主体的范围。所有的参与者都应该处于边界外侧。

第一个用例

假设我们在为自动提款机的取款功能建模,这个功能的概要如下:

代码语言:javascript复制
显示待机画面
检测用户插入银行卡,执行进卡动作
显示语言选择画面
等待并处理用户选择语言
提款机显示用户认证画面
等待用户输入密码并按下确定按钮
如果密码错误,提示重新输入密码
如果密码正确,显示该银行卡类型的有效服务
根据用户选择结果进入取款额输入画面
接受用户输入的取款额
与银行系统服务器通信,如果余额不足,提示用户重新输入
如果余额充足,进入处理中画面,同时将纸币搬运到出钞口
打开出钞口挡板
等待用户取走钞票
关闭出钞口挡板
显示是否需要其他服务画面
如果用户选择打印凭条,进入打印中画面,完成后返回是否需要其他服务画面
如果用户选择其他服务,进入对应服务画面
如果用户选择取卡,执行出卡动作,并提示客户取卡
检测用户取卡后显示待机画面
超过30秒没有取卡,执行吞卡动作

由于我们是在对提款机建模,因此这段脚本每一句都是提款机视角。这点需要注意。

添加边界

选择工具条中的

图标之后,在绘图区双击鼠标。

输入建模对象的名称:ATM。

这个矩形框就是ATM的边界。

添加用例

选择工具条中的

并在绘图区双击鼠标之后,选择【General】分页,输入用用例名:取款。

选择Scenarios分页之后,首先输入如下基本路径。

代码语言:javascript复制
显示待机画面
检测用户插入银行卡,执行进卡动作
显示语言选择画面
等待并处理用户选择语言
提款机显示用户认证画面
等待用户输入密码并按下确定按钮
显示该银行卡类型的有效服务
根据用户选择结果进入取款额输入画面
接受用户输入的取款额
与银行系统服务器通信,执行取款命令
进入处理中画面,同时将纸币搬运到出钞口
打开出钞口挡板
等待用户取走钞票
关闭出钞口挡板
显示是否需要其他服务画面
如果用户选择打印凭条,进入打印中画面,完成后返回是否需要其他服务画面
如果用户选择取卡,执行出卡动作,并提示客户取卡
检测用户取卡后显示待机画面

和基本路径相比,这段描述去掉的分支和异常处理。结果如下:

按照相同的方式,输入替代路径和异常路径:

名称

类型

内容

密码错误

Exception

如果密码错误,提示重新输入密码

余额不足

Execption

如果余额不足,返回取款额输入画面

打印凭条

Alternate

如果用户选择打印凭条,进入打印中画面,完成后返回是否需要其他服务画面

办理其他业务

Alternate

如果用户选择其他服务,转入服务选择画面

超时吞卡

Execption

超过30秒没有取卡,执行吞卡动作

脚本输入结果如下:

用例添加完成后画面的样子。

添加参与者

选择

图标之后在画面中ATM边界之外适当的位置添加两个参与者:客户和银行系统。

添加使用关系

选择

图标之后分别在客户和取款用例之间,取款用例和银行系统之间连线。

完成!

0 人点赞