银行管理系统软件工程课设报告.docx
- 文档编号:4857673
- 上传时间:2022-12-10
- 格式:DOCX
- 页数:15
- 大小:96.61KB
银行管理系统软件工程课设报告.docx
《银行管理系统软件工程课设报告.docx》由会员分享,可在线阅读,更多相关《银行管理系统软件工程课设报告.docx(15页珍藏版)》请在冰豆网上搜索。
银行管理系统软件工程课设报告
学习报告
现代软件工程
课程名称:
银行管理系统
题目名称:
学生姓名:
学号:
课程成绩:
二零一六年六月
1前言0
1.1系统的背景及开发意义0
1.2系统的开发环境及工具0
2系统需求分析2
2.1系统功能需求分析2
2.1.1用户分析需求描述2
2.1.2系统功能分析建模2
2.2系统数据需求分析3
2.2.1系统数据信息描述3
2.2.2系统数据分析建模6
2.3其他需求分析8
3系统总体设计9
3.1整体架构设计9
3.2系统总体结构设计9
3.3系统数据库设计10
4系统详细设计及编码实现14
4.1用户操作模块的设计与实现14
4.1.1用户操作模块的功能14
4.1.2用户操作模块的算法设计14
4.2业务员操作设计与实现14
4.2.1业务员操作模块的功能14
4.2.2业务员操作模块的算法设计14
4.3系统输出模块设计与实现15
4.3.1系统输出模块的功能15
4.3.2系统输出模块的算法16
5系统测试17
5.1测试的目的及技术17
5.2测试的步骤17
5.3测试的过程18
5.3.1存款模块功能测试19
5.3.2取款模块功能测试19
5.3.3转账模块功能测试19
5.4集成测试及确认测试19
5.4.1集成测试19
5.4.2确认测试20
1前言
1.1系统的背景及开发意义
(1)系统背景介绍
随着计算机的飞速发展及应用领域的扩大,特别是计算机网络和电子商务的发展,极大的改变了商业银行传统的经营模式。
能够为客户提供方便、快捷、安全的服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。
目前,对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化。
(2)系统开发的意义
方便用户快速的进行存款、取款、修改密码以及完成一些转账的交易,大大提高办公效率,能够及时、准确、有效的帮用户办理各种繁琐的手续,也减缓了银行工作人员的压力。
1.2系统的开发环境及工具
(1)系统开发的环境
硬件:
Windows2000服务器、希捷ST9500420AS(500GB/7200转/分)硬盘、2GB(DDR31333MHz)内存
软件:
Windows10旗舰版64位SP1(DirectX11)
(2)系统开发的工具
系统采用MicrosoftVisualStudio2010、SQLServer2008数据库开发工具、
C/S结构。
下面对开发中采用的工具进行说明:
1MicrosoftVisualStudio2010简介
VisualStudio是目前最流行的Windows平台应用程序的集成开发环境,Visual
Studio2010版本集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明
了。
并且支持开发面向Windows7的应用程序。
除了MicrosoftSQLServer,它还支持?
IBM?
DB2和Oracle数据库。
2SQLServer2008数据库简介
SQLServer2008在Microsoft的数据平台上发布,可以组织管理任何数据。
可以将各种文档的数据直接存储到数据库中。
可以对数据进行多种操作。
这个平台具有可信任、高效、智能三大特点。
3C/S结构简介
C/S结构,即客户机和服务器结构。
它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低
了系统的通讯开销。
C/S结构构相对于B/S架构而言有许多优点:
a.响应速度快
b.软件设计可以更好的满足用户个性化的需求
c.数据处理能力强大
d.系统安全性更有保障
2系统需求分析
2.1系统功能需求分析
2.1.1用户分析需求描述
本系统包括储户子系统、业务员子系统两个用户子系统
(1)储户
储户子系统具有开户、存款、取款、查询的功能。
①
开户:
输入姓名、联系方式、地址进行注册开户
r.ttx.rr>a.、.r.t.*•、“一rr*tr
②
仔款:
选择金额、
仔款类型
③
取款:
选择金额
④
查询:
通过业务员进行查询
(2)业务员
业务员子系统具有登录、添加用户、代用户实现存款、取款、查询的功能。
1登录:
输入员工号、登录密码、选择业务员登录角色
2添加用户:
业务员在系统管理中添加储户信息
3存款:
提交存款信息、核对信息、信息输入系统、打印存单
4取款:
提交取款信息、核对信息、信息输入系统、打印存单
5储户查询:
业务员进入查询模块输入查询条件进行查询
2.1.2系统功能分析建模
本系统采用数据流图的模型工具建模。
(1)数据流图(DFD的介绍
数据流图简称DFDffl,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,它只反映系统必须完成的逻辑功能,是一种功能模型。
(2)数据流图的建立
1建立系统顶层数据流图:
根据银行管理系统需求分析可知银行管理系统的顶层数据流图是银行管理系统与储户、管理员两个外部实体进行数据交换,如图
2.1。
图2.1银行管理系统顶层图
2数据流图分解:
银行管理系统按功能划分为储户子系统、业务员子系统两个部分,如图2.2。
储户通过开户模块可以进行注册,通过存款模块可以选择存款类型进行存款,通过取款模块可以进行取款,通过业务员可以查询个人信息;业务员登录后可以帮助储户实现存取款,以及查询。
图2.2银行管理系统0层图
3数据流图功能分解,如图2.3
图2.3银行管理系统1层图
2.2系统数据需求分析
2.2.1系统数据信息描述
本系统的数据信息有存款信息、取款信息、清单信息、转账单信息。
(1)存款信息:
姓名、卡号、交易时间、存入金额/姓名、存单号、存入金额、存款年限
(2)取款信息:
姓名、卡号/存单号、密码、取款时间、取款金额、身份证号
(3)清单信息:
姓名、交易时间、取款金额、存款金额、余额
(4)转账单信息:
转入卡号、转出卡号、密码、金额
2.2.2系统数据分析建模
(1)实体-关系模型建立
实体-关系模型简记E-R图是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。
1储户实体关系:
储户实体具有姓名、住址、身份证号码等属性;存款关系具有金额、存款类型、到期日期、存款日期等属性;取款关系具有金额、取款日期等属性。
储户和管理员之间具有存款、取款和查询的联系,和系统有打印清单的联系。
2管理员实体关系:
管理员实体具有员工号、姓名等属性;存款关系具有金额、存款类型、到期日期、存款日期等属性;取款关系具有金额、取款日期等属性。
管理员和系统之间具有存款、取款和查询联系。
实体E-R图见图2.4。
图2.4实体E-R图
2.3其他需求分析
(1)系统性能需求分析
1数据精确度需求:
在精度需求上,根据实际需要,数据在输入、输出及传输的过程中要满足各种精度的需求根据关键字精度的不同。
2响应时间需求:
无论是客户端和服务端,当用户进行操作时,系统反应的时间应在5秒以内。
系统应能及时反映各种非正常情况,避免用户出现长时间等待甚至系统无响应。
3用户使用性需求:
界面设计易于操作,在用户使用时在客户端服务器端进行验证,并提示用户输入正确数据和正确的操作系统。
4安全保密性需求:
每个储户都有权限设置,对储户的信息进行加密设置。
5操作性需求:
支持Windows200C及以上的操作系统,设计连接SQLServer数据库。
(2)系统输入/输出需求分析
符合精度的设定,数据的输入输出都应该为数字、字母及汉字,不应该含有字符形式
(3)系统错误处理需求分析
1数据库存储空间不够,引起数据库访问变慢等问题需要对磁盘进行扩展和维护。
2执行程序非正常退出,响应确实,修改源代码前应备份。
3数据库没启动引起访问问题,须启动数据库服务器。
3系统总体设计
3.1整体架构设计
本系统采用C/S结构(客户机/服务器结构)作为设计模型。
其中包括储户子系统、业务员子系统两部分。
根据现在所掌握的计算机技术,选择SQLServer2008
作为后台数据库开发工具,SQL查询语言进行数据库的操作访问;选择VisualStudio2010作为应用程序开发工具,WinForm窗体应用程序搭建系统运行模块。
银行管理系统主要实现储户线上操作和业务员管理协助的功能,本系统包括开户、存款、取款、查询、用户管理、储户信息六个功能模块。
3.2系统总体结构设计
银行管理系统分为用户操作结构设计,业务员操作结构设计,系统输出结构设计三个部分。
(1)系统的主要功能如下:
①
实现储户开户登记
②
办理定期存款帐
③
办理定期存款手续
④
理活期取款帐?
⑤
实现利息计算
⑥
输出明细表
⑦
查看帐户信息
(2)银行管理系统的功能模块结构图:
图3.1银行管理系统功能模块结构图
3.3系统数据库设计
本系统的数据库名称是xskqgl.mdf,里面包含5个表,依次分别是储户信息表、
银行卡信息表、存款信息表、取款信息表、业务员信息表,下面将对这些表格
介绍。
(1储户信息表
储户信息表设计有身份证号、姓名、出生日期、性别、开户地点、开户日期、开户业务员员工号共7个字段。
表3.1储户信息表
字段
类型
列名
备注
IDNumbe
varchar
身份证号
IDName
varchar
姓名
IDBirthda
varchar
出生日期
IDSex
varchar
性别
AccountOpening
varchar
开户地点
Site
AccountOpening
varchar
开户日期
Date
StaffNumber
varchar
员工号
(2)银行卡信息表
银行卡信息表设计有银行卡号、银行卡密码、身份证号、姓名、余额、交易时间、员工号共7个字段。
其中身份证号与存款信息表中的身份证号对应,姓名与存款信息表中姓名对应。
表3.2银行卡信息表
字段
类型
列名
备注
CardNumber
int
银行卡号
CardPassword
int
银仃卡密码
IDNumber
varchar
身份证号
与存款信息表中的身份证号对应
IDName
varchar
姓名
与存款信息表中的姓名对应
CurrentBalanee
double
余额
Transaction
Datetime
varchar
交易时间
StaffNumber
varchar
员工号
(3)存款信息表
存款信息表设计有存单号、存单密码、身份证号、姓名、存入金额、存款类型、交易时间、存款业务员员工号共8个字段。
其中身份证号和姓名与取款信息表中的对应。
表3.3存款信息表
字段
类型
列名
备注
SlipNumber
varchar
存单号
SlipPassword
int
存单密码
IDNumber
varchar
身份证号
与取款信息表中的
身份证号对应
IDName
varchar
姓名
与取款信息表中的
姓名对应
IncomeAmount
double
存入金额
DepositType
varchar
存款类型
Transcation
Datetime
varchar
交易时间
StaffNumber
varchar
员工号
(4)取款信息表
取款信息表包括6个字段,分别为银行卡号、存入金额、支出金额、余额、交易时间、取款业务员员工号。
其中银行卡号与银行卡信息表中的银行卡号对应。
表3.4取款信息表
字段
类型
列名
备注
CardNumber
int
银行卡号
与银仃卡号信息表中的银行卡号对应
IncomeAmount
int
存入金额
PaymentAmount
double
支出金额
CurrentBalanee
double
余额
TranscationTime
varchar
交易时间
StaffNumber
varchar
员工号
(5)业务员信息表
业务员信息包括
2个字段,
分别为员工号和员工名。
表3.5业务员信息表
字段
类型
列名
备注
StaffNumber
varchar
员工号
StaffName
varchar
员工名
4系统详细设计及编码实现
银行管理系统有用户操作,业务员操作,系统输出三个功能模块
4.1用户操作模块的设计与实现
4.1.1用户操作模块的功能
(1)存款模块功能:
用户插入银行卡,储的现金。
(2取款模块功能:
用户插入银行卡,需要取的金额。
(3)转账模块功能:
用户插入银行卡,
输入密码,点击存款按钮,放入需要存
输入密码,点击取款按钮,选择或输入
输入密码,点击转账按钮,输入需要转
示,如图4.1
账的账户,选择转账金额。
(4)查询模块功能:
用户插入银行卡,输入密码,点击查询按钮
4.1.2用户操作模块的算法设计
根据功能需求分析和结构设计来实现用户操作模块算法,算法用程序流程图表
插入储户银行卡,储户输入密码,点击取款按钮,选择或输入需要
取的金额。
(4)查询:
插入储户银行卡,储户输入密码,点击查询按钮。
422业务员操作模块的算法设计
根据功能需求分析和结构设计来实现业务员操作模块算法,算法用程序流程图表示,如图4.4
图4.4业务员操作模块程序流程图
4.3系统输出模块设计与实现
4.3.1系统输出模块的功能
(1)计算利息:
根据储户存款和存款类型计算利息,打印清单。
(2)保存新用户信息:
输入新用户信息,进行保存。
(3)更新用户信息:
选择需要更新的用户信息,更改信息,进行保存。
(4)打印存单:
打印用户存单信息。
4.3.2系统输出模块的算法
根据功能需求分析和结构设计来实现系统输出模块算法,算法用程序流程图表示,如图4.8
图4.8系统输出模块程序流程图
5系统测试
5.1测试的目的及技术
本系统采用测试技术有黑盒测试技术和白盒测试技术,采用的测试步骤有单元测试、集成测试和确认测试。
(1)测试的目的
系统测试其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案,尽可能彻底地检查出程序中的错误,提高软件系统的可靠性。
(2)测试的技术
1黑盒测试技术
黑盒测试是通过使用整个软件或某种软件功能来严格地测试,在测试时只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。
2白盒测试技术
白盒测试是通过程序的源代码进行测试而不使用用户界面。
这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。
5.2测试的步骤
(1)单元测试
单元测试是指对软件中的最小可测试单元进行检查和验证。
对于单元测试中单元的含义。
总的来说,单元就是人为规定的最小的被测功能模块。
单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。
(2)集成测试
集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。
。
集成测试是在单元测试的基础上,集成测试采用的方法是测试软件单元的组合能否正常工作,以及与其他组的模块能否集成起来工作。
最后,还要测试系统所有模块组合在一起能否正常工作。
集成测试的主要目的在于发现单元之间接口的错误以及发现集成后软件同总体设计分析不一致的地方,重点在于测试各个模块连接起来后通过接口传递的数据是否会错误或丢失。
(3)确认测试
确认测试的目的是进一步验证软件的有效性,这就是确认测试的任务,验证软件的功能和性能如同用户所合理期待的那样。
确认测试过程包括安装测试,功能测试,可靠性测试,安全性测试,时间及空间性能测试,易用性测试,可移植型测试,可维护性测试,文档测试。
5.3测试的过程
5.3.1存款模块功能测试
(1)存款模块的功能
储户插入银行卡,输入密码,点击存款按钮,放入需要存储的现金,显示存储完成,点击退卡。
(2)存款模块测试用例:
表5.1存款模块测试用例
输入条件控件的使用
预期输出结果
插入银行卡
弹出输入密码窗口
输入密码
进入功能界面
选择存款
弹出放入现金提示
放入需要存储的现金
显示确认存储完成窗口
点击确认
进入功能界面
点击退卡
退出银行卡
(3)测试结果
测试结果与预期结果相同,输入密码可以进入功能界面,可以进行存款操作,因此存款模块功能完整。
(4)评价
根据系统的测试和实际需求的分析,可以看出存款模块的运行正常,实现的功能与预期结果一致,基本实现了存款的功能
5.3.2取款功能模块测试
(1)取款模块的功能
储户插入银行卡,输入密码,点击取款按钮,选择需要取的金额,取款后进入主界面,点击退卡。
(2)取款模块测试用例
表5.2取款模块测试用例
输入条件
预期输出结果
控件的使用
插入银行卡
弹出输入密码窗口
输入密码
进入功能界面
选择取款
弹出取款界面
选择需要取的金额
弹出提示取款界面
取走现金
弹出确认界面
点击确认
进入功能界面
选择退卡
退出银行卡
(3)测试结果
测试结果与预期结果相同,取款的功能完善。
(4)评价
根据系统的测试和实际需求的分析,可以看出取款模块的运行正常,实现的功能与预期结果一致。
5.3.3转账模块功能测试
(1)转账模块的功能
储户插入银行卡,输入密码,点击转账按钮,输入转账的账户及金额,确认后,进入功能界面,点击退卡。
(2)转账模块测试用例
表5.3请假申请模块测试用例
输入条件控件的使用
预期输出结果
插入银行卡
弹出输入密码窗口
输入密码
进入功能界面
选择转账
弹出转账界面
输入账户及金额
弹出确认界面
点击确认
进入功能界面
选择退卡
退出银行卡
(3)测试结果
测试结果与预期结果相同
(4)评价
根据系统的测试和实际需求的分析,可以看出转账模块的运行正常,实现的功能与预期结果一致。
5.4集成测试及确认测试
541集成测试
(1)集成测试过程:
1存款模块:
存款记录可以通过接口在存款模块中查询。
2取款模块:
在取款模块生成的记录可以通过接口在取款模块中显示。
3转账模块:
在转账模块生成的记录可以通过接口在转账模块中显示。
542确认测试
(1)安装测设:
本系统的客户端开发采用的是MicrosoftVisualStudio2010软件,服务器端采用的是SQLServer2008数据库,在任意一台Windows的操作系统上都能顺利的进行安装。
(2)功能测试:
分别以储户、业务员的身份登录系统进行存款功能、取款功能、转账功能,均能满足设计要求。
但在部分功能上缺少人性化设计:
存在的缺项:
在实现取款功能中,储户只能选择取款金额,不能自定义输入。
解决办法:
将取款金额的选项改成输入框控件来实现,这样更加方便。
(3)安全性测试:
进入系统要先输入密码,正确的密码才可以进入,而且业务员可以对系统的用户进行管理,这样确保了系统的用户的范围,提高了系统使用的
安全性。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 银行 管理 系统软件 工程 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)