1.系统概况

1.1目标系统介绍

随着市场经济的活跃,银行电子化建设迅速发展,ATM交易在银行支付渠道中越来越显现出其重要性,以ATM交易为代表的自助交易正逐步成为现代商业银行为客户服务的主流渠道,也就是我们所常说的自动化与无人化,能够有效减少人力成本,分担客户流。

ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备,英文全称为Automatic Teller Machine。ATM是比较普遍的自助银行设备,可以提供基本的银行服务,例如现金存款、现金取款、在线转账、余额查询等。作为自助式金融服务终端,除了提供金融业务功能之外,还具有维护、测试、事件报告、监控和管理等多种功能。本文将就ATM机的四项基础功能进行系统分析。

1.2适用环境和用户

在市场经济飞速发展的背景下,银行ATM系统一方面是技术发展的产物,另一方面是节约人力成本与提高交易效率的发展需求,基于以上两方面因素分析,当代银行ATM系统适用于经济发展程度高的城市,研究表明越是经济发达的地区其分布量越多,当然其使用频率也随之上升。在经济发达地区人们的经济往来更加频繁,文化程度高,投入相应数量的ATM自助设备能够缓解银行业务压力,保障交易的安全稳定进行,可靠性相对较高,交易方式也更加灵活,为用户提供更加人性化的服务。

该系统主要面向普通用户与管理员用户,普通用户主要针对于有存款理财需求的、资金往来较为频繁的普通百姓和商业人士;管理员则为各大银行的内部专职管理人员,能够较好地处理该系统,对用户信息进行增删改查等操作。

1.3系统功能性需求分析

用户将银行卡插入ATM机,读卡器识别银行卡的真伪,若为真则在显示屏上提示输入银行卡密码。

用户通过键盘输入密码,ATM系统进行验证,若密码正确则进入主界面;若错误则提示重新输入,错误三次自动吞卡。

进入主界面后用户可选择要进行的业务操作,主要为现金存款、现金取款、在线转账、余额查询这四种基本业务操作。

用户选择后显示器进行交互提示和确认操作等信息,操作完毕后用户可以选择打印凭条。

银行内部专职管理人员可对ATM机进行硬件维护和添加现金等操作。

该系统具有良好的可用性、稳定性、可靠性,系统完好、设备可运行是前提,能够做到及时处理账务、监控系统正常运行。

2.系统功能需求模型

2.1识别参与者介绍

参与者主要是普通用户与系统管理员,其主要权限与享受服务已在适用用户部分阐述。普通用户能够进行现金存款、现金取款、在线转账、余额查询等操作,系统管理员对用户信息增删改查,并对ATM机负责。

2.2现金存款用例

用户进入主界面后,点击现金存款业务,ATM机打开存款口,对金额限制为不多于100张且为完好的100元面值人民币,若面值不符规则则显示存款失败,若现金有破损则显示存款失败,若鉴定为假币则直接没收。用户存款完毕后显示屏显示交易完成,选择下一步操作。操作完毕后用户可以选择打印凭条。

2.3现金取款用例

用户进入主界面后,点击现金取款业务,输入取款金额,系统规定一次最多提款两万元人民币,显示屏再次提示输入支付密码,验证通过后进行提款,交易完成后用户可以选择打印凭条。

2.4在线转账用例

用户进入主界面后,点击在线转账业务,输入对方银行卡号,输入转账金额,一次最多转账两万元人民币,显示屏再次提示输入支付密码,验证通过后进行转账业务,交易完成后用户可以选择打印凭条。

2.5余额查询用例

用户进入主界面后,点击余额查询业务,系统显示当前银行卡余额,若想要查看详细业务交易与经济往来则点击查询具体业务,显示屏提示输入起止时间,完成后显示时间区间内所有的交易记录,查询完毕后用户可选择退出系统或现金取款。

2.6用例图

(1)银行客户用例图:

银行客户可以在本系统进行取款、存款、转账、查询余额等相关操作。

(2)银行系统管理人员:

管理人员可以修改本系统的相关信息,对于银行的系统进行维护,修改密码和添加现金的相关操作。

3.系统分析

3.1确认类

对于ATM系统,从功能出发来看,包括现金存款、现金取款、在线转账、余额查询这四项基本业务,而系统主要参与者则是普通用户与系统管理员,因此确认为“普通用户类”、“系统管理员类”,由于ATM系统是主体,因此将ATM系统也单独划分为一个类。

3.2建立类图

图3-2-1银行业务图

3.3建立顺序图

顺序图描述了用况图中用到的对象、参与者实例以及他们之间的消息收发情况, 详细描述了用户和ATM 系统之间以及ATM系统和银行服务器之间的交互过程 。其主要包括“操作银行卡”,“取款”,“存款”,“转账”,“查询账户信息”。涉及到的对象有:客户、ATM 机、银行服务器、 取款界面、存款界面、 转账界面、查询账户信息界面、取款控制、存款控制、转账控制、 查询账户信息控制、验证密码控制、插卡控制、读卡控制、退卡控制。

1、取款顺序图:描述客户取款的过程,包含的对象有:客户,取款界面,取款控制,验证密码控制,银行服务器。

2、存款顺序图:描述客户存款的过程,包含的对象有:客户,存款界面,存款控制,验证密码控制,银行服务器。

3、转账顺序图:描述客户转账的过程,包含的对象有:客户,转账界面,转账控制,验证密码控制,银行服务器。

4、验证密码顺序图:描述银行卡与银行服务器之间验证密码的过程,包含的对象有:客户,插卡控制,读卡控制,ATM密码验证界面,ATM密码验证控制,银行服务器。

