华北电力大学
课程名称:软件工程 课程题目:银行存储系统 组员:孟格思 姜婷 刘宏宇
赵雄飞 杨俊森 专业:计算机科学与技术 班级:计算1102
学院:控制与计算机工程学院 时间:2013年10月24号
目录
一、开发背景与目标 ............................................................... 5
1.1开发背景 ................................................................................. 5 1.2开发目标与思想 ..................................................................... 5
二、需求分析 ........................................................................... 5
2.1目标 ........................................................................................ 6
2.1.1 存款业务 ................................................................................. 6 2.1.2 取款业务 ................................................................................. 6 2.1.3 转账业务 ................................................................................. 6 2.1.4 查询业务 ................................................................................. 6
2.2系统的功能性需求 ................................................................. 6 2.3系统需求分析规格说明书 ..................................................... 7 2.4系统ER图 ............................................................................... 7
2.4.4 数据字典 ............................................................................... 7
2.5 系统非功能性需求 ................................................................ 8
2.5.1软硬件环境需求 ...................................................................... 8 2.5.2软件质量需求 .......................................................................... 9 2.5.3用户界面需求 .......................................................................... 9
2.6 面向数据流的设计方法 ...................................................... 9
2.6.1 确定输入流和输出流的边界,从而孤立出变换中心。 ..... 9 2.6.2 完成“第一级分解” .......................................................... 10 2.6.3 完成“第二级分解” .......................................................... 10
2.7软件系统功能/对象结构 ...................................................... 12
2.7.1 银行存储系统用例图 ............................................................ 12 2.7.2 银行存款业务顺序图 ............................................................ 13 2.7.3 银行取款业务顺序图 ............................................................ 14 2.7.4 银行转账业务顺序图 ............................................................ 14 2.7.5 银行转账业务类图 ............................................................... 14
2.8软件质量因素 ....................................................................... 16
2.8.1可用性 .................................................................................... 16 2.8.2可靠性 .................................................................................... 16 2.8.3效率 ........................................................................................ 16 2.8.4安全性 .................................................................................... 16 2.8.5可维护性 ................................................................................ 17 2.8.6可移植性 ................................................................................ 17
三、可行性分析报告 ............................................................. 17
3.1 经济可行性分析 ................................................................ 17
3.2社会可行性分析 ................................................................... 17 3.3技术可行性分析 ................................................................... 17
四、开发环境与项目规划 ..................................................... 18
4.1开发环境 ............................................................................... 18 4.2项目规划与管理 ................................................................... 18
4.2.1开发人员安排 ........................................................................ 18 4.2.2开发进度安排 ........................................................................ 18
五、结构化分析与设计 ......................................................... 18
5.1结构化分析 ........................................................................... 19 5.2结构化设计 ........................................................................... 21
六、面向对象分析与设计 ..................................................... 25
6.1 面向对象方法 ...................................................................... 25 6.2 用例 ..................................................................................... 25 6.3 系统状态图 .......................................................................... 27
七、数据库分析与设计 ......................................................... 28 7.1数据库环境说明 ............................................................... 31 7.3数据库逻辑设计 ............................................................... 31
7.3.1逻辑设计步骤 ........................................................................ 31 7.3.2 逻辑设计关系图 ................................................................... 31
八、人机界面设计 ................................................................. 32
8.1界面设计原则 ....................................................................... 32 8.2系统窗口汇总 ....................................................................... 32
九、软件测试信息报告 ......................................................... 37
9.1测试范围与主要内容 ........................................................... 37 9.2测试方法 ............................................................................... 37 9.3系统测试步骤 ....................................................................... 38 9.4 系统测试用例 ...................................................................... 38
9.4.1 边界测试: ......................................................................... 38 9.4.2 基本路径测试 ....................................................................... 41
9.5系统优点 ............................................................................... 42
十、软件使用说明书 ............................................................. 42
10.1软件概述 ............................................................................. 42 10.2使用说明 ............................................................................. 42
十一、系统开发评价 ............................................................. 42
一、开发背景与目标
1.1开发背景
本系统选题为银行存储系统,是模拟银行存储开发的。随着计算机的飞速发展及应用领域的扩大,特别是计算机网络和电子商务的发展,极大的改变了商业银行传统的经营模式。能够为客户提供方便、快捷、安全的服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。目前,对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化。
1.2开发目标与思想
本系统的设计指导思想是一切为使用者着想,利用JAVA语言在Eclipse下设计了这么一个系统,界面美观,使得用户可以安全的进行操作,便捷,快速的进行注册、存款、取款、修改密码以及完成一些转账的交易,大大提高办公效率,能够及时、准确、有效的帮用户办理各种繁琐的手续,也减缓了银行工作人员的压力。 具体表现为:
(1)系统应该符合银行管理的规定,满足相关人员使用系统的基本需要并要求达到操作过程中,直观、方便、实用、安全等需求;
(2)系统采用模块化程序设计方法,便于系统功能的各种组合和修改,又便于未参加开发的程序人员补充、维护;
(3)系统具备数据库维护功能,及时根据用户需要进行数据添加、删除、修改等操作; (4)采用软硬件环境及先进的管理系统开发方案,利用现有资源,提高系统开发水平和应用效果的目的。
二、需求分析
需求分析说明是管理系统开发的起始阶段,也是软件开发工作中最重要的一环。需求分析的目标是明确系统开发的目标和用户信息需求,提出系统的逻辑方案。为系统设计做好准备。
系统中要求每个银行管理者都有一个系统帐号,并每个帐号都有密码,系统的一切操作都由管理者执行,而不是由存诸用户执行,也主是说存储用户并不直接与系统交互,而是通过管理员与系统交互。该系统主要有四部分业务功能,存款,取款,转账和查询。
储户填写的开户信息表单交给业务员,有业务员输入信息,录入数据库,即开户成功。
储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名,身份证号码,存款类型,存款日期,利率及密码(可选)等信息,并打印存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算得利息并打印出利息清单给储户。转账时要求用户提供转账帐号和被转帐号以及转账金额,查询时同样需要用户输入卡号,密码和查询项等,最终都有业务员操作,将信息更新。
2.1目标
本项目要开发一个银行系统,系统一共分为存款业务、取款业务、转账业务、查询业务四个子系统。
2.1.1 存款业务
银行开展人民币的存储业务,首先判断储户是否有卡,若无卡,则为储户开户,设置密码,并给储户一张银行卡,接着由柜员获取存款信息,存款为死期存款还是活期存款,然后执行存款流程,最后打印出清单给储户。
2.1.2 取款业务
首先有储户提供信息,判断是死期订单还是银行卡,若是死期订单,则判断是否到达期限,若不到达期限,则不能取出钱;若到达期限,则可取出余额,并计算利息,打印出清单给储户。
2.1.3 转账业务
银行个人转账业务采用实盘交易方式,也就是客户必须持有足额的需要转出的人民币,才能按照流程转入被转入储户卡中。先由转出储户提供卡号和密码,从该储户的卡号上取出一定金额的钱,紧接着向被转储户的卡号上存入相同金额的人民币,最后由柜员打印出清单交给储户。
2.1.4 查询业务
客户可以到银行柜台选择查询功能,并提供查询所需要的信息,选择查询类型,最后打印出查询单供储户查看。
2.2系统的功能性需求
系统为柜员提供主功能界面
系统在启动时要求柜员输入登录帐号与密码
系统要通过管理员执行一系操作(如:存钱,取钱,转账,查询等)
管理员代替用户实现存款,取款,查询,转账等操作 储户的一切信息,存储在数据库表中
2.3系统需求分析规格说明书
实现储户开户登记 办理定期存款手续 办理定期取款手续 办理活期存款手续 办理活期取款手续 办理转账手续 实现利息计算 输出明细表 查询卡号信息
2.4系统ER图
2.4.4 数据字典
系统主要关系模式:
账户表(身份证号,姓名,出生日期,性别,交易时间,开户地点,员工号)
银行卡(身份证号,姓名,卡号,存入金额,取出金额,余额,交易时间,密码,员工号) 存单表(存单号,姓名,身份证号,存入金额,交易时间,密码,定期类型,员工号) 利率表(定期类型,利率) 柜员(员工号,姓名)
E-R图如下:
图表 1
2.5 系统非功能性需求
2.5.1软硬件环境需求
(1)软件环境: Win7、Window XP等32,64位操作系统
(2)硬件环境:1)Pentium(R) Dual-Core CPU T4300 @2.10GHz 2.10GHz 安装内存(RAM):3.00GB
2)AMD A6-3400M APU with Radeon(tm)HD Graphics 1.4GHz 安装内存(RAM):2.00GB
3)Celeron(R) Dual-Core CPU T3100 @ 1.90GHz1.90GHz
安装内存(RAM):2.00GB
2.5.2软件质量需求
软件开发所用的系统要能够应用SQL Sever和运行java 的软件Eclipse
2.5.3用户界面需求
用户界面需求就是陈述所需要的用户界面的软件组件。描述每个用户界面的逻辑特征。以下是可能要包括的一些特征。
(1)将要采用的图形用户界面(GUI)标准或产品系列的风格 (2)屏幕布局或解决方案的限制
(3)将出现在每个屏幕的按钮、功能或导航链结(例如一个帮助按钮)。 (4)快捷键
(5)错误信息显示标准
2.6 面向数据流的设计方法
2.6.1 确定输入流和输出流的边界,从而孤立出变换中心。
如下图所示:
图表
2
2.6.2 完成“第一级分解”
基于书上第三章第三题实现在银行储蓄管理系统在一级分解中,可将系统分解成三个子功能模块:用户操作,业务员操作,系统输出。 如下图所示:
图表3
2.6.3 完成“第二级分解”
<1> 用户操作的分解
可将用户操作分解为:开户民,存款,取款,查询。 如下图所示:
图表4
<2>业务员操作的分解
业务员的操作是将用户的操作传送给系统,代替用户与系统交互,所以,业务员的操作与系统的操作基本类似,也可以近似地将业务员看作用户。所以操作员操作可分解为:存款,
取款,转账,查询。并且如用户在开户时设有密码,则进行密码验证。 所以分解图如下:
图表 5
<3> 系统输出分解
系统输出可分解为:计算利息-打印清单,保存新用户信息,更新用户信息,打印存单 分解图如下:
图表 6
2.7软件系统功能/对象结构
2.7.1 银行存储系统用例图
转出卡号
转入卡号
转出卡密码
图表 7
首先,使用系统的柜员先要进行登录。参与者“储户”通过用例“存款”进行信息输入,实现开户或存款功能;再通过用例“取款”完成取款业务,打印清单给用户。通过用例“转
账”实现两个储户之间的转账业务。储户凭卡号和密码可查询该卡的交易信息。
如下是对上述各例的描述。 用例:存款
【前置条件:柜员已登录成功,储户已开户】 系统呈现存款界面
储户提供信息,柜员进行信息录入与维护。
系统调用数据库,确认密码是否正确,若正确则存款成功,打印清单给储户,否则返回主页面。
用例:转账
【前置条件:柜员登录成功,储户选择转账】 系统呈现转账界面
储户提供转出帐号和转入帐号,并提供转出帐号密码。判断转出帐号卡余额是否大于转出金额。满足条件则转账成功,打印清单给储户。否则转账失败。
2.7.2 银行存款业务顺序图
图表 8
2.7.3 银行取款业务顺序图
图表 9
2.7.4 银行转账业务顺序图
图表 10
2.7.5 银行转账业务类图
图表 11
对在分析中找到的各个类进行考察,分别定义它们的属性和操作,考虑它们之间的关系,绘制出类图。
(1)类“储户” 该类中属性有“姓名”、“身份证号”、“性别”和“出生日期”、“交易时间”、“开户地点”、“员工号”,操作有“开户”、“取款”、“存款”、“转账”和“查询”。 (2)类“银行卡”
该类中有属性“身份证号”和“姓名”、“密码”、“卡号”、“存入金额”、“取出金额”、“交易时间”、“余额”、“员工号”。 (3)类“存单”
该类中有属性“身份证号”和“姓名”、“密码”、“存单号”、“存入金额”、“交易时间”、“利率类型”、“员工号”。 (4)类“交易”
该类中有属性 “卡号”、“金额”、“交易日期”、“余额”、“员工号”。操作有“打印清单”。(5)类“存款”
该类中有属性“存款类型”。它还有一个操作“判断存款类型”。 (6)类“取款”
该类中有属性“密码”。它还有操作“利息计算”、“判断余额”、“取款”。 (7)类“转账”
该类中有属性“输入卡号”、“密码”。操作有“转账”、“判断余额”。