软件工程银行卡管理系统课程设计.docx
《软件工程银行卡管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《软件工程银行卡管理系统课程设计.docx(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、华北电力大学课程名称:软件工程课程题目:银行存储系统组员:孟格思 姜婷 刘宏宇 赵雄飞 杨俊森专业:计算机科学与技术学院:控制与计算机工程学院时间:2013年10月24号目录华北电力大学1一、开发背景与目标21.1开发背景21.2开发目标与思想2二、需求分析22.1目标32.1.1 存款业务32.1.2 取款业务32.1.3 转账业务32.1.4 查询业务32.2系统的功能性需求42.3系统需求分析规格说明书42.4系统ER图42.4.4 数据字典42.5 系统非功能性需求62.5.1软硬件环境需求62.5.2软件质量需求62.5.3用户界面需求62.6 面向数据流的设计方法62.6.1 确定
2、输入流和输出流的边界,从而孤立出变换中心。62.6.2 完成“第一级分解”72.6.3 完成“第二级分解”72.7软件系统功能/对象结构102.7.1 银行存储系统用例图102.8软件质量因素132.8.1可用性132.8.2可靠性132.8.3效率132.8.4安全性132.8.5可维护性132.8.6可移植性14三、可行性分析报告143.1 经济可行性分析143.2社会可行性分析143.3技术可行性分析14四、开发环境与项目规划154.1开发环境154.2项目规划与管理154.2.1开发人员安排154.2.2开发进度安排15五、结构化分析与设计155.1结构化分析165.2结构化设计18六
3、、面向对象分析与设计22七、数据库分析与设计257.1数据库环境说明267.2数据库命名标准与规范267.3数据库逻辑设计277.3.1逻辑设计步骤277.4数据库物理设计277.4.1数据库物理设计步骤277.4.2表、视图汇总277.4.3各表、视图设计详解27八、人机界面设计288.1界面设计原则288.2系统窗口汇总28九、软件测试信息报告329.1测试范围与主要内容339.2测试方法339.3系统测试步骤339.4 系统测试用例339.5系统优点37十、软件使用说明书3710.1软件概述3710.2使用说明37一、开发背景与目标1.1开发背景本系统选题为银行存储系统,是模拟银行存储开
4、发的。随着计算机的飞速发展及应用领域的扩大,特别是计算机网络和电子商务的发展,极大的改变了商业银行传统的经营模式。能够为客户提供方便、快捷、安全的服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。目前,对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化。1.2开发目标与思想本系统的设计指导思想是一切为使用者着想,利用JAVA语言在Eclipse下设计了这么一个系统,界面美观,使得用户可以安全的进行操作,便捷,快速的进行注册、存款、取款、修改密码以及完成一些转账的交易,大大提高办公效率,能够及时、准确、有效的帮用户办理
5、各种繁琐的手续,也减缓了银行工作人员的压力。具体表现为:(1)系统应该符合银行管理的规定,满足相关人员使用系统的基本需要并要求达到操作过程中,直观、方便、实用、安全等需求;(2)系统采用模块化程序设计方法,便于系统功能的各种组合和修改,又便于未参加开发的程序人员补充、维护;(3)系统具备数据库维护功能,及时根据用户需要进行数据添加、删除、修改等操作;(4)采用软硬件环境及先进的管理系统开发方案,利用现有资源,提高系统开发水平和应用效果的目的。二、需求分析需求分析说明是管理系统开发的起始阶段,也是软件开发工作中最重要的一环。需求分析的目标是明确系统开发的目标和用户信息需求,提出系统的逻辑方案。为
6、系统设计做好准备。系统中要求每个银行管理者都有一个系统帐号,并每个帐号都有密码,系统的一切操作都由管理者执行,而不是由存诸用户执行,也主是说存储用户并不直接与系统交互,而是通过管理员与系统交互。该系统主要有四部分业务功能,存款,取款,转账和查询。储户填写的开户信息表单交给业务员,有业务员输入信息,录入数据库,即开户成功。储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名,身份证号码,存款类型,存款日期,利率及密码(可选)等信息,并打印存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算得利息并打印出利息清单给储户。转账时
7、要求用户提供转账帐号和被转帐号以及转账金额,查询时同样需要用户输入卡号,密码和查询项等,最终都有业务员操作,将信息更新。2.1目标本项目要开发一个银行系统,系统一共分为存款业务、取款业务、转账业务、查询业务四个子系统。2.1.1 存款业务银行开展人民币的存储业务,首先判断储户是否有卡,若无卡,则为储户开户,设置密码,并给储户一张银行卡,接着由柜员获取存款信息,存款为死期存款还是活期存款,然后执行存款流程,最后打印出清单给储户。 2.1.2 取款业务首先有储户提供信息,判断是死期订单还是银行卡,若是死期订单,则判断是否到达期限,若不到达期限,则不能取出钱;若到达期限,则可取出余额,并计算利息,打
8、印出清单给储户。2.1.3 转账业务银行个人转账业务采用实盘交易方式,也就是客户必须持有足额的需要转出的人民币,才能按照流程转入被转入储户卡中。先由转出储户提供卡号和密码,从该储户的卡号上取出一定金额的钱,紧接着向被转储户的卡号上存入相同金额的人民币,最后由柜员打印出清单交给储户。2.1.4 查询业务客户可以到银行柜台选择查询功能,并提供查询所需要的信息,选择查询类型,最后打印出查询单供储户查看。 2.2系统的功能性需求 系统为柜员提供主功能界面 系统在启动时要求柜员输入登录帐号与密码 系统要通过管理员执行一系操作(如:存钱,取钱,转账,查询等) 管理员代替用户实现存款,取款,查询,转账等操作
9、 储户的一切信息,存储在数据库表中2.3系统需求分析规格说明书 实现储户开户登记 办理定期存款手续 办理定期取款手续 办理活期存款手续 办理活期取款手续 办理转账手续 实现利息计算 输出明细表 查询卡号信息2.4系统ER图 2.4.4 数据字典数据名字:存款数据来源:银行卡信息表/存单信息表数据目的:存款单数据组成:姓名+卡号+交易时间+存入金额 /姓名+存单号+存入金额+存款年限数据名字:取款数据来源:储户 数据目的:取款单数据组成:姓名+卡号/存单号+密码+取款时间+取款金额+身份证号数据名字:清单数据来源:银行卡表、存单表、利率表数据目的:储户数据组成:姓名+交易时间+取款金额+存款金额
10、+余额数据名字:转账单数据目的:银行卡表数据组成:转入卡号+转出卡号+密码+金额系统主要关系模式:账户表(身份证号,姓名,出生日期,性别,交易时间,开户地点,员工号)银行卡(身份证号,姓名,卡号,存入金额,取出金额,余额,交易时间,密码,员工号)存单表(存单号,姓名,身份证号,存入金额,交易时间,密码,定期类型,员工号)利率表(定期类型,利率)柜员(员工号,姓名)E-R图如下:图表 12.5 系统非功能性需求2.5.1软硬件环境需求(1)软件环境: Win7、Window XP等32,64位操作系统(2)硬件环境:1)Pentium(R) Dual-Core CPU T4300 2.10GHz
11、 2.10GHz 安装内存(RAM):3.00GB 2)AMD A6-3400M APU with Radeon(tm)HD Graphics1.4GHz 安装内存(RAM):2.00GB 3)Celeron(R) Dual-Core CPU T3100 1.90GHz1.90GHz 安装内存(RAM):2.00GB2.5.2软件质量需求 软件开发所用的系统要能够应用SQL Sever和运行java 的软件Eclipse2.5.3用户界面需求 用户界面需求就是陈述所需要的用户界面的软件组件。描述每个用户界面的逻辑特征。以下是可能要包括的一些特征。(1)将要采用的图形用户界面(GUI)标准或产品
12、系列的风格 (2)屏幕布局或解决方案的限制(3)将出现在每个屏幕的按钮、功能或导航链结(例如一个帮助按钮)。(4)快捷键(5)错误信息显示标准2.6 面向数据流的设计方法2.6.1 确定输入流和输出流的边界,从而孤立出变换中心。如下图所示:图表22.6.2 完成“第一级分解” 基于书上第三章第三题实现在银行储蓄管理系统在一级分解中,可将系统分解成三个子功能模块:用户操作,业务员操作,系统输出。如下图所示:银行存储管理系统用户操作系统输出业务员操作图表32.6.3 完成“第二级分解” 用户操作的分解可将用户操作分解为:开户民,存款,取款,查询。如下图所示:用户操作存款取款转账查询提交存款信息提交
13、取款信息提交转账信息提交用户查询表 图表4业务员操作的分解业务员的操作是将用户的操作传送给系统,代替用户与系统交互,所以,业务员的操作与系统的操作基本类似,也可以近似地将业务员看作用户。所以操作员操作可分解为:存款,取款,转账,查询。并且如用户在开户时设有密码,则进行密码验证。所以分解图如下:图表 5 系统输出分解系统输出可分解为:计算利息-打印清单,保存新用户信息,更新用户信息,打印存单分解图如下:图表 62.7软件系统功能/对象结构2.7.1 银行存储系统用例图图表 72.7.2 银行存款业务顺序图图表 82.7.3 银行取款业务顺序图图表 92.7.4 银行转账业务顺序图图表 102.7
14、.5 银行转账业务类图图表 112.8软件质量因素2.8.1可用性a.改进的内部体系结构;b.发生系统故障时迅速恢复;c.改进了开发人员工具代码;d.减少系统重新启动情况;e.用户界面与Windows系统兼容。2.8.2可靠性在银行等服务性行业,其软件系统的可靠性直接关系到自身的声誉和生存发展竞争能力。a避免需求分析定义错误的出现。b.在完成软件时尽量避免设计错误、编码错误以及测试错误提高健壮性,增强对非法输入的容错能力。c.在规定的条件下,尽可能减少系统失效的概率;d.在规定的时间周期内,在所述条件下软件能够执行特定的功能。2.8.3效率程序响应时间基本要求应在人的感觉和视觉事物范围内,信息
15、交换时间基本要求在程序调用前调用后都与数据库保持同步更新,网络信息交换施加应该小于程序调用时间。允许庞大的事务请求,并提供更短的相应时间和更快的事务速率。数据出错时能够尽快的恢复,尽可能地减少损失。2.8.4安全性a.系统要求在有较高的安全性,由于在储蓄和转账时,用户的账号需要在网络上传输,所以必须提供额外的安全措施,在此我们设置了用户和柜员的权限。b.数据库系统要进行多次备份,以免数据的破坏或被攻击。c.有极高的数据精确度。在进行向数据库文件提取数据时,需求数据记录定位精确,在往数据库文件数组中添加数时,要求输入数精确金额,身份证,卡号等按消息设定字符数。在汇率转换、利息计算时不能因数据精确
16、度不足导致用户资金损失。2.8.5可维护性a.改进和补充文档提高程序的可理解性,提高可维护性可移植性。b软件维护过程中,维护小组也可以采取与主程序员小组和结构普查类似的方式,以保证程序的质量。c.软件在运行期间,为了纠正新发现的错误或缺陷,为了适应计算机环境的变化,为了响应用户新的需求,必须进行修改。2.8.6可移植性为获得较高的可移植性,在设计过程中采用通用的程序设计语言和运行支撑环境。尽量不用与系统的底层相关性强的语言。数据库也应有很好的更新能力及适应性。 三、可行性分析报告 可行性研究的目的就是用最小的代价在最短的时间内确定该软件项目是否能够开发,是否值得去开发。实质上就是进行一次简化、
17、压缩了的需求分析、设计过程。可从三个方面分析研究每种解决问题的可行性3.1 经济可行性分析经济可行性:进行开发成本的估算以及了解得到效益的评估,确定要开发项目是否值得投资开发。对银行业来说,是依靠存款、贷款之间的差额来生存的,所以要尽可能的拉拢更多的客户使用本行,银行存储系统是为了能让为客户更便捷的服务,从而更具有吸引力。从银行角度出发还是非常愿意把一部分资金投入到这方面研究当中的。3.2社会可行性分析开发的银行卡存储系统需要根据银行卡管理规定操作,不得有侵害他人隐私盗取金额为目的。银行卡存储系统方便运行操作,组内人员有着良好的道德修养。会根据用户的实际需要来开发此程序,操作快捷,易于掌握。3
18、.3技术可行性分析技术可行性:对项目的功能、性能、限制条件进行分析,确定在现有的资源和技术件下系统是否能实现。(开发的风险、资源的有效性、技术)通过对开发风险、资源有效性和技术分析后,认为开发银行存储系统风险小,资源充足,技术可以应付,但是一定要以生活中的银行管理过程中的信息为基础。四、开发环境与项目规划4.1开发环境 利用Java语言强大功能,并具有面向对象开发等的特点,联系实际银行卡管理系统的应用界面,采用Eclipse开发工具,以Win7、Window XP等32,64位操作系统、Oracle为后台开发出了一套银行存储系统,基本上实现了存款、取款、查询、转账和查询等业务。4.2项目规划与
19、管理4.2.1开发人员安排 开发人员主要是经过商量讨论、自愿组合的一个小组,由于本系统设计面广,操作复杂,信息要求强,所以我们选择五个人为一个小组,采取分工合作、共同探讨的原则,努力编辑并且完善系统应用。组内成员有姜婷、孟格思、赵雄飞、刘宏宇和杨俊森。4.2.2开发进度安排10月24日 开始讨论 讨论内容:1)系统名的确定 2)运行环境 3)系统应用价值 4)用户群体 5) 需求分析说明 6)可行性分析 7)项目规划 8)编译语言10月25日 经过小组成员查阅资料并做出讨论,最终做出决定,我们组将要开发银行存储系统,26,27日实现需求分析以及面向对象设计的前期工作。28,29开始编码,并完善
20、文档。30日进行软件测试,提交报告。因银行具有强大的市场,应用价值广泛,应用知识广泛能够充分利用教材所学知识,由于Java语言具有面向对象开发等特点,所以选择Java语言进行编译。分工如下,孟格思,刘宏宇负责UML建模以及需求分析,各种流程画图。赵雄飞负责数据库的设计与录入数据,姜婷负责用Java编写代码,杨俊森负责软件测试用例的设计以及软件测试。 五、结构化分析与设计结构化分析与设计方法是一种面向数据流的传统软件开发方法,它以数据流为中心构建软件的分析模型和设计模型。结构化分析、结构化设计和结构化程序设计构成了完整的结构化方法。早期的结构化分析方法的分析结果包括:一套分层的数据流图、一本数据
21、字典(包括E-R图)、一组加工规约以及其他补充资料(如非功能性需求等)。5.1结构化分析数据流图是描述输入数据流到输出数据流的变换(即加工),用于对系统的功能建模。银行存储系统的流程图如下: 银行存储系统环境图:图表 12银行存储系统一层数据流图图:图表 13 银行存储系统二层数据流图:图表 14图表 155.2结构化设计结构化设计是将结构化分析数据流图映射成软件体系结构的一种设计方法,SD强调模块化、自顶向下逐步求精、信息隐藏、高内聚低耦合等设计准则。在结构化设计中用结构图来描述软件系统的体系结构,指出一个软件系统由那些模块组成以及模块之间的调用关系,如下图所示:图表 16结构图第一分解图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 银行卡 管理 系统 课程设计
限制150内