首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 工作总结
  • 工作计划
  • 心得体会
  • 竞聘演讲
  • 会议发言
  • 爱国演讲
  • 就职演说
  • 开业开幕
  • 思想学习
  • 征文演讲
  • 经验材料
  • 述职报告
  • 调研报告
  • 工作汇报
  • 年终总结
  • 申报材料
  • 学习体会
  • 企划方案
  • 活动方案
  • 技巧经验
  • 模板范例
  • 思想宣传
  • 经济工作
  • 工作报告
  • 组织人事
  • 反腐倡廉
  • 慰问贺电
  • 先进事迹
  • 思想汇报
  • 入党申请书
  • 党会发言
  • 先进性教育
  • 入团申请书
  • 个人简历
  • 演讲稿
  • 调查报告
  • 实习报告
  • 和谐社会
  • 观后感
  • 读后感
  • 作文范文
  • 自我鉴定
  • 讲话稿
  • 自查报告
  • 软件工程课程设计-ATM取款服务系统

    时间:2020-10-16 05:05:55 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:软件工程 取款 课程设计

      软件工程课程设计

      --------M ATM 机取款服务系统

     学校:

     苏州大学

     院系:

     计算机科学与技术学院

     专业:

     计算机科学与技术

     组员:

     戴飞 0727401003

      张超

     0727401001

      丁杰荣 0727401002

      苏栋梁

     0727401014

     1 1 .

     引言 1 1.1 编写目的 本次软件设计的目的是建设一个通过软件实现ATM机各项功能的模拟系统,能够更加方便的为客户提供取款,转账和余额查询等功能,并且按模块划分功能,最大程度的来提神系统的健壮性和可扩展性。根据迭代式开发原理,逐步完善,直至完全满足客户的需求。

     2 1.2 适用范围 ATM 的功能要求支持在本公司注册过的所有银行,为其提供服务。

     3 1.3 背景 ATM 自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。ATM 是英文 Automatic Teller Machine 的缩写。ATM 是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在 ATM 自动取款机上也可以进行账户查询、修改密码和转账的业务。作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。

     ATM 自动取款机系统,是一个有终端机,ATM 系统,数据库组成的应用系统。系统功能有用户在 ATM 上提取现金、查询账户余额、修改密码及转账功能。

      ATM 自动取款机系统向用户提供一个方便、简单、及时、随时随地可以随心所欲存取款的互联的现代计算机化的网络系统。可以大大减少工作人员,节约人力资源的开销,同时由于手续程序减少也可以减轻业务员的工作负担,有效地提高了整体的工作效率和精确度。

     减少了用户办理业务的等待时间;用户可以随时随地可以随心所欲存取款,并且操作简单易懂;用户还可以选择在柜台办理业务或自己在自动提款机和自动取款机办理业务。

     4 1.4 文档概述 ATM 自动柜员机系统是由计算机控制的银行自动出纳系统,主要服务于活期储蓄,实现客户自助服务的电子化设备。统一建模语言 UML(Unified Modeling Language)是面向对象技术的一个重要应用,也是软件工程环境中对象分析和设计的重要工具。通过 UML 对 ATM 自动取款机建模,实现查询余额,取款,转账,更改密码等业务,对各功能进行具体的分析和建模。

     1.5 5 参考资料 《软件工程导论(第 5 版)》 清华大学出版社

      张海藩 编著 《UML 面向对象建模与设计》 人民邮电出版社

      Michael Blaha, James Rumbaugh 编著 2. 任务概述 2.1. 目标 本系统可以帮助用户更为轻松的进行取款,转账和查询余额等业务。从用户角度出发,更为理性的设计银行卡卡号,来保证更高的安全性和更快捷的银行业务操作,来吸引更多的客户使用。

     2.2. 用户特点 1.客户:通过输入自身信息进入系统,主要完成取款、转账和余额查询操作。

     3. 核心技术 1.在代码的编制方面,我们使用的是 java 的 GUI 设计; 2. 在数据库方面我们使用的是 oracle 数据库,版本号为 11.1.0.6.0 release 1。(oracle 11g 对应 JDBC 驱动在附件中已经打包) 3.在做界面的美观设计时,我们将设计代码封装在了 demo.xml 文件中,如果之后的设计需要对界面的外观进行相应的修改,直接更改该文件即可。

     4.数据库方面的各类脚本,包括表的建立、删除、修改,以及表中数据的

     插入、更新和删除操作都已经保存在对应的 txt 文档中(在附件中已经打包)。

     4 4 . 项目需求分析 4 4 .1 系统功能概述 4 4M .1.1 ATM 自动取款机系统相关的主要对象 (1 1 )用户:使用 ATM 自动取款机进行现金交易。进行取款、查询余额、设置密码、转账等操作。

     (2 2 )数据库:对用户的所有信息进行存储更新。

     4 4M .1.2 ATM 自动取款机系统相关的主要功能 (1 1 )取款功能:用户按照系统输入要求输入取款金额即可取出相应金额的现金。

     (2 2 )查询余额功能:用户可以查看账户所剩现金余额。

     (3 3 )修改密码功能:如果用户想要修改当前密码,通过系统可以设置新密码。

     (4 4 )转账功能:用户可以通过该功能将自己账户上的金额转到其他账户。

     首先,ATM 要求用户输入密码,接下来 ATM 把从银行卡上读到的信息以及用户输入的密码传给 ATM 自动取款机系统,系统通过于数据库中的信息进行核对,如果密码正确 ATM 就要求用户选择事务类型(取款、查询等),直至用户选择退出应用服务,询问用户是否退出银行卡结束服务,如果用户选择结束,则退出银行卡,系统重回登陆界面。

     4 4M .1.3 ATM 自动取款机系统相关的界面 (1 1 )登录界面:

     在整个的系统中,首先用户要输入正确用户登录密码以后才可以进入主界面进行相关的操作。

     (2 2 )主界面:

     当用户输入正确的用户密码以后,出现主界面,包括以下的一些功能:

     a) 主界面有“查询余额”“取款”“转账”“修改密码”等功能选项。

     b) 主界面中还有“退卡”功能选项,点击即退出系统服务。

     (3 3 )取款界面:

     当用户在菜单栏点击取款功能选项,可以进入取款界面:

     a) 首先你可以输入取款的金额,输入的必须为 50 倍数的数字,否则系统会提示输入的金额错误,请重新输入。如果屏幕上有便捷提示,比如:1000元、800 元、500 元等。如果上边有你想要取款的金额,你可以按相对应的按键就可以了,如果没有,你再找一个 “其他金额”按下之后,就可以自由输入自己想取的金额了,输入金额之后,按“确认”,即完成取款功能。

     b) 正确输入取款的金额后,直接点击取款,会再次确认你取款的金额,点击“是”即可以取出取款机吐出的现金,并且数据更新到相关的数据库文件中,以便以后查询。

     (4 4 )余额查询界面:

     在主界面中点击余额查询功能选项,就会弹出余额的窗口。

     (5 5 )修改密码界面:

      在主界面中点击修改密码功能选项,进入修改密码功能界面,系统要求首先输入旧密码,再输入写密码,并对新密码进行第二次确认,全部输入正确修改功能完成。

     (6 6 )转账界面:

     当点击转账功能选项,会出现转账的界面,这时就可以进行转账;分别输入转入的账户和转入的金额,直接点击转入。若转入过程中出错会有相关的提示的操作。

     4 42 .2 系统 Use- -e Case 模型 用户系统登陆取款转账余额查询打印清单<<uses>><<uses>>-结束1*-结束2*-结束3*-结束4*-结束5*-结束6*-结束7*-结束8*修改密码-结束9*-结束10*验证账户<<uses>> 4 4 .3 系统用例描述 4 4 .3.1 M ATM 机 取款 的 用例规约

     用例名称:

     M ATM 取款 简述:

     客户持银行卡(本行 或其他行)从 M ATM 提取现金 actors: 客户和银行主机 基本流:

     1.

      客户插入银行卡。

     2.

      M ATM 从银行卡读入卡号(含银行标识和账号),验证卡的有效性。

     3.

      客户输入密码。

     4.

      M ATM 验证帐号和密码。

     5.

      M ATM 显示包括取款在内的服务功能,客户选择 “ 取款 ” 。

     6.

      输入取款额:客户输入数量为 0 50 元的倍数的取款额。

     7.

      M ATM 向银行主机通知卡号、密码、账号和取款额,获得含有最新余额的取款成功确认信息。

     8.

      M ATM 打印并吐出凭条。

     9.

      M ATM 清点并吐出现金,记录取款成功。

     10.

      M ATM 询问客户是否继续服务。

     11.

      客户选择否,M ATM 吐出银行卡,结束用例,否则回到步骤 骤 5 5 。

     [ [ 用例结束] ] 备选流:

     1. 客户取消服务:

     M ATM 记录服务取消,打印凭条,吐出凭条和银行卡,[ [ 用例失败] ] 2. 客户未及时输入超过 0 30 秒:

     M ATM 吞卡,[ [ 用例失败] ] 3. 卡无效:

     M ATM 吞卡,[ [ 用例失败] ] 4. 读卡器或卡被损坏:

     M ATM 吞卡,[ [ 用例失败] ] 5. 密码错:

     5.1 客户重新输入密码 5.1.2

      累计 3 3 次密 码错误:

     M ATM 吞卡,[ [ 用例失败] ] 6. 无此帐号:

     M ATM 吞卡,[ [ 用例失败] ] 7. M ATM 无现金:

     M ATM 不显示 “ 取款 ” 功能,客户可选择其他服务,

     [ [ 用例失败] ] 8. 取款额超过 M ATM 现金余额:

     M ATM 要求客户重新输入取款额。

     9. 帐户余额不足:

     M ATM 要求客户重新输入取款额。

     10. 取款额超过当日最高限额:

     M ATM 要求客户重新输入取款额。

     11. 网络或银行主机失效、通讯超时:

     M ATM 记录服务取消,打印凭条,吐出凭条和银行卡,[ [ 用例失败] ] 12. 凭条打印失败,纸用完或卡纸:

     12.1 M ATM 通知银行主机取消取款 12.2 M ATM 记录服务取消,吐 出银行卡,[ [ 用例失败] ]

      4 4 .3.2 M ATM 机转账的 用例规约

     13. 吐现金失败:

     13.1 M ATM 通知银行主机取消取款 13.2 M ATM 记录服务取消,吐出银行卡,[ [ 用例失败] ] 14. 客户未及时取走卡:

      M ATM 吞卡,[ [ 用例失败] ] 业务规则

     1. 单 单 笔 取款 金额上限为 0 5000 元

     2. 每月前 前 3 3 笔取款不收手续费

     3. 超过前 3 3 笔之后,在本行本地的 M ATM 机取款 2 2 元每次

     4. 超过前 3 3 笔之后,在本行异地的 M ATM 机取款 4 4 元每次

     5. 超过前 3 3 笔之后,在异行本地的 M ATM 机取款 3 3 元每次

     6. 超过前 3 3 笔之后,在异行异地的 M ATM 机取款 5 5 元每次

     用 例名称:

     M ATM 转账 简述:

     客户持银行卡(本行)从 M ATM 可以将 卡内金额转至其他有效银行卡账户中 actors: 客户和银行主机 基本流:

     1.

      客户插入银行卡。

     2.

      M ATM 从银行卡读入卡号(含银行标识和账号),验证卡的有效性。

     3.

      客户输入密码。

     4.

      M ATM 验证帐号和密码。

     5.

      M ATM 显示包括取款在内的服务功能,客户选择 “ 转账 ” 。

     6.

      输入 转账金额 。

     7.

      M ATM 向银行主机通知卡号、密码、账号和取款额,获得 含有最新余额的 转账 成功确认信息。

     8.

      M ATM 打印并吐出凭条。

     9.

      记录 转账 成功。

     10.

      M ATM 询问客户是否继续服务。

     11.

      客户选择否,M ATM 吐出银行卡,结束用例,否则回到步骤 骤 5 5 。

     [ [ 用例结束] ] 备选流:

     1. 客户取消服务:

     M ATM 记录服务取消,打印凭条,吐出凭条和银行卡,[ [ 用例失败] ] 1. 客户未及时输入超过 0 30 秒:

     M ATM 吞卡,[ [ 用例失败] ] 2. 卡无效:

     M ATM 吞卡,[ [ 用例失败] ]

      4 4 .3.3 M ATM 机修改密码的 用例规约

      用例名称:

     ATM 修改密码 简述:

     客户持银行卡(本行或其他行)在 在 M ATM 机上完成对银行卡账户密码的修改 actors: 客户和银行主机 基本流:

     1.

     客户插入银行卡。

     2.

     ATM 从银行卡读入卡号(含银行标识和账号),验证卡的有效性。

     3.

     客户输入密码。

     4.

     ATM 验证帐号和密码。

     5.

     ATM 显示包括取款在内的服务功能,客户选择 “ 修改密码 ” 。

     6.

     系统提示客户输入旧密码

     7.

     系统提示客户输入新密码,并再次确认新密码 3. 读卡器或卡被损坏:

     M ATM 吞卡,[ [ 用例失败] ] 4. 密码错:

     5.1 客户重新输入密码 5.2

      累计 3 3 次密码错误:

     M ATM 吞卡,[ [ 用例失败] ] 5. 无此帐号:

     M ATM 吞卡,[ [ 用例失败] ] 7 7 . 帐户余额不足:

     M ATM 要求客户重新输入 转账金额 。

     8 8 .转账 额超过当日最高限额:

     M ATM 要求客户重新输入 转账金额 。

     9 9 . 网络或银行主机失效、通讯超时:

     M ATM 记录服务取消,打印凭条,吐出凭条和银行卡,[ [ 用例失败] ] 10 . 凭条打印失败,纸用完或卡纸:

     10.1

     M ATM 通知银行主机取消取款 10.2

     M ATM 记录服务取消,吐出银行卡,[ [ 用例失败] ] 11 . 客户未及时取走卡:

     M ATM 吞卡,[ [ 用例失败] ] 业务规则:

     1. 单日 转账 不 得超过 5000 00 0 元

     2. 本地本行转账免费

     3. 本地异行转账5 +5 元每笔

     4. 异地本行转账加4 +4 元每笔

     5. 异地异行装张9 +9 元每笔

     8.

     ATM 提示修改密码成功。

     9.

     ATM 询问客户是否继续服务。

     10.

     客户选择否,ATM 吐出银行卡,结束用例,否则回到步骤 骤 5 。

     [ 用例结束] 备选流:

     1. 客户取消服务:

     ATM 记录服务取消,打印凭条,吐出凭条和银行卡,[ 用例失败] 2. 客户未及时输入超过 30 秒:

     ATM 吞卡,[ 用例失败] 3. 卡无效:

     ATM 吞卡,[ 用例失败] 4. 读卡器或卡被损坏:

     ATM 吞卡,[ 用例失败] 5. 密码错:

     5.1 客户重新输入密码 5.2

     累计 3 次密码错误:

     ATM 吞卡,[ 用例失败] 6. 无此帐号:

     ATM 吞卡,[ 用例失败] 7. 网络或银行主机失效、通讯超时:

     ATM 记录服务取消,打印凭条,吐出凭条和银行卡,[ 用例失败] 8. 客户未及时取走卡:

      ATM 吞卡,[ 用例失败] 业务规则:

      4 4 .4 系统动态模型 — 活动图 4 4 .4.1 系统总体活动图 合法不正确正确正确不正确不合理合理是否是否不合法插卡 验证帐号输入密码合法帐号?正确?显示系统功能选项修改密码 查询余额取款转帐依次输入旧新密码是否正确显示修改成功返回系统功能页面显示余额输入取款金额验证账户余额及最大可取金额合理?取出现金输入对方帐号合法?转帐成功询问是否打印凭条打印?打印退卡 推出系统

      4 4 .4.2 2 系统登陆模块的活动图

     4 4 .4.3 3 修改密码模块的活动图

     4 44 .4.4 系统取款模块的活动图

     4 4 .4.5 5 系统转账模块的活动图

      5 5 . 系统分析设计 5 5 .1 系统设计模式的选择 经过小组成员的讨论,我们选的设计模式为:代理模式,单例模式和责任链模式。

     5 5 .1.1 代理模式的介绍:

     代理模式的体现:

     代理模式提供一个中介以控制对某个对象的访问。在本系统中,当用户通过ATM 机提出各种请求时,ATM 要访问银行服务器上的数据库,因此存在跨越数据库访问障碍,同时还有网络障碍。在应用代理模式时,由于 Proxy 与 Withdrawal,Transfer,CheckAccount,SaveAccount,ChangePassword 类继承同一接口,所

     以 User 验证完卡类型后调用 Withdrawal 等类时就可以转换为 User 调用 Proxy再调用 Withdrawal 等类,类 Proxy 就是这个中间代理。

     例如:Withdrawal 等类部署在银行服务器上,也就是说 Withdrawal 等类和 ATM的客户程序根本不在一个地址空间之内,如此就存在一个网络障碍。

     这时调用 Withdrawal 等类的方法就比较复杂了。因为我们还要考虑网络的问题,对收到的结果解包等一些操作。

     而在应用了代理模式后,现在已经实现了对 Math 类的代理。存在一问题是在Proxy 类中调用了原实现类 Withdrawal 等的方法。但 Withdrawal 等类并不一定实现所有的方法。为了强迫它实现所有的方法。另一方面,为了我们更加透明地去操作对象,我们在 Withdrawal 等类和 Proxy 类的基础上加一层抽象,即它们都实现 IWithdrawal 接口:

     如此,由 Proxy 类在客户端实现 Withdrawal 等类的所有功能,对客户端隐藏了服务端的行为,有助于屏蔽网络可能带来的问题。

     5 5 .1.2 责任链模式的介绍 责任链模式的体现:

     此模式的想法是给多个对象一个处理请求的机会,从而解耦发送者和接收者,请求沿对象链传递知道被处理。在此系统中,主要体现在手续费的收取问题上:首先由 Withdrawal 类或 Transfer 类提出请求 WithdrawalRequest 或TransferRequest,请求被发送到 Judger 类,Judger 类根据预先设定好的顺序

     传递给第一个类进行处理,若第一个类不能处理或处理完它能处理的请求的相关部分之后,将请求发送给其后继,依次类推,知道请求被最后一个类处理完成。同样的方法还体现在 JudgeAmount 中,根据所操作金额的范围不同,对金额所产生的费用作不同的处理。

     5 5 .2 用例功能的类图设计

     5 5 .2 系统交互模型 — 顺序图 5 5 .2.1 系统取款模块的顺序图 用户 读卡机 屏幕 输入设备 账户管理 点钞机 打印机 事务管理插入磁卡验证账号要求输入密码显示输入密码请求()输入密码传递密码请求验证密码合法性密码合法要求输出事务类型显示选择事务类型请求选择取款请求传递取款请求询问取款金额显示输入取款金额确认输入取款金额传递取款金额请求验证取款金额合法性验证取款金额合法更新账户余额信息请求出钞出钞取钞询问是否打印凭据输出是否打印凭据选择打印确认打印请求打印请求打印打印取出打印数据询问是否进行其他业务输出是否进行其他业务

     5 5 .2.2 系统转账模块的顺序图

      用户 读卡机 屏幕 输入设备 账户管理 打印机 事务管理插入磁卡验证账号要求输入密码显示输入密码请求()输入密码传递密码请求验证密码合法性密码合法要求输出事务类型显示选择事务类型请求选择转帐请求传递转帐请求询问收帐方帐户显示输入收帐方帐户输入收帐方帐户传递收帐方帐户请求验证帐户是否存在验证帐户存在更新账户余额信息选择打印确认打印请求打印请求打印打印取出打印数据询问是否进行其他业务输出是否进行其他业务询问转帐金额显示输入转帐金额输入转帐金额传递转帐金额请求验证转帐金额是否合法验证取款金额合法输出是否打印询问是否打印

     5 5 .3 系统设计类图 +main()-contactno : long-address : char-mailaddress : charUser+infointeraction()-address : char-bankname : char-bankid : intBank+newtype()+deletetype()+altertype()-typename : char-typeno : int-typefeature : charTpye+judgerequest()-transferrequest : bool-transferamount : long-transferdate : char-transfertimes : intJudgeAmount+judgerequest()-withdrawalrequest : bool-transferrequest : bool-accountbankbelong : char-atmbankbelong : charJudgeBank+judgerequest()-typename : char-typeno : int-typefeature : char-cardtype : char-cardno : longJudgeType+judgerequest()-withdrawalrequest : bool-transferrequest : bool-location : char-openaddress : charJudgeRemote+withdrawal()+transfer()+changpassword()+saveaccount()+checkaccount()-accountoverage : long-cardtype : char-accountbankbelong : char-openaddress : char-username : char-userid : long-password : char-withdrawaltimes : int-cardno : long-iflocked : boolAccount+printlist()-transactionamount-transactiondatePrintList+showlogin()+showfunction()+showwithdrawal()+showtransfer()+showchangepassword()+showoverage()-length-widthScreenShow+withdrawal()+transfer()+changpassword()+saveaccount()+checkaccount()-bankname-accountProxy+checkaccount()-cardno-password-userid-usernameCheckAccount+updateaccount()-date : char-withdrawaltimes : intSaveAccount+withdrawal()-withdrawalamount : int-withdrawaldate : char-withdrawtimes : int-withdrawalrequest : bool-cardtype : char-openaddress : char-accountoverage : long-withdrawaltimes : intWithdrawal+transfer()-transferamount : long-transferdate : char-transfertimes : int-transferrequest : bool-withdrawalamount : int-withdrawaldate : char-withdrawaltimes : int-withdrawalrequest : boolTransfer+changpassword()-orginalpassword : char-newpassword1 : char-newpassword2 : charChangePassWord+judgerequest()-withdrawalrequest : bool-transferrequest : boolJudgeFee+judgerequest()-withdrawalrequest : bool-withdrawalamount : int-withdrawaldate : char-withdrawaltimes : int-transferrequest : bool-transferamount : long-transferdate : char-transfertimes : intJudger-withdrawrequest : bool-withdrawalamount : int-withdrawaldate : char-withdrawaltimes : intWithdrawalRequest-transferrequest : bool-transferamount : long-transferdate : char-transfertimes : intTransferRequest+judgerequest()-transferamount : long-transferdate : char-tansfertimes : intAmountRange1+judgerequest()-transferamount : long-transferdate : char-tansfertimes : intAmountRange2+judgerequest()-transferamount : long-transferdate : char-transfertimes : intAmountRange3+judgerequest()-withdrawalrequest : bool-withdrawaldate : char-transferrequest : bool-transferdate : char-date : char-withdrawaltimes : int-transfertimes : intJudgeTime-结束1 *-结束2 *-结束31-结束4*结束1结束2结束3结束4结束5结束6结束7结束8结束9结束10结束11结束12结束13结束14结束15结束16-结束51-结束6 *结束19结束20结束21结束22-结束71-结束8 *+aviableoperation()-atmno : int-atmtype : char-atmbankbelong : char-location : char-date : char-moneyaviable : longAtm

      5 5 .4.1 Can rdinformation 包内类之间关系图:

     +main()-contactno : long-address : char-mailaddress : charUser+infointeraction()-address : char-bankname : char-bankid : intBank+newtype()+deletetype()+altertype()-typename : char-typeno : int-typefeature : charTpye-结束1 *-结束2 *-结束31-结束4*

     5 5t .4.2 Account 包内类之间关系图

     +withdrawal()+transfer()+changpassword()+saveaccount()+checkaccount()-accountoverage : long-cardtype : char-accountbankbelong : char-openaddress : char-username : char-userid : long-password : char-withdrawaltimes : int-cardno : long-iflocked : boolAccount+printlist()-transactionamount-transactiondatePrintList+showlogin()+showfunction()+showwithdrawal()+showtransfer()+showchangepassword()+showoverage()-length-widthScreenShow结束3结束4结束5结束6

     5 5 .4.3 Service 包内类之间关系图: : +withdrawal()+transfer()+changpassword()+saveaccount()+checkaccount()Proxy-bankname-account+checkaccount()CheckAccount-cardno-password-userid-username+updateaccount()SaveAccount-date : char-withdrawaltimes : int+withdrawal()Withdrawal-withdrawalamount : int-withdrawaldate : char-withdrawtimes : int-withdrawalrequest : bool-cardtype : char-openaddress : char-accountoverage : long-withdrawaltimes : int+transfer()Transfer-transferamount : long-transferdate : char-transfertimes : int-transferrequest : bool-withdrawalamount : int-withdrawaldate : char-withdrawaltimes : int-withdrawalrequest : bool+changpassword()ChangePassWord-orginalpassword : char-newpassword1 : char-newpassword2 : char结束7结束8结束9结束10结束11结束12结束13结束14结束15结束16 6 6 .用户使用说明 1. 将卡插入 ATM 机。

     2. 界面提示输入帐号,此时应输入帐号,输入帐号后,点击“继续”。

     3. 界面提示输入密码,此时应输入密码。若想重新输入帐号点击“返回”,若想重新输入密码,点击“取消”。

     4. 输入密码后点击“确定”,若帐号密码正确,进入业务选择界面,若帐号密码错误,界面提示错误信息,并回到输入帐号界面。(若帐号密码错误次数累计为 3 次以上,则所定账户)

     5. 进入业务选择界面,选择相应业务 (1)点击“取款”,进入取款界面,可选择界面显示的数额,也可输入取款金额,取款金额应为 100 倍数并小于帐户余额,否则无效,并重新提示输入取款金额,同时取款金额应小于5000,否则提示取款失败。

     (2)点击“转帐”,系统提示输入对方帐号和转账金额,如需重新输入,点击“重置”,输入后点击“确定”,若对方帐号不存在,重新提示输入对方帐号取款金额,若转账金额大于帐户余额或 5000,提示转账失败,并回到业务选择界面。

     (3)点击“修改密码”,系统提示输入新旧密码,并再次对输入新密码,点击“确定”,若旧密码不正确或新密码不一致或新密码不是 6 位数字串,系统提示重新输入,并回到修改密码界面,若修改成功,密码提示成功信息,并回到业务选择页面。

     (4)点击“余额查询”,系统显示当前用户余额。

     (5)点击“退卡”,系统退卡。

     7 7 .

     系统测试 (一)

     白盒测试 我们是由各个模块的代码编制者自己完成的,检查有无异常以及代码自身的逻辑错误等等。

     (二)

     黑盒测试 黑盒测试中我们使用的是边界值测试,测试用例如下:

     取款测试用例 时间 账号 密码 取 款金额 预期结果 实际结果 1 1 天 0020100001 123456 -100 返回取款界面

     V 2 1 天 0020100001 123456 0 返回取款界面

     V 3 1 天 0020100001 123456 100 取款成功 withdrawtimes+1 卡上余额-100 V 4 1 天 0020100001 123456 2400 取款成功 withdrawtimes+1 卡上余额-2400 V 5 1 天 0020100001 123456 2500 取款成功 withdrawtimes+1 卡上余额-2500

     V 6 1 天 0020100001 123456 2600 取款成功 withdrawtimes+1 卡上余额-2600 V 7 1 天 0020100001 123456 4800 取款成功 withdrawtimes+1 卡上余额-4800 V 8 1 天 0020100001 123456 4900 取款成功 withdrawtimes+1 卡上余额-4900 V 9 1 天 0020100001 123456 5000 取款失败

     V 10 1 天 0020100001 123456 2590 返回取款界面

     V 11 1 天 0020100001 123456 4900 取款成功 withdrawtimes+1 卡上余额-4900 V

      4900 取款成功 withdrawtimes+1 卡上余额-4900 V

      200 取款成功 withdrawtimes+1 卡上余额-200 V

     1 天 0020100001 123456 -100 返回取款界面

     V

      0 返回取款界面

     V

      100 取款失败 V

      12 1 天 0020100001 123456 1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      3000 取款成功 withdrawtimes+1 卡上余额-3000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

     1 天 0020100001 123456 4000 取款成功 withdrawtimes+1 卡上余额-4002 V 13 1 天 0020100003 123456 1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1004 V 14 1 天 0010100002 123456 1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1003 V 15 1 天 0010100004 123456 1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1005 V 16 1 天 0020100001 123456 1000 取款成功 withdrawtimes+1 卡上余额-1000 V

      3000 取款成功 withdrawtimes+1 卡上余额-3000 V

      1000 取款成功 withdrawtimes+1 卡上余额-1000 V

     1 天 0020100001 123456 5000 取款失败

     V

     转账测 时间 账号 密码 转 账 预期结果 实际结果

     试用例 金额 1 1 天 0020100001 123456 -100 返回转账界面

     V 2 1 天 0020100001 123456 0 返回转账界面

     V 3 1 天 0020100001 123456 100 转账成功 withdrawtimes+1 卡上余额-100,对方余额+100 V 4 1 天 0020100001 123456 2400 转账成功 withdrawtimes+1 卡上余额-2400,对方余额+2400 V 5 1 天 0020100001 123456 2500 转账成功 withdrawtimes+1 卡上余额-2500,对方余额+2500 V 6 1 天 0020100001 123456 2600 转账成功 withdrawtimes+1 卡上余额-2600,对方余额+2600 V 7 1 天 0020100001 123456 4800 转账成功 withdrawtimes+1 卡上余额-4900,对方余额+4900 V 8 1 天 0020100001 123456 4900 转账成功 withdrawtimes+1 卡上余额-4900,对方余额+4900 V 9 1 天 0020100001 123456 5000 返回转账界面

     V 10 1 天 0020100001 123456 2590 返回转账界面

     V 11 1 天 0020100001 123456 4900 转账成功 withdrawtimes+1 卡上余额-4900,对方余额+4900 V

      4900 转账成功 withdrawtimes+1 卡上余额-4900,对方余额+4900 V

      200 转账成功 withdrawtimes+1 卡上余额-200,对方余额+200 V

     1 天 0020100001 123456 -100 返回转账界面

     V

      0 返回转账界面

     V

      100 返回转账界面

     V 12 1 天 0020100001 123456 1000 转账成功 withdrawtimes+1 卡上余额-1000,对方余额V

     +1000 13 1 天 0020100003 123456 1000 转账成功 withdrawtimes+1 卡上余额-1005,对方余额+1000 V 14 1 天 0010100002 123456 1000 转账成功 withdrawtimes+1 卡上余额-1004,对方余额+1000 V 15 1 天 0010100004 123456 1000 转账成功 withdrawtimes+1 卡上余额-1009,对方余额+1000 V 16 1 天 0020100003 123456 2500 转账成功 withdrawtimes+1 卡上余额-2509,对方余额+2500 V

     1 天 0020100003 123456 2500 转账成功 withdrawtimes+1 卡上余额-2509,对方余额+2500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 500 转账成功 withdrawtimes+1 卡上余额-509,对方余额+500 V

     1 天 0020100003 123456 400 取款失败 V

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识