ATM用例描述及用例分析.docx
文本预览下载声明
PAGE11 / NUMPAGES11
问题描述:
银行有很多ATM机分布在城市的各个地方,并通过广域网与中心服务器相连;
每台ATM机都有读卡器、出钞机、键盘、显示器和收据打印机;
顾客可以通过ATM机从自已的银行帐户中取现金、查询余额、转帐;
顾客把ATM卡扦入读卡器就启动一个事务。在卡背面磁条中保存有ATM卡号、启用日期和截止日期,读卡器识别出卡后,系统将确认ATM卡是否过期;然后用户输入个人密码并和系统保存的个人密码匹配比较以检验是否正确或因挂失而禁用。输入密码时最多可以尝试三次,连续三次输入关败, ATM卡将被没收,若ATM卡已挂失,也会被没收;
如果用户输入个人密码通过确认,ATM将提示客户可做取款、查询余额、转帐选择。在开始取款前,系统要检查客户帐户是否有足够的钱,是否超过每天最高取款限额、出钞机是否有足够的现金;如果此事务可行,出钞机将按客户的要求的数额出钞、打印收据并退还ATM卡;任何时侯客户都可能取消事务,事务一旦终止,卡就被退出;客户记录、帐户记录都将保存在服务器中。
为了给ATM机的出钞机装入现金以及进行日常维护,操作员可以启动或关闭ATM机。
UML ATM机结构类图
UML表达的问题域的概念静态模型-实体类
UML表达的 ATM机用例图
《软件需求规格说明书》用例描述
用例名称验证客户用例编号UC1版本创建人创建日期优先级评审人评审日期复杂度用例简要描述:系统确认客户的PIN(Personal identification number )
用例参与者:ATM客户
包含用例:无
用例触发事件:当其它用例包含本用例时。
用例前置条件: ATM机处于空闲状态,并显示“欢迎”消息。
用例基本事件流:
顾客把ATM卡扦入ATM读卡器;
如果系统识别出卡,读入卡的号码;
系统依据卡的号码打开客户帐户;
系统提示客户输入PIN;
客户输入PIN号;
如果卡是有效的,系统检查客户输入的PIN是否与系统保存的PIN一致;
系统检查卡的截止日期和卡是否已挂失;
如果PIN一致,系统提示客户选择事务类型-取款、查询、转帐;
备选事件流:
2.1如果系统不能识别卡,则退还ATM卡;
6.1如果客户输入的PIN与系统保存的PIN不一致,系统提示客户重新输入PIN号;
6.2如果客户输入三次PIN不一致,则没收ATM卡;
6.3如果客户选择取消,则系统取消事务并退还ATM卡;
7.1如果系统判定卡已过期,则没收ATM卡;
7.2如果系统判定卡已挂失,则没收ATM卡;
用例后置条件: 客户PIN已确认。
条件约束:
业务规则:
存在的问题:
验证客户路经活动图
UML表达的验证客户用例交互顺序图
验证客户用例交互矩阵-类封装
顾客读卡器键盘/显示器帐户
验证客户扦卡识别卡 提示客户输入PIN打开客户帐户输入PIN读卡号提示客户选择事务类型验证PIN检查卡的截止日期检查卡是否已挂失
顺序图作用:
1.作为交互分析的工具和方法;
2.识别出用例中的类;
3.分析交互的时间顺序;
4.分析交互消息;
5.进行类操作(消息)封装,与类的职责进行验证;
《软件需求规格说明书》用例描述
用例名称取款用例编号UC2版本创建人创建日期优先级评审人评审日期复杂度用例简要描述:客户从银行合法的帐户中取出一定数目的现金。
用例参与者:ATM客户。
包含用例:验证客户。
用例触发事件:
用例前置条件: ATM机处于空闲状态,并显示“欢迎”消息。
用例基本事件流:
1.包含用例:验证客户;
2.客户选择取款,
3.系统提示客户输入金额;
4.客户输入金额;
5.系统检查客户帐户足否有足够的金额,是否超出每日可取款最高限;
6.如果检查通过,从客户帐号中扣钱;
7.出钞机验钱;
8.出钞机出钞;
9.打印收据;
10.系统退还ATM卡;
11.系统显示“欢迎”消息
备选事件流:
1.1如果系统判定输入帐号不合法,显示出错消息,退还ATM卡;
1.2如果系统判定帐户余额不足,显示歉语,退还ATM卡;
1.3如果系统判定客户输入的取款数超过每日限额,显示歉语,退还ATM卡;
1.4如果ATM机中没有足够的现金,显示歉语,退还ATM卡并关闭ATM机;
用例后置条件:客户取到现金
条件约束:
业务规则:
存在的问题:
UML表达的取款用例交互顺序图
ATM状态图
实体类封装验证矩阵
客户读卡器键盘/显示器帐户出钞机打
显示全部