图3-3-1验证密码

图3-3-2存款顺序图

图3-3-3取款业务顺序图

图3-3-4转账业务顺序图

3.4建立协作图

图3-4-1业务协作图

面向对象的银行ATM系统分析相关推荐

  1. 面向对象程序设计——银行ATM机系统

    文章目录 针对于面向对象设计--做一个简单的银行ATM机系统 ATM机需求分析 用户类 ATM机类 银行类 注册操作的大概流程 登录操作的大概流程 用户类代码 ATM机类代码 bank类代码(主类) ...

  2. 《软件工程》实验个人报告,南风银行ATM自动柜员机 开发总结报告; 滁州学院课程

    1.实验项目概述 1.1.项目简介 我们小组的项目是南风银行ATM系统,作为软件工程课程的实验项目,我们通过课程实验八个课程的学习.小组集成项目的开发工作,历时八周,基本实现了由计算机控制的持卡人自我 ...

  3. C#——《C#语言程序设计》实验报告——继承与多态——银行ATM程序

    一.实验目的 掌握C#中各种成员的写法: 掌握C#继承和多态概念: 掌握常用接口的使用方法. 二.实验内容 在银行ATM示例的基础上,利用面向对象的思想及语法,进行改进.要求如下: 1)使用面向对象的 ...

  4. C#——银行ATM程序DEMO

    问题描述 1. 使用面向对象的思想,模拟现实世界中的银行.账号.ATM等对象,其中类中有字段.方法: 2. 在程序中适当的地方,使用属性.索引,注意使用修饰符: 3. 使用继承,继承账号(Accoun ...

  5. 用Java模拟一个银行ATM系统

    用Java模拟一个银行ATM系统 系统功能介绍: 全部代码 示例截图 系统功能介绍: 使用面向对象的编程思想,尽可能模拟真实世界中的银行ATM业务流程. main方法里通过调用一行代码,完成整个业务流 ...

  6. C#之银行ATM实例-Part1

    一.题目要求: 在下面银行ATM示例的基础上,利用所学的面向对象的思想及语法,进行改进.要求如下: 1. 使用面向对象的思想,模拟现实世界中的银行.账号.ATM等对象,其中类中有字段.方法: 2. 在 ...

  7. 用Java程序模拟银行ATM机,实现包括存款、取款、查询、转账功能的简单应用

    (1)想象现实世界中的相关操作沙及哪些实体呢?一个是储户,一个是ATM机.因 此根据面向对象中的抽象原则,可将其抽象为两个类:代表储户的账户信息类,代表银行 ATM机的ATM类.外加一个主类(负责实例 ...

  8. java atm模拟系统_Java RPC模式开发一个银行atm模拟系统

    采用rpc模式开发一个银行atm模拟系统. 系统主要提供一个服务Card,该服务接口可以提供登录.查询.取钱.存钱等功能.服务接口的设计和实现自定义. Atm客户端功能需求: 1.ATM可以实现用户登 ...

  9. 课程设计:基于SQL Server的银行ATM 存取款机系统设计与实现

    目录 前言 一.项目背景 1.项目任务 2.项目技能目标 3.需求概述 4.开发环境 5 .问题分析 (1) 银行存取款业务介绍 (2) 客户信息 (3) 银行卡账户信息 (4) 银行卡交易信息 (5 ...

最新文章

  1. 一个复杂系统的拆分改造实践!
  2. ActivityIndicator(菊花)的用法
  3. linux怎么创建vi脚本,Vim 创建Python脚本时候自动补全解释器和编码方法
  4. Android EditText 修改提示字体的大小
  5. 文本挖掘(part7)--Word2vec
  6. python开发笔记软件_图解Python编程神器Jupyter Notebook
  7. security框架工作笔记002---CSRF跨站点请求伪造(Cross—Site Request Forgery)_理解和防御
  8. 2021.9.11周六PAT甲级考试复盘与总结
  9. 谷歌浏览器的一个新特点—关于获取iframe的parent对象
  10. Junit框架使用--JUnit常用断言及注解
  11. usb转ttl测试软件,usb转ttl驱动
  12. 一元线性回归(最小二乘法)
  13. 生成权重 transorflow:Early stoppting conditioned on metric `val_accuracy` which is not available
  14. 服务器维护 灵魂兽,魔兽世界7.0新灵魂兽麋鹿捕捉方法
  15. 阿尔法python 第四章 程序的控制结构
  16. 洞察数据中隐藏的故事——网易有数的“正确”使用方式
  17. 高兴,今天总算鸟枪换炮了~
  18. Oracle 计算百分比
  19. 深度:从 Office 365 新图标来看微软背后的设计新理念
  20. 利用python,20行代码即可实现照片墙,还可以生成爱心形状哟

热门文章

  1. 【转】2012年6月26 – 盛大PHP工程师最新面试题
  2. CSS------伪类(:first)和伪元素(::after)汇总以及区别分析
  3. 幼儿园观察记录的目的和目标_幼儿园观察记录:如何让幼儿在区角活动中真正动起来...
  4. G722 Series Intro
  5. IDEA DEBUG 启动慢,启动卡死,本地IDEA环境,千万千万不要在方法上打断点!太坑了!
  6. Java工具:使用POI读取和写入Excel
  7. 主和取范式与主析取范式
  8. ROBOGUIDE仿真教程
  9. form表单如何加css框架,如何写好CSS系列之表单(form)
  10. 【PLC】Q02HCPU USB驱动安装