ATM自动取款机系统分析与设计实验报告
- 格式:doc
- 大小:258.50 KB
- 文档页数:20
目录一、引言 (2)1.1编写目的 (2)1.2参考资料 (2)二、需求规约 (3)2.1业务描述 (3)2.2需求分析 (3)三、数据库环境说明 (5)四、逻辑设计 (6)五、物理设计 (7)5.2数据库表物理设计 (7)表[1]:交易信息表 (7)表[2]:用户信息表 (8)表[3]:银行卡信息表 (9)5.3视图的设计 (10)5.4存储过程及触发器的设计 (10)六、安全性设计 (18)6.1 防止用户直接操作数据库的方法设计 (18)七、数据库设计的测试说明 (19)7.1测试用例 (19)7.2设计结论 (24)八、实训总结 (25)一、引言1.1 编写目的本文档ATM自动取款机系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,使开发人员能据此开发该系统。
1.2 参考资料二、需求规约2.1 业务描述某银行拟开发一套ATM取款机系统,实现如下功能:1、开户(到银行填写开户申请单,卡号自动生成)2、获取密码(给出卡号,获取相应密码)3 解除挂失(给出卡号,解除挂失)4、修改密码(给出卡号,将旧密码修改为新密码)5、挂失(给出卡号,登记挂失信息)6、催款提醒(帐号余额小于等于某个值(比如100)时返回客户的姓名及联系电话(业务员可以催款提醒用户)。
7、周交易(查询某卡前一周的交易信息)8、查询最高消费(查询消费最高的卡号)9、查询挂失卡号(查看所有挂失的卡号)10、统计余额盈利(统计银行的资金流通余额和盈利结算。
计算公式为:资金流通余额=总存入量-总支取量盈利结算=总支取量*0.008-总存入量*0.003)11、存款取款存取过程(实现存款取款功能。
取款要求输入密码)12、转账交易存储过程(某卡上的款转帐到另一卡上。
要求事务处理2.2 需求分析根据银行方面取得的信息资料,得出系统的信息需求和处理要求,得到设计所需的需求信息。
这些信息是选择了对数据库设计直接有用的信息。
ATM自动取款机系统的分析与设计可行性研究报告ATM自动取款机系统的分析与设计可行性研究报告目录1.引言 (2)1.1编写目的 (2)1.2项目背景 (2)1.3定义 (2)1.4参考资料 (2)2.可行性研究的前提 (3)2.1要求 (3)2.2目标 (3)2.3条件、假定和限制 (3)2.4可行性研究方法 (3)2.5决定可行性的主要因素 (4)3.对现有系统的分析 (4)3.1处理流程和数据流程 (4)3.2工作负荷 (4)3.3费用支出 (4)3.4人员 (5)3.5设备 (5)3.6局限性 (5)4.所建议技术可行性分析 (5)4.1对系统的简要描述 (5)4.2处理流程和数据流程 (5)4.3与现有系统比较的优越性 (6)4.4采用建议系统可能带来的影响 (6)4.5技术可行性评价 (7)5.所建议系统经济可行性分析 (8)5.1支出 (8)5.2效益 (8)5.3收益/投资比 (9)5.4投资回收周期 (9)5.5敏感性分析 (9)6.社会因素可行性分析 (9)6.1法律因素 (9)6.2用户使用可行性 (9)7.其他可供选择的方案 (9)8. 总结 (10)1.引言1.1编写目的针对银行业务种类繁多、客户需求量大等现象,为了减少银行人员的工作任务,方便客户。
银行投资研发ATM终端机使用户自己就可以实现小额取款、存款等业务。
同时支持其他业务的扩展,现在从技术、经济、社会等因素对此项目进行可行性分析,编写此文档供项目经理决定是否要实施此项目。
1.2项目背景待开发项目名称:ATM自动取款机系统的分析与设计。
项目提出者:ATM机系统是应呼和浩特建设银行网络建设和改造需要,为客户提供方便、迅速、便捷的自动取款业务提出了ATM机自动取款系统设计方案。
项目兼容现有银行管理系统。
1.3定义专业术语与缩略词帐号:在银行中,事物应用的单个帐号。
帐号可以为多种类型,但是至少包括支票和存款。
每个顾客可以拥有多个帐号。
ATM机系统分析与设计班级:07软件工程学号:071164009姓名:闫亚培第一章系统需求ATM机系统的域描述如下:在ATM机系统中,要为每名用户建立一个帐户,并给他们发放银行卡(银行卡可以提供卡号,用户姓名),账户中存储用户的个人信息,存款信息,取款信息和余额信息,持有银行卡的用户可以通过ATM自动取款机系统进行存款,取款,查询余额的操作。
在使用自动取款机时,需要插入用户的银行卡,并根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面:1.存款,2.取款,3.查询余额,然后系统根据服务类型进行相应操作,若选择取款操作,系统确认取款请求以后,会询问取款数额,系统界面显示输入数额请求,用户输入取款数额,系统接到信息后发出确认取款请求,用户选择确认,系统选择确认后会向点钞机发出钞请求,然后点钞机出钞,系统向用户发出去钞请求,用户取钞以后,系统记录此次取款并自动计算余额,更新帐户信息,然后系统界面进入是否选择继续服务界面,用户点击否,然后系统退出银行卡并提醒用户取卡,用户取走银行卡,至此,取款业务完成。
若选择存款业务,系统确认存款请求以后,系统界面进入请放入存款界面,然后用户将存款放入存款口,系统提示点钞机进行点钞,点钞完毕后,系统记录存款操作并更新余额,系统界面显示存款完毕,然后系统界面进入是否选择继续服务界面,用户点击否,则系统退出银行卡并提示用户取卡,用户取走卡后,存款业务完成。
若用户选择查询业务,若查询余额,系统确认请求以后根据其账号信息查取余额,并在界面显示余额为多少。
对上述ATM机系统的域描述进行分析,可以获得如下功能性需求:此软件的设计将实现银行ATM系统的基本功能。
ATM系统一次服务一名客户。
客户插入一张ATM卡并进入个人数字识别号码(PIN),系统进行验证,通过后客户才能执行一种或更多操作。
ATM取款机模拟系统程序设计报告完成版一、需求分析随着科技的发展和人们对金融服务的需求增加,ATM取款机已成为现代社会的重要设备之一、考虑到ATM取款机操作流程相对简单,并且具有实际应用价值,本报告旨在设计一个ATM取款机的模拟系统。
1.1系统功能需求本系统的功能需求包括:1)根据用户输入的账户信息验证用户身份;2)提供取款、查询余额、修改密码等基本操作;3)通过账户信息连接数据库,更新用户账户余额;4)在操作过程中,根据用户输入提供相应的错误提示信息。
1.2系统性能需求本系统的性能需求包括:1)快速响应用户的操作,保证系统的实时性;2)安全性,确保用户信息的机密性;3)友好的用户界面,方便用户操作。
二、系统设计2.1系统结构设计本系统主要由客户端和服务器端两个部分组成。
客户端负责与用户进行交互,接收用户的操作指令并发送给服务器端;服务器端负责处理用户操作,并通过数据库更新用户账户余额。
2.2数据库设计本系统使用关系型数据库,数据库表设计如下:1)用户表:包括账户号、姓名、密码等字段;2)账户表:包括账户号、余额等字段。
2.3系统功能设计本系统包括以下功能模块:1)用户身份验证模块:根据用户输入的账户信息,验证用户身份。
2)取款模块:根据用户输入的取款金额,更新用户账户余额。
3)查询余额模块:根据用户账户号,从数据库中查询用户账户余额。
4)修改密码模块:根据用户输入的新密码,更新用户密码信息。
三、系统实现3.1使用的技术本系统使用C++语言实现。
使用C++的面向对象编程思想,将不同功能模块封装成不同的类,提高代码的可读性和可维护性。
3.2类设计本系统主要包括用户类、取款类、查询类和密码类等。
不同的类负责不同的功能模块。
3.3程序流程程序主要分为以下几步:1)用户输入账户信息;2)系统验证用户身份;3)根据用户选择的操作,调用不同的功能模块;4)功能模块从数据库中查询或更新数据,根据操作结果给出相应的反馈信息;5)用户按需继续进行操作或退出系统。
ATM自动取款机系统(界面需求分析报告)第一篇:ATM自动取款机系统(界面需求分析报告)ATM自动取款机系统界面需求分析报告1.项目背景及基本描述ATM自动取款机系统作为银行信息化管理的一部分,已经相当普及了。
相比传统的手工操作,大大提高了银行的工作效率,同时降低人力、财力、物力的浪费,使得取款,转账等一些银行的日常业务形成一种规范有序的流程,减少信息交流的烦琐过程及其带来的开销,实现银行管理的规范化、自动化。
2.用户分析使用该系统的用户包括两类:管理员和客户。
管理员:系统的超级用户,其对系统的操作包括开户、销户、修改密码。
此类用户对计算机有一定的深入了解,对数据库的操作也有一定的基础,其亦可能是此类软件较熟悉的用户,这类用户有能力进行一些复杂的操作,比较数据备份,备份路径等。
由于数据库保存着所有客户信息情况,在设计时对这类操作应尽量增加确认操作,以对话框的形式询问是否进行操作。
客户:系统的普通用户,其对系统的操作包括取款、存款、查询余额、转账、修改密码等。
此类用户的计算机水平一般较低,系统对其操作的要求不应过高,比如菜单项就放在较为突出的地方,方便其操作,尽可能减少输入的数据与次数,避免因操作过多而出现的失误,同时相应菜单应设置带提示性的图标,提交后应弹出提示信息。
3.系统功能需求ATM自动取款机系统相关的主要对象有:用户:使用ATM自动取款机进行现金交易。
进行取款、查询余额、设置密码、转账等操作。
ATM系统:对用户的需求进行接收,通过与数据库的交互,根据对用户应用服务的响应,更新数据库中用户的信息。
银行数据库:对用户的所有信息进行存储更新。
因此,可以把系统具体功能描述如下:管理员:开户,销户,修改密码。
客户:取款,存款,查询余额,转账,修改密码。
主要功能:取款:用户按照系统输入要求输入取款金额即可取出相应金额的现金。
查询余额:用户可以查看账户所剩现金余额。
修改密码:如果用户想要修改当前密码,通过系统可以设置新密码。
ATM实验报告范文实验报告:ATM系统设计与实现一、实验目的本实验旨在通过设计和实现一个简单的ATM系统,来锻炼并巩固学生对面向对象的设计和编程能力,以及数据库的操作和管理能力。
二、实验原理ATM系统是一个自动取款机系统,它主要包含四个模块:用户模块、账户模块、交易记录模块和管理员模块。
1.用户模块:处理用户的注册、登录、取款、查询余额、修改密码等功能。
2.账户模块:提供用户账户的信息管理,包括账户的开户、销户、存款、取款、转账等操作。
3.交易记录模块:记录用户的交易记录,包括交易类型、交易时间、交易金额等。
4.管理员模块:提供管理员对用户账户信息、交易记录进行管理的功能,包括查询所有用户账户、查询所有交易记录等。
三、实验设计1.数据库设计:设计一个包含两个表的关系型数据库,一个是用户账户表,包含账户号、密码、账户余额等字段;另一个是交易记录表,包括交易记录号、交易类型、交易金额等字段。
2.系统设计:根据需求分析,设计出ATM系统的类结构,将系统划分为用户类、账户类、交易记录类和管理员类,每个类包含对应的属性和方法。
3. 系统实现:根据设计结果,采用面向对象的编程语言(如Java)进行系统实现。
首先实现数据库的连接和初始化,然后分别实现用户模块、账户模块、交易记录模块和管理员模块的功能。
四、实验步骤1.数据库设计和创建:根据实验设计要求,设计并创建一个包含用户账户表和交易记录表的关系型数据库。
2.系统搭建和环境配置:安装数据库相关软件和编程环境,配置相关环境变量。
3.数据库连接和初始化:编写数据库连接代码,确保系统能够成功连接到数据库并初始化。
4.用户模块:根据设计要求,编写用户模块的代码,实现用户的注册、登录、取款、查询余额、修改密码等功能。
5.账户模块:根据设计要求,编写账户模块的代码,实现账户的开户、销户、存款、取款、转账等操作。
6.交易记录模块:根据设计要求,编写交易记录模块的代码,实现交易记录的记录和查询功能。
ATM自动取款机系统的设计与分析1.1系统相关者用户,系统维护师1.2 事件表1.3 数据流分析(1)顶层DFD自动取款机数据流图如图所示(2)功能层DFD操作完成(3)细节层DFD入取择1.4 数据字典(1)数据项定义数据项名:客户别名:User数据流组成:姓名+身份证号+电话+地址+用户ID(2)数据项定义数据项名:账户别名:account数据流组成:卡号+账户余额+身份证号+密码+卡类型+交易记录+开户时间(3)数据项定义数据项名:账单别名:bill数据流组成:卡号+交易类型+交易时间+交易金额(4)数据项定义数据项名:凭条别名:ticket数据流组成:卡号+交易类型+金额+事物类型+交易时间1.5 加工逻辑登陆模块1.简要说明本例用来描述用户登陆的过程2.事件流(1)基本事件1.系统验证银行卡账号。
2.用户输入密码。
3.系统验证用户输入的密码信息。
4.用户进入系统。
(2)备选事件1.如果账号错误,给出提示,退出。
2.. 如果输入密码错误,给出提示,退出。
取款模块3.简要说明本例用来描述用户取款的过程4.事件流(1)基本事件1.用户输入取款金额。
2.系统验证输入金额是否符合输入要求。
3.系统验证用户账户余额。
4.系统显示用户取款金额。
5.用户确认取款金额。
6.系统要求点钞机出钞。
7.系统更新并保存账户信息。
(2)备选事件1.如果输入金额不符合输入数字格式要求,给出提示,退出。
2.如果输入金额超出最大取款金额,给出提示,退出。
3.如果用户没有确认,给出提示,退出修改密码5.简要说明本例用来描述用户修改密码的过程6.事件流(1)基本事件1.用户输入旧密码。
2.系统验证账户旧密码。
3.用户输入2次新密码。
4.用户确认输入的秘密。
5.系统更新用户密码为新密码。
6.用户修改密码成功。
(2)备选事件1.如果输入的旧密码错误,给出提示,退出。
2.如果两次输入输入的密码不同,给出提示,退出。
3.如果用户没有确认,给出提示,退出。
实验一ATM机自动取款机业务系统数据流图与原型实验报告姓名:学号:班级:编写:目录1 数据流图和原型界面统计 (1)2 ATM自动柜员机业务系统需求模式 (2)3 ATM自动柜员机系统数据流图 (3)3.1顶层数据流图3.2一层数据流图3.3二层数据流图3.4三层数据流图3.5四层数据流图3.6五层数据流图4自动取款机原型徐彤 (4)4.1等待界面4.2登录界面4.3吞卡界面4.4功能选择界面4.5操作界面4.6取款界面4.7存款界面4.8查询界面4.9打印凭条界面4.10转账界面4.11改密码界面4.12交易成功界面4.13取卡界面5实验体会 (23)2 ATM自动取款机系统需求分析需求分析:由于科技迅速发展,安全问题越来越重要,几乎所有银行都配置了简单的人工操作的ATM的自动取款机,人们可以随时随地的进行交易,不再受银行的服务时间所约束,但是一张银行卡,一串密码已经很难满足安全问题,新兴自动取款机会保证更高的安全问题。
ATM机系统的主要功能: 16中条件判断识别取款修改密码凭条打印转账余额查询交易明细查询等1:16种情况识别判断保证财务安全问题,余额不足时不能取款所需的现金。
ATM机可以提供指定金额的快速的取款界面,ATM机取款成功后要向银联系统写入操作,并且对客户的余额进行相应处理。
2:存款ATM机要能自动清点现金,将相应的操作信息写入银联系统,并且对相应的客户的余额进行相应的修改,之后上银联系统。
3;修改密码若新密码1和新密码相同则修改密码,要修改客户的密码表,并且将操作信息写入银联系统,否则修改密码不成功。
4 转账完成不同的银行卡之间的签约条例进行间接转账,若客户余额不足时则转账识别进行相应提示,转账成功,对客户和收账人的余额进行相应的修改,写入账户余额表,并并且向银联系统进行相应的写入操作。
ATM机工作流程插入卡->16种身份识别->选择操作类型交易流程->确定交易->写入账户信息和银联系统3 ATM自动取款机的数据流图3.1顶层数据流图客户插入银行卡后开始识别所属的银行和账户信息,并且启动摄像系统,识别后开始校验客户输入的密码,还有人脸识别信息,眼球识别信息,指纹识别信息,进行16种情况判断,若全部正确则进行ATM机自检,去掉暂时不能输入的操作,让用户选择操作,若情况不全不正确,进行15种情况判断,进行相关操作。
ATM自动取款机系统的分析与设计1.系统架构ATM系统的架构是整个系统的基础,决定了系统的性能和功能扩展的能力。
通常,ATM系统的架构包括硬件层、操作系统层、应用软件层和用户界面层。
硬件层包括ATM机、键盘、屏幕、打印机等设备;操作系统层一般采用嵌入式操作系统;应用软件层包括处理用户交互的系统软件;用户界面层包括用户输入和输出的界面。
在系统架构的设计中,需要考虑系统的可扩展性、可靠性和可维护性。
例如,系统需要支持多种硬件设备,兼容不同的操作系统,具有良好的故障处理机制,方便对系统进行升级和维护。
2.数据流程ATM系统的数据流程是系统的核心,涉及到用户交互、账户信息、交易记录等数据的处理和传输。
在设计数据流程时,需要考虑数据的安全性、一致性和完整性。
例如,用户输入的密码需要进行加密传输,账户信息需要进行实时更新,交易记录需要做好备份和恢复等操作。
在数据流程设计中,需要考虑到并发访问、网络延迟和恶意攻击等因素。
例如,系统需要实现正确的并发控制机制,保证用户的交易不会发生冲突;系统需要具备较高的网络速度和稳定性,确保用户可以及时完成交易;系统需要多层次的安全策略,防止恶意攻击者对系统进行攻击。
3.安全性ATM系统的安全性是系统设计的重点,因为涉及到用户的财产安全和个人隐私。
在设计安全性方面,需要考虑到用户认证、数据加密、防火墙和漏洞修复等问题。
例如,系统需要实现用户身份认证机制,防止非法用户对系统进行访问;系统需要对用户输入的敏感信息进行加密处理,确保数据传输安全;系统需要设置防火墙和入侵检测系统,及时发现并阻止网络攻击;系统需要定期更新补丁和漏洞修复程序,保证系统的安全性。
4.用户体验ATM系统的用户体验是系统设计的关键,因为直接影响到用户的使用感受和满意度。
在设计用户体验方面,需要考虑到界面设计、交互方式、反馈机制和操作流程等问题。
例如,系统需要设计简洁清晰的用户界面,方便用户快速找到需要的功能;系统需要提供直观友好的交互方式,减少用户输入错误的可能性;系统需要实时反馈用户操作的结果,让用户清楚地了解交易是否成功;系统需要优化操作流程,减少用户等待时间,提高用户满意度。
课程设计报告课程类别:本科课程名称:程序设计基础(C语言)课程代号:指导教师:银行ATM自动取款机系统课程设计姓名:学号:姓名:学号:姓名:学号:学院:班级:目录1.课程设计内容..................................................2.课程设计要求.................................................. 3.可行性研究................................................... 4.需求分析.....................................................5.概要设计......................................................5.1 功能模块图...............................................5.2 功能模块描述.............................................5.3数据结构 .................................................6.详细设计......................................................6.1 功能流程图...............................................6.2 重点设计.................................................7.测试与调试....................................................8.总结..........................................................8.1 心得体会..................................................8.2 不足与改进................................................9.参考文献......................................................1.课程设计内容模拟银行的自动取款机ATM使用过程中的界面和用户交互过程2.课程设计要求(1)要求利用面向过程的方法以及C语言的编程思想来完成系统的设计;(2)在系统的设计中,要求运用菜单和文件实现系统功能。
ATM自动取款机系统的分析与设计需求说明第一部分引言1.1编写目的本文档描述了自动取款机系统的软件需求。
1.2适用范围ATM的功能要求支持计算机银行网。
1.3背景ATM自动提款机系统。
ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。
ATM是英文Automatic Teller Machine的缩写。
ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。
在ATM自动取款机上也可以进行账户查询、修改密码和转账的业务。
作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。
ATM自动取款机系统,是一个有终端机,ATM系统,数据库组成的应用系统。
系统功能有用户在ATM上提取现金、查询账户余额、修改密码及转账功能。
ATM自动取款机系统向用户提供一个方便、简单、及时、随时随地可以随心所欲存取款的互联的现代计算机化的网络系统。
可以大大减少工作人员,节约人力资源的开销,同时由于手续程序减少也可以减轻业务员的工作负担,有效地提高了整体的工作效率和精确度。
减少了用户办理业务的等待时间;用户可以随时随地可以随心所欲存取款,并且操作简单易懂;用户还可以选择在柜台办理业务或自己在自动提款机和自动取款机办理业务。
第二部分任务概述2.1目标系统功能实现用户在A TM上提取现金、查询账户余额、修改密码及转账功能。
2.2用户的特点本系统功能齐全,交互界面简单便捷,适用社会广大人群,且能满足用户安全性需求。
2.3假定和约束本系统不具备语音提示功能,不能为盲人等群体提供服务。
第三部分需求规定3.1对功能的规定3.1.1系统功能关系图用例图:3.1.2系统功能概述ATM自动取款机系统相关的主要对象有:用户:使用ATM自动取款机进行现金交易。
进行取款、查询余额、设置密码、转账等操作。
系统:对用户的需求进行接收,通过与数据库的交互,根据对用户应用服务的响应,更新数据库中用户的信息。
ATM自动取款机系统分析与设计实验报告摘要:本实验报告旨在分析与设计ATM自动取款机系统。
ATM自动取款机系统是一种常见的自助服务设备,能够为用户提供取款、查询余额、转账等功能。
本报告将进行系统需求分析、系统设计以及系统实施与测试等环节,最终完成ATM自动取款机系统的分析与设计。
通过本实验,我们能够更好地了解和掌握ATM自动取款机系统的工作原理和运行方式,为实际应用中的ATM系统提供指导和参考。
1.引言ATM自动取款机系统是一种常见的自助服务设备,可以方便用户进行取款、查询余额、转账等操作。
随着电子支付的普及和ATM机的使用率的提高,ATM自动取款机系统在人们的生活中扮演着重要的角色。
在本实验中,我们将对ATM自动取款机系统进行详细的分析与设计。
2.系统需求分析在系统需求分析阶段,我们将明确ATM自动取款机系统的功能需求、性能需求、安全需求等。
我们需要考虑用户需要进行的操作,如取款、查询余额、转账等,并设计相应的界面和功能。
此外,我们还需要考虑系统的可靠性、安全性和性能等方面的需求。
3.系统设计在系统设计阶段,我们将根据系统需求进行系统架构设计和详细设计。
我们需要确定系统的各个模块,如用户界面、数据库、交易处理等,并设计它们之间的交互方式和数据流动。
4.系统实施与测试在系统实施与测试阶段,我们将根据系统设计,实现ATM自动取款机系统的各个模块。
我们需要编写相应的代码,并进行系统测试,以验证系统的正确性和稳定性。
5.结论通过本次实验,我们深入了解了ATM自动取款机系统的工作原理和运行方式,并进行了系统分析与设计。
我们明确了系统的需求,并设计了相应的系统架构和功能。
此外,我们还实施了系统并进行了测试,验证了系统的正确性和稳定性。
ATM实验报告范文一、实验目的本实验主要目的是设计并实现一个简单的自动取款机(ATM)系统,通过该系统,用户可以进行账户查询、存款、取款等基本操作。
通过实验,熟悉面向对象设计的基本思想和方法,进一步理解面向对象的封装、继承和多态等特性。
二、实验设计1.类的设计本实验中设计了如下几个类:ATM、Account、SavingsAccount、CheckingAccount。
其中,ATM类代表自动取款机,Account类是表示银行账户的基类,SavingsAccount类是Account类的派生类,表示储蓄账户,CheckingAccount类也是Account类的派生类,表示支票账户。
2.类的属性和方法Account类具有属性:账户号(accountNumber)、账户余额(balance)和利率(rate),具有方法:构造方法Account(、获取账户号方法getAccountNumber(、存款方法deposit(、取款方法withdrawal(。
SavingsAccount类继承Account类,新增加了属性:利率(rate)和最低余额(minBalance),新增加了方法:构造方法SavingsAccount(、计算利息的方法calculateInterest(。
CheckingAccount类继承Account类,新增加了属性:透支额度(overdraft),新增加了方法:构造方法CheckingAccount(、透支方法overdraft(。
3.系统交互过程用户进入ATM系统后,首先输入账户号码以及密码进行验证。
验证通过后,用户可以进行以下操作:(1) 查询账户余额:调用Account类的getBalance(方法进行查询。
(2) 存款:调用Account类的deposit(方法进行存款操作。
(3) 取款:调用Account类的withdrawal(方法进行取款操作,该方法根据账户类型的不同进行判断,如果是储蓄账户则需满足最低余额要求,如果是支票账户则需满足透支额度。
atm实验报告ATM实验报告引言ATM(自动取款机)是现代社会中常见的金融设备,它为人们的生活带来了极大的便利。
然而,ATM也需要不断地进行测试和实验,以确保其正常运行和安全性。
本实验报告将介绍对ATM进行的一次实验,以验证其功能和性能。
实验目的本次实验的主要目的是测试ATM的各项功能,包括取款、存款、查询余额、转账等,并验证其在不同情况下的稳定性和安全性。
实验过程1. 取款功能测试:首先,我们进行了ATM的取款功能测试,模拟了用户输入密码、选择取款金额并取款的整个流程。
实验结果显示,ATM成功完成了取款操作,且取款金额准确无误。
2. 存款功能测试:接着,我们进行了ATM的存款功能测试,模拟了用户输入存款金额、插入存款卡并存款的整个流程。
实验结果显示,ATM成功完成了存款操作,且存款金额准确无误。
3. 查询余额功能测试:随后,我们进行了ATM的查询余额功能测试,模拟了用户输入查询指令并查看余额的整个流程。
实验结果显示,ATM成功显示了用户的余额信息。
4. 转账功能测试:最后,我们进行了ATM的转账功能测试,模拟了用户输入转账金额、选择转账对象并完成转账的整个流程。
实验结果显示,ATM成功完成了转账操作,且转账金额准确无误。
实验结论通过本次实验,我们验证了ATM的各项功能的稳定性和准确性。
ATM在取款、存款、查询余额和转账等方面表现出了良好的性能,符合金融设备的要求。
同时,我们也验证了ATM的安全性,确保用户的资金和信息不会受到损害。
总结ATM作为现代金融服务的重要组成部分,其功能和性能的稳定性和安全性至关重要。
通过本次实验,我们对ATM进行了全面的测试,验证了其良好的性能和安全性,为用户提供了更可靠的金融服务保障。
希望未来能够继续对ATM进行实验和测试,不断提升其性能和安全性,为人们的生活带来更大的便利和保障。
实验报告(①实验目的②实验设备和环境③实验内容与步骤④实验结果与分析⑤总结,问题及建议))一. 实验目的ATM自动柜员机系统是由计算机控制的银行自动出纳系统,主要服务于活期储蓄,实现客户自助服务的电子化设备。
统一建模语言UML Unified Modeling Language是面向对象技术的一个重要应用,也是软件工程环境中对象分析和设计的重要工具。
通过UML对ATM自动取款机建模,实现查询余额、取款、存款、更改密码等业务,根据需求还可以进一步扩展具体功能。
二. 实验设备和环境设备:Enterprise Architect软件环境:windows三. 实验内容与步骤<一>、ATM系统UML设计需求分析1.1 A TM取款机的总体需求1.ATM机要可以判断磁卡的类别,如果不是有效的磁卡则退卡2.可以在较快的时间内响应用户的请求,并针对相应的请求执行正确的操作3.查询自己的账户时应显示余额和可用余额,并显示ATM机里所拥有的现金面值,让用户可以做出正确的选择。
4.提取现金时提示用户输入取款金额并判断输入是否正确,如果错误提醒用户并要求重新操作,正确则提醒用户收取现金,5.转账汇款时让用户选择转账类型,要求用户输入转账号并要求用户输入两次,以确保没有输入错误,在两次输入都正确的情况下,让用户输入转账金额,并作最后确认。
6.进入修改密码界面后提醒用户输入新密码,并要求再次输入以确保密码统一无误,在确认后完成修改操作,并提醒用户新密码生效。
7.对于错误的操作或者操作延时做出有效的处理。
1.2 系统操作要求1.要求用户每次取款数额为50的整数倍,2.要求用户一次取款数额不得大于1000元,3.要求用户一天取款数额不得超过5000元,4.要求用户每次取款数额不得大于账户余额,5.要求用户连续输入错误密码次数不得超过3次,1.3 系统性能要求1.要求反应时间不得大于10秒钟,2.系统设计目标,ATM自动取款机可以提供24小时不间断服务,操作简单,每步都有相应的语音提示,可以很方便为用户提供取款、转账/汇款、查询账户信息等服务。
ATM系统分析与设计ATM系统分析与设计随着科技的不断发展,自动取款机(ATM)已成为银行业务中不可或缺的一部分。
它使得用户能够在全天候、异地取款并进行一些简单的银行业务操作。
在这篇文章中,我们将对ATM系统进行分析与设计,以便更好地了解其工作原理。
首先,让我们来分析ATM系统的功能。
ATM主要提供以下几个功能:取款、存款、余额查询、密码更改、转账、支付账单等。
除此之外,ATM还可以提供一些其他的服务,如现金兑换、密码重置等。
通过这些功能,用户可以便捷地进行日常银行业务,无需到银行实体店面办理。
接下来,我们来设计ATM系统的实现方案。
首先,ATM系统必须与银行服务器进行通信,以便进行账户查询、交易验证等操作。
这可以通过网络连接实现。
用户在进行操作时,ATM会发送请求给银行服务器,服务器收到请求后进行相应的处理,并将结果返回给ATM。
另外,为了保障用户的账户安全,ATM系统需要进行身份验证。
用户在使用ATM之前,需要先输入正确的银行卡和密码进行身份验证,确保只有合法用户才能进行操作。
然后,我们需要设计ATM系统的用户界面。
用户界面应该简单、直观,方便用户进行操作。
界面应该提供可选择的功能按钮,如取款、存款、余额查询等。
用户选择相应的功能按钮后,可以根据界面的提示输入相关信息,如取款金额、存款金额、转账目标账户等。
ATM对用户的操作应该进行实时的反馈,以便用户了解当前操作的状态。
对于ATM设备本身,我们需要考虑一些硬件的设计和配置。
首先,ATM机需要有读取银行卡的设备,用来读取用户的银行卡信息。
其次,ATM机需要有密码键盘,用户可以在上面输入密码进行身份验证。
还需要有现金存取设备,用于发放和接收现金。
此外,为了保障用户的安全,ATM机应该配备相应的安全摄像头和监控系统,以便监控用户操作的过程。
最后,我们需要考虑ATM系统的安全性。
由于涉及到用户的资金安全,ATM系统需要具备一定的安全防护机制。
首先,ATM系统需要采用加密技术,以保护用户的隐私数据。
ATM系统需求分析报告一、引言ATM(自动取款机)系统作为一种方便快捷的自助银行服务终端,已成为现代社会金融系统中不可或缺的一部分。
通过ATM系统,客户可以自行进行取款、查询余额、转账等一系列金融操作,大大提高了银行服务的效率和用户体验。
本报告旨在对ATM系统的需求进行详细分析,以便开发团队能够根据这些需求进行系统的设计和实施。
二、背景如今,随着科技的不断发展,人们对金融服务的需求也在不断增加。
去银行进行金融操作需要花费大量的时间和精力,而ATM系统提供了一个更加简单和高效的选择。
因此,为了满足客户的需求,银行决定引入ATM 系统,以提供更好的服务。
三、功能需求1.登录功能:在使用ATM系统之前,用户需要登录账户。
系统应提供安全可靠的身份验证功能,以确保只有合法的用户才能够进行金融操作。
2.取款功能:用户可以选择取款个人账户的一定金额。
系统应记录取款金额并更新账户余额。
3.存款功能:用户可以选择将一定金额存入个人账户。
系统应记录存款金额并更新账户余额。
4.查询余额功能:用户可以随时查询个人账户的余额。
系统应提供准确的余额信息。
5.查询交易记录功能:用户可以查询个人账户的交易记录。
系统应提供清晰的记录并按时间顺序展示交易信息。
6.转账功能:用户可以将一定金额转移到其他账户。
系统应提供安全的转账功能,并记录转账信息。
7.修改密码功能:用户可以通过ATM系统修改账户密码。
系统应提供安全的密码修改流程,并确保新密码的可靠性。
四、非功能需求1.安全性:ATM系统应采用多层次的安全机制,包括用户身份验证、密码加密和交易信息保护等,以确保用户的个人信息和资金安全。
2.可靠性:系统应具备高可靠性,确保在各种操作环境下都能正常运行,并避免出现故障和系统崩溃的情况。
3.可维护性:ATM系统应具备良好的可维护性,确保系统的升级和维修工作可以在影响用户使用的最小范围内进行。
4.用户友好性:系统应具备良好的用户界面和友好的操作流程,以提升用户体验。
本科实验报告课程名称:系统分析与设计实验项目:《ATM机取款系统》实验实验地点:行逸楼A103专业班级:软件1309 学号2013005661 学生姓名:蔡潇钰指导教师:杨丽凤2015年11月 1 日一、实验目的通过《系统分析与设计》实验,使学生在实际的案例中完成系统分析与系统设计中的主要步骤,并熟悉信息系统开发的有关应用软件,加深对信息系统分析与设计课程基础理论、基本知识的理解,提高分析和解决实际问题的能力,使学生在实践中熟悉信息系统分析与设计的规范,为后继的学习打下良好的基础。
二、实验要求学生以个人为单位完成,自选题目,班内题目不重复,使用UML进行系统分析与设计,并完成实验报告。
实验报告以纸质版(A4)在课程结束后提交(10周)。
三、实验主要设备:台式或笔记本计算机四、实验内容1 选题及项目背景A T M机取款系统的分析与设计2 定义ATM(AutomanticTellerMachine)自动取款机是由计算机控制的持卡人自我服务型的金融专用设备.在我国,基本上所有的银行系统都有自己的ATM系统.ATM利用磁性代码卡或智能卡实现金融交易,代替银行前台工作人员的部分工作.顾客可以在ATM机上取钱、查询余额、转账和修改密码等业务.除此之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能.3 参考资料《系统分析与设计》作者:李爱萍人民邮电出版社4 系统分析与设计4.1需求分析4.1.1识别参与者用户(使用ATM机进行存取款)ATM机管理员(维护ATM机,往ATM机里放钱等)4.1.2 对需求进行捕获与描述用例名称:ATM机取款系统执行者:用户目的:完成一次取款流程)4.1.3 用例图通过已掌握的需求,初步了解系统所要完成的功能。
下面给出用例图。
余额查询图4.1 参与者用例图4.1.4 分析与讨论1)建模用例图的步骤、方法?1.识别系统的参与者;2.确定用例;3.明确参与者与用例间的关系2)如何识别系统的参与者?应该如何划分用例,应注意哪些问题?1.谁使用系统的主要功能;2.谁改变系统的数据;3.谁从系统中获取主要信息。
《软件工程》实训报告系别:班级:姓名: XXX学号:指导老师: XXX日期: 2013年6月项目名称:项目成员:成员分工:目录1、可行性分析报告2、需求分析报告3、总体设计4、软件详细设计5、用户界面、数据库及其接口设计6、测试设计方案7、维护设计方案8、软件项目管理与计划9、总结10、参考资料ATM自动取款机系统一、可行性分析报告1、数据流图2、数据字典二、需求分析1、系统开发的目的:2、应用范围:3、系统功能需求分析4、系统数据建模(E-R图)5、系统功能建模(状态图)三、总体设计1、系统层次图四、详细设计1、模块的详细设计2、程序的流程图3、模块的输出结果五、用户界面、数据库及其接口设计六、测试设计方案七、维护设计方案八、软件项目管理与计划九、总结十、参考资料备注:ATM自动取款机系统说明:(用UML课程方式演示)1 需求分析(刘子强)1.1 需求概述ATM自动取款机是银行在营业大厅、超市、商业机构、机场、车站、码头和闹事区等地设置的一种小型机器,利用一张信用卡大小的胶卡上的磁带(或芯片卡上的芯片)记录客户的基本资料,让客户可以通过机器进行提款、存款、转账等银行柜台服务。
1.2 需求分析ATM自动取款机系统的需求分析简述如下:1、客户将银行卡插入读卡器,读卡器识别卡的真伪,并在显示器上提示输入密码。
2、客户通过键盘输入密码,取款机验证密码是否有效。
如果密码错误,则提示错误信息,如果正确,则提示客户进行选择操作业务。
3、客户根据自己的需要可进行存款、取款、查询账户、转账、修改密码的操作。
4、在客户选择后显示器进行交互提示和操作确认等信息。
5、操作完毕后,客户可自由选择打印或不打印凭条。
6、银行职员可进行对ATM自动取款机的硬件维护和添加现金的操作。
1.3 需求模型(用例图)(尧犁)系统主要包括以下几个参与者:(1)客户(2)银行职员(3)信用系统然后我们根据参与者的不同分别画出各个参与者的用例图。
本科实验报告课程名称:系统分析与设计实验项目:《ATM自动取款机系统》实验一、实验目的通过《系统分析与设计》实验,使学生在实际的案例中完成系统分析与系统设计中的主要步骤,并熟悉信息系统开发的有关应用软件,加深对信息系统分析与设计课程基础理论、基本知识的理解,提高分析和解决实际问题的能力,使学生在实践中熟悉信息系统分析与设计的规范,为后继的学习打下良好的基础。
二、实验要求以个人为单位完成,自选题目,班内题目不重复,使用UML进行系统分析与设计,并完成实验报告。
三、实验主要设备:台式或笔记本计算机四、实验内容1 选题及项目背景ATM自动取款机系统项目背景:ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。
可以向用户提供一个方便、简单、及时、随时随地曲匡的互联的现代化的网络系统。
2 定义ATM自动取款机可以为用户提供取款、查询余额、设置密码、转账等业务。
在用户使用ATM自动取款机时,ATM要求用户输入密码,接下来由ATM把从银行卡上读取的信息以及用户输入的密码传给ATM自动取款机系统,系统通过数据库中的信息进行核对,如果密码正确,ATM就要求用户选择事务类型(取款、查询等),直至用户选择退出应用服务,询问用户是否退出应用服务,如果用户选择结束,则退出银行卡,系统重回登陆界面。
用户进入取款界面后,首先可以输入取款金额(必须是50的倍数),否则系统显示输入有误。
用户点击确认后,由系统查询用户相应的账户,判断该取值金额是否超出用户现有余额,如果没有,则系统会显示确认界面,用户单点击“确认”后,系统自动生成账单,并在后台进行工作,吐钞机进行清点并吐出现金,并将数据更新到数据库中;否则提示用户余额不足,请重新输入,重复上述过程。
3 参考资料《系统分析与设计》4 系统分析与设计4.1需求分析4.1.1识别参与者用户(取款者)、系统维护人员、银行管理人员4.1.2 对需求进行捕获与描述用例名称:存款执行者:用户目的:向银行账户中存放现金。
用例名称:取款执行者:用户目的:从ATM自动取款机中提取账户金额。
用例名称:修改密码执行者:用户目的:修改用户登录密码。
用例名称:查询余额执行者:用户目的:查询银行账户中的现金余额。
用例名称:验证身份执行者:用户目的:验证操作ATM的用户身份。
用例名称:转账执行者:用户目的:从ATM自动取款机中进行现金转账。
用例名称:信息管理执行者:银行工作人员目的:对用户信息进行管理。
用例名称:系统维护执行者:银行工作人员目的:对ATM系统进行维护。
用例名称:赔款执行者:银行工作人员目的:向ATM机存放现金。
用例名称:验证身份执行者:银行工作人员目的:对用户信息进行验证。
4.1.3 用例图ATM自动取款机用例图4.1.4 分析与讨论1)建模用例图的步骤、方法?1.确定系统的边界和范围;(方法:分析系统内部元素,把系统内部元素和外部事物划分开)2.识别系统的参与者;3.发现用例;4.描述用例及确定用例关系;(方法:对用例概要描述;对用例详细描述。
根据用例事件流,将公共行为抽取出来,已包含关系构建用例关系;变化部分,抽取出来,放到扩展用例中)5.建立用例图;6.定义用例图的层次结构;2)如何识别系统的参与者?应该如何划分用例,应注意哪些问题?通过回答以下问题来识别系统的参与者:1.谁使用系统的主要功能?2.谁改变系统的数据?3.谁从系统中获取数据?4.谁支持、维护系统?5.谁需要借助系统的支持来完成工作?6.系统需要操纵哪些硬件?7.系统需要和哪些外部系统交互?8.谁对系统运行结果感兴趣?划分用例:1.每个参与者打算在这个系统里做些什么事情?2.参与者使用本系统要实现的目标是什么?3.参与者是否会在系统中创建、修改、删除、访问、存储数据?如果是,如何来完成这些操作?4.参与者是否会将外部的某些事件通知给该系统?3)心得用例图主要用来描述用户、需求、系统功能单元之间的关系。
它展示了一个外部用户能够观察到的系统功能模型图。
用途:帮助开发团队以一种可视化的方式理解系统的功能需求。
用例图所包含的元素如下:1. 参与者表示与您的应用程序或系统进行交互的用户、组织或外部系统。
用一个小人表示。
2. 用例用例就是外部可见的系统功能,对系统提供的服务进行描述。
用椭圆表示3. 子系统用来展示系统的一部分功能,这部分功能联系紧密。
4. 关系用例图中涉及的关系有:关联、泛化、包含、扩展;a. 关联表示参与者与用例之间的通信,任何一方都可发送或接受消息。
b. 泛化就是继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。
子用例可以使用父用例的一段行为,也可以重载它。
父用例通常是抽象的。
c. 包含包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤;d. 扩展扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。
e. 依赖表示源用例依赖于目标用例;4.2 建立对象模型4.2.1 候选类的数据字典4.2.2定义类“用户”类•属性姓名(name):文本(char)账号(userID):文本(char)联系电话(TelNum):整形(int)住址(Address):文本(char) •操作插卡i nsert card()输入Input()修改密码changePWD()查询inquiry()“读卡机”类•属性•操作接收卡accept card()读卡read card()退卡eject card()“吐钞机”类•属性余额(balance):字符串(string)•操作吐钞OutCash()“账单”类•属性账单号(AccountNumber):整形(int)余额(balance):字符串(string)•操作打开open()扣除存款deductFunds ()存入存款withdrawFunds()“存款账目”类•属性姓名(name):文本(char)账号(userID):文本(char)联系电话(TelNum):整形(int)余额(balance):字符串(string)存款金额(DepositAmount): 字符串(string)•操作存款deposit()取消Cancel ()“取款账目”类•属性姓名(name):文本(char)账号(userID):文本(char)联系电话(TelNum):整形(int)余额(balance):字符串(string)取款金额(DepositAmount): 字符串(string)•操作取款deposit()取消Cancel ()“ATM屏幕”类•属性•操作初始化initialize ()提示prompt ()输入input()“系统维护人员”类•属性姓名(name):文本(char)员工号(ID):整形(int)联系电话(TelNum):整形(int)•操作维护Maintain()“银行管理人员”类•属性姓名(name):文本(char)员工号(ID):整形(int)联系电话(TelNum):整形(int)•操作配款DepositCash()管理manage()“数据连接”类•属性•操作连接Connect()取消Cancel ()4.2.3绘制类图4.2.4包图(画出包图并说相应解释说明)4.2.5分析与讨论1)建模类图的步骤、方法?构建类图的步骤:1.确定类;(方法:行为分析、名词识别法、CRC分析法、根据边界类、控制类、实体类的划分、参考设计模式确定、通过领域进行分析等)2.识别类的属性和操作;(方法:结合需求陈述、领域知识和常识以及经验等)3.识别类之间的关联;(方法:使用普通关联列表的方法)4.定义类的结构和层次。
2)识别类有哪些方法,你是如何识别类的?行为分析、名词识别法、CRC分析法、根据边界类、控制类、实体类的划分、参考设计模式确定、通过领域进行分析等。
我通过名名词识别法确定类。
3)解释关联的多重性?如何确定类的属性、操作、类之间的关联关系、组织类之间的继承?关联的多重性:关联表示了对象间的结构关系,在建模过程中,通常需要说明一个关联实例中有多少个相互连接的对象。
确定类的属性:从常识性、专业性、功能性、存储性、操作性、标志性、关联性发现和确定类的属性,进而筛选类的属性;确定类的操作:综合对象模型、动态模型和功能模型,确定类的操作;确定类之间的关联关系:使用普通关联列表的方法帮助发现关联。
并分析关联的多重性。
组织类之间的继承:自顶向下和自底向上的方法。
4.3 建立动态模型系统的动态行为模型由交互图(顺序图和协同图)、状态机图和活动图表达。
在系统的分析和设计中应当对主要的Use Case和对象类绘制这些图形,以便分析系统的行为,印证和修改系统的静态结构,满足用户的需求,达到系统的目标。
4.3.1顺序图4.3.2 通信图4.3.3活动图活动图的主要作用是表示系统的业务工作流和并发处理过程。
针对自选系统主要的业务工作流绘制活动图。
绘制活动图需要确定参与活动的对象、动作状态、动作流,以及对象流。
4.3.4状态图状态机图表现一个对象(类)的生命史。
对于一些实现重要行为动作的对象应当绘制状态机图。
绘制状态机图需要确定一个对象的生命期可能出现的全部状态,哪些事件将引起状态的转移,将会发生哪些动作。
4.3.5 分析与讨论比较顺序图与通信图、活动图与状态图的应用。
顺序图:描述的是参与交互的对象及对象之间消息交换的顺序,用来表示用例中的行为顺序。
通信图:强调发送和接收消息的信息的对象及其组织结构的交互图,用以描述对象以及对象之间的交互关系。
活动图:用来描述达到一个目标所实施一系列活动的过程,描述了系统的动态特征。
状态图:描述系统中类和对象随时间变化的动态行为。
4.4物理模型4.4.1 建立构件图系统实现的源代码、二进制码、执行码可以按照模块化的思想,用构件分别组织起来,明确系统各部分的功能职责和软件结构。
构件图:表达的是系统代码本身的结构。
它将系统中可重用的块包装成具有可替代性的物理单元。
构件图描述了软件系统的各种构件和他们之间的相互关系。
4.4.2 建立部署图部署图:主要是为了描述系统中各个物理组成部分的分布、提交和安装过程。
主要用来描述嵌入式系统、客户机/服务器系统以及分布式系统的静态部署。
5 实验总结个人感觉通过这些次实验,自己在软件开发方面有了很多的了解,对计算机软件也有了更多的兴趣!总之,本学期的ATM实验能够很好的实现既定目标,同时扩宽了我的学习面,鉴于目前自己掌握的实际情况,欲安排以后学习工作如下:1.认真复习计算机软件相关课程,争取取得好成绩;2.英语也要多学习,尤其是专业英语,对阅读参考资料有很大方便!3.根据需要加深编程语言的学习;多看看有关软件开发的书.4.业余时间扩宽计算机网络硬件方面的视野,尤其希望可以去软件开发公司的机房参观学习,提高个人修养与能力;5.对于软件开发,我们要树立重视实践更甚于重视理论的观点!。