ATM自动取款机系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1.系统概述 (2)
2.需求分析 (2)
3.用例模型 (3)
4.概念模型 (5)
5.行为模型 (6)
6.对象模型 (8)
7.架构分析与设计 (9)
8.数据模型 (11)
9.部署模型 (12)
参考文献 (14)
总结 (15)
一、系统概述
ATM是英文Automatic Teller Machine的缩写,即自动取款机的意识,ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在ATM自动取款机上也可以进行账户查询和改密的业务。作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。
二、需求分析
在ATM机系统中,要为每名用户建立一个帐户,并给他们发放银行卡(银行卡可以提供卡号,用户姓名),账户中存储用户的个人信息,存款信息,取款信息和余额信息,持有银行卡的用户可以通过ATM自动取款机系统进行存款,取款,查询余额的操作。
在使用自动取款机时,需要插入用户的银行卡,并根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面:1.存款,2.取款,3.查询余额,然后系统根据服务类型进行相应操作,若选择取款操作,系统确认取款请求以后,会询问取款数额,系统界面显示输入数额请求,用户输入取款数额,系统接到信息后发出确认取款请求,用户选择确认,系统选择确认后会向点钞机发出钞请求,然后点钞机出钞,系统向用户发出去钞请求,用户取钞以后,系统记录此次取款并自动计算余额,更新帐户信息,然后系统界面进入是否选择继续服务界面,用户点击否,然后系统退出银行卡并提醒用户取卡,用户取走银行卡,至此,取款业务完成。若选择存款业务,系统确认存款请求以后,系统界面进入请放入存款界面,然后用户将存款放入存款口,系统提示点钞机进行点钞,点钞完毕后,系统记录存款操作并更新余额,系统界面显示存款完毕,然后系统界面进入是否选择继续服务界面,用户点击否,则系统退出银行卡并提示用户取卡,用户取走卡后,存款业务完成。若用户选择查询业务,若查询余额,系统确认请求以后根据其账号信息查取余额,并在界面显示余额为多少。
对上述ATM机系统的域描述进行分析,可以获得如下功能性需求:
此软件的设计将实现银行ATM系统的基本功能。ATM系统一次服务一名客户。客户插入一张ATM卡并进入个人数字识别号码(PIN),系统进行验证,通过后客户才能执行一种或更多操作。客户完成所有操作后,退卡。
ATM系统必须向客户提供如下服务:
1、客户可以做一次取款(取款金额必须是100元人民币的整数倍),在现金被提取之前,必须得到银行的许可。
2、客户可以做一次存款,客户把存款量输入到ATM系统中,必须从银行得到许可。
3、客户可以做一次转帐。
4、客户可以进行一次详细账户信息查询。
5、客户通过有效验证后可以更改密码。
6、客户可以在取回磁卡是选择是否得到记录操作的打印凭条。
三、用例模型
创建用例
用例是角色启动的,基于这样的考虑,ATM系统根据业务流程大致可以分为以下的几个用例:
▪客户取钱
▪客户存钱
▪客户查询余额
▪客户转帐
▪客户更改密码
▪客户通过信用系统付款
▪银行官员改变密码
▪银行官员为ATM添加现金
▪银行官员维护ATM硬件
▪信用信用启动来自客户的付款
创建角色—用例关系图
客户的角色—用例关系图一共有6个用例:•转账
•查询余额
•存钱
•付款
•取钱
•修改密码
•客户的用例关系图
账号:在银行中,事务应用的单个账号。账号可以为多种类型,但是至少包括支票和存款。每个顾客可以拥有多个账号。
银行卡:每张卡提供给一个银行客户,授权客户可以使用ATM机访问自己的账号。每张卡包含一个银行代码和一个卡号,银行代码根据信用卡的国际标准进行编码,卡号确定卡能够访问的账户。一张卡不能访问客户的所有账户。每张卡只能有一个持卡人,但是多个复本可能存在,所以必须考虑从不同的ATM 机同时使用相同卡的行为。
客户:拥有银行的一个或者多个账号的人。客户可以包括一个人或者多个人,或者公司。拥有不同银行账号的人被认为是不同的客户。
事务:对单个客户账号的耽搁完整的操作请求。
•关联
储户拥有账户
银行卡访问账户
ATM 读银行卡
ATM与用户交互
•活动图
•取100元人民币的时序图
描述了顾客在ATM机上取款时信息的流动情况。以时间为顺序。因为仅是示例,所以整个过程是没有出现任何故障时的流程,并且只画到了取款结束。通过这个图,我们可以看出消息是如何在系统中不同对象之间进行交互。
通过流程图我们可以很清楚地看到系统是如何工作的,系统各部分之间的信息及控制是如何发送的,整个流程是否合理。流程图对我们的设计起到了很好的帮助作用。
•取100元人民币的协作图
契约CO1:make Withdrawal(取款)
操作:make Withdrawal ( )
交叉引用:用例:查询余额
前置条件:执行“登陆”用例。
后置条件:1.创建了Withdrawal的实例w(创建实例)。
2.w被关联到Account(形成关联)。
3.w的属性被初始化(修改属性)。
六、对象模型
•类图