1、银行管理系统软件工程课设报告学习报告现代软件工程课程名称: 银行管理系统题目名称: 学生姓名: 学号: 课程成绩: 二零一六年六月1前言 01.1系统的背景及开发意义 01.2系统的开发环境及工具 02系统需求分析 22.1系统功能需求分析 22.1.1用户分析需求描述 22.1.2系统功能分析建模 22.2系统数据需求分析 32.2.1系统数据信息描述 32.2.2系统数据分析建模 62.3其他需求分析 83系统总体设计 93.1整体架构设计 93.2系统总体结构设计 93.3系统数据库设计 104系统详细设计及编码实现 144.1用户操作模块的设计与实现 144.1.1用户操作模块的功能
2、144.1.2用户操作模块的算法设计 144.2业务员操作设计与实现 144.2.1业务员操作模块的功能 144.2.2业务员操作模块的算法设计 144.3系统输出模块设计与实现 154.3.1系统输出模块的功能 154.3.2系统输出模块的算法 165系统测试 175.1测试的目的及技术 175.2测试的步骤 175.3测试的过程 185.3.1存款模块功能测试 195.3.2取款模块功能测试 195.3.3转账模块功能测试 195.4集成测试及确认测试 195.4.1集成测试 195.4.2确认测试 201前言1.1系统的背景及开发意义(1)系统背景介绍随着计算机的飞速发展及应用领域的扩大
3、,特别是计算机网络和电子商务的发 展,极大的改变了商业银行传统的经营模式。能够为客户提供方便、快捷、安全的 服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。目前, 对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进 行高效合理的工作管理,实现银行业务电子化。(2)系统开发的意义方便用户快速的进行存款、取款、修改密码以及完成一些转账的交易,大大提 高办公效率,能够及时、准确、有效的帮用户办理各种繁琐的手续,也减缓了银行 工作人员的压力。1.2系统的开发环境及工具(1)系统开发的环境硬件:Windows2000服务器、 希捷 ST9500420AS ( 50
4、0 GB / 7200 转/ 分)硬 盘、2GB ( DDR3 1333MHz )内存软件:Windows 10 旗舰版 64 位 SP1 ( DirectX 11 )(2)系统开发的工具系统采用 Microsoft Visual Studio 2010 、SQL Server 2008 数据库开发工具、C/S结构。下面对开发中采用的工具进行说明:1Microsoft Visual Studio 2010 简介Visual Studio是目前最流行的 Windows平台应用程序的集成开发环境,VisualStudio 2010版本集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。
5、并且支持开发面向 Win dows 7的应用程序。除了 Microsoft SQL Server ,它还 支持?IBM?DB2和Oracle数据库。2SQL Server 2008数据库简介SQL Server 2008在Microsoft的数据平台上发布,可以组织管理任何数据。 可以将各种文档的数据直接存储到数据库中。可以对数据进行多种操作。这个平台 具有可信任、高效、智能三大特点。3C/S结构简介C/S结构,即客户机和服务器结构。它是软件系统体系结构,通过它可以充分 利用两端硬件环境的优势,将任务合理分配到 Client端和Server端来实现,降低了系统的通讯开销。C/S结构构相对于B/
6、S架构而言有许多优点:a.响应速度快b.软件设计可以更好的满足用户个性化的需求c.数据处理能力强大d.系统安全性更有保障2系统需求分析2.1系统功能需求分析2.1.1用户分析需求描述本系统包括储户子系统、业务员子系统两个用户子系统(1)储户储户子系统具有开户、存款、取款、查询的功能。开户:输入姓名、联系方式、地址进行注册开户r . t t x . r r a .、. r . t. * 、“ 一rr* t r仔款:选择金额、仔款类型取款:选择金额查询:通过业务员进行查询(2)业务员业务员子系统具有登录、添加用户、代用户实现存款、取款、查询的功能。1登录:输入员工号、登录密码、选择业务员登录角色2
7、添加用户:业务员在系统管理中添加储户信息3存款:提交存款信息、核对信息、信息输入系统、打印存单4取款:提交取款信息、核对信息、信息输入系统、打印存单5储户查询:业务员进入查询模块输入查询条件进行查询2.1.2系统功能分析建模本系统采用数据流图的模型工具建模。(1) 数据流图(DFD的介绍数据流图简称DFDffl,是SA方法中用于表示系统逻辑模型的一种工具,它以图 形的方式描绘数据在系统中流动和处理的过程,它只反映系统必须完成的逻辑功能, 是一种功能模型。(2) 数据流图的建立1建立系统顶层数据流图:根据银行管理系统需求分析可知银行管理系统的 顶层数据流图是银行管理系统与储户、管理员两个外部实体
8、进行数据交换,如图2.1。图2.1银行管理系统顶层图2数据流图分解:银行管理系统按功能划分为储户子系统、业务员子系统两 个部分,如图2.2。储户通过开户模块可以进行注册,通过存款模块可以选择存款类型进行存款, 通过取款模块可以进行取款,通过业务员可以查询个人信息;业务员登录后可以帮 助储户实现存取款,以及查询。图2.2银行管理系统0层图3数据流图功能分解,如图2.3图2.3银行管理系统1层图2.2系统数据需求分析2.2.1系统数据信息描述本系统的数据信息有存款信息、取款信息、清单信息、转账单信息。(1) 存款信息:姓名、卡号、交易时间、存入金额/姓名、存单号、存入金额、 存款年限(2) 取款信
9、息:姓名、卡号/存单号、密码、取款时间、取款金额、身份证号(3) 清单信息:姓名、交易时间、取款金额、存款金额、余额(4) 转账单信息:转入卡号、转出卡号、密码、金额2.2.2系统数据分析建模(1)实体-关系模型建立实体-关系模型简记E-R图是指以实体、关系、属性三个基本概念概括数据的基 本结构,从而描述静态数据结构的概念模式。1储户实体关系:储户实体具有姓名、住址、身份证号码等属性;存款关系 具有金额、存款类型、到期日期、存款日期等属性;取款关系具有金额、取款日期 等属性。储户和管理员之间具有存款、取款和查询的联系,和系统有打印清单的联 系。2管理员实体关系:管理员实体具有员工号、姓名等属性
10、;存款关系具有金 额、存款类型、到期日期、存款日期等属性;取款关系具有金额、取款日期等属性。 管理员和系统之间具有存款、取款和查询联系。实体 E-R图见图2.4。图2.4实体E-R图2.3其他需求分析(1)系统性能需求分析1数据精确度需求:在精度需求上,根据实际需要,数据在输入、输出及传 输的过程中要满足各种精度的需求根据关键字精度的不同。2响应时间需求:无论是客户端和服务端,当用户进行操作时,系统反应的 时间应在5秒以内。系统应能及时反映各种非正常情况,避免用户出现长时间等待 甚至系统无响应。3用户使用性需求:界面设计易于操作,在用户使用时在客户端服务器端进 行验证,并提示用户输入正确数据和
11、正确的操作系统。4安全保密性需求:每个储户都有权限设置,对储户的信息进行加密设置。5操作性需求:支持 Windows200C及以上的操作系统,设计连接 SQLServer 数据库。(2)系统输入/输出需求分析符合精度的设定,数据的输入输出都应该为数字、字母及汉字,不应该含有字符形式(3)系统错误处理需求分析1数据库存储空间不够,引起数据库访问变慢等问题需要对磁盘进行扩展和 维护。2执行程序非正常退出,响应确实,修改源代码前应备份。3数据库没启动引起访问问题,须启动数据库服务器。3系统总体设计3.1整体架构设计本系统采用C/S结构(客户机/服务器结构)作为设计模型。其中包括储户子 系统、业务员子
12、系统两部分。根据现在所掌握的计算机技术,选择 SQLServer 2008作为后台数据库开发工具,SQL查询语言进行数据库的操作访问;选择Visual Studio 2010作为应用程序开发工具,WinForm窗体应用程序搭建系统运行模块。银行管理系统主要实现储户线上操作和业务员管理协助的功能,本系统包括开 户、存款、取款、查询、用户管理、储户信息六个功能模块。3.2系统总体结构设计银行管理系统分为用户操作结构设计,业务员操作结构设计,系统输出结构设 计三个部分。(1)系统的主要功能如下:实现储户开户登记办理定期存款帐办理定期存款手续理活期取款帐?实现利息计算输出明细表查看帐户信息(2)银行管
13、理系统的功能模块结构图:图3.1银行管理系统功能模块结构图3.3系统数据库设计本系统的数据库名称是xskqgl.mdf,里面包含5个表,依次分别是储户信息表、银行卡信息表、存款信息表、取款信息表、业务员信息表,下面将对这些表格 介绍。(1储户信息表储户信息表设计有身份证号、姓名、出生日期、性别、开户地点、开户日期、 开户业务员员工号共7个字段。表3.1储户信息表字段类型列名备注ID Numbevarchar身份证号ID Namevarchar姓名ID Birthdavarchar出生日期ID Sexvarchar性别Acco unt Openingvarchar开户地点SiteAcco unt
14、 Openingvarchar开户日期DateStaff Numbervarchar员工号(2)银行卡信息表银行卡信息表设计有银行卡号、银行卡密码、身份证号、姓名、余额、交易时 间、员工号共7个字段。其中身份证号与存款信息表中的身份证号对应,姓名与存 款信息表中姓名对应。表3.2银行卡信息表字段类型列名备注Card Numberint银行卡号Card Passwordint银仃卡密码ID Numbervarchar身份证号与存款信息表中 的身份证号对应ID Namevarchar姓名与存款信息表中 的姓名对应Curre nt Bala needouble余额Tran sact ionDatet
15、imevarchar交易时间Staff Numbervarchar员工号(3)存款信息表存款信息表设计有存单号、存单密码、身份证号、姓名、存入金额、存款类型、 交易时间、存款业务员员工号共 8个字段。其中身份证号和姓名与取款信息表中的 对应。表3.3存款信息表字段类型列名备注Slip Numbervarchar存单号Slip Passwordint存单密码ID Numbervarchar身份证号与取款信息表中的身份证号对应ID Namevarchar姓名与取款信息表中的姓名对应In come Amountdouble存入金额Deposit Typevarchar存款类型Tran scati o
16、nDatetimevarchar交易时间Staff Numbervarchar员工号(4)取款信息表取款信息表包括6个字段,分别为银行卡号、存入金额、支出金额、余额、交 易时间、取款业务员员工号。其中银行卡号与银行卡信息表中的银行卡号对应。表3.4取款信息表字段类型列名备注Card Numberint银行卡号与银仃卡号信息表 中的银行卡号对应In come Amountint存入金额Payme nt Amountdouble支出金额Curre nt Bala needouble余额Tran scati on Timevarchar交易时间Staff Numbervarchar员工号(5)业务员
17、信息表业务员信息包括2个字段,分别为员工号和员工名。表3.5业务员信息表字段类型列名备注Staff Numbervarchar员工号Staff Namevarchar员工名4系统详细设计及编码实现银行管理系统有用户操作,业务员操作,系统输出三个功能模块4.1用户操作模块的设计与实现4.1.1用户操作模块的功能(1)存款模块功能:用户插入银行卡, 储的现金。(2取款模块功能:用户插入银行卡, 需要取的金额。(3)转账模块功能:用户插入银行卡,输入密码,点击存款按钮,放入需要存输入密码,点击取款按钮,选择或输入输入密码,点击转账按钮,输入需要转示,如图4.1账的账户,选择转账金额。(4)查询模块功
18、能:用户插入银行卡,输入密码,点击查询按钮4.1.2用户操作模块的算法设计根据功能需求分析和结构设计来实现用户操作模块算法,算法用程序流程图表插入储户银行卡,储户输入密码,点击取款按钮,选择或输入需要取的金额。(4)查询:插入储户银行卡,储户输入密码,点击查询按钮。422业务员操作模块的算法设计根据功能需求分析和结构设计来实现业务员操作模块算法,算法用程序流程图 表示,如图4.4图4.4业务员操作模块程序流程图4.3系统输出模块设计与实现4.3.1系统输出模块的功能(1) 计算利息:根据储户存款和存款类型计算利息,打印清单。(2) 保存新用户信息:输入新用户信息,进行保存。(3) 更新用户信息
19、:选择需要更新的用户信息,更改信息,进行保存。(4) 打印存单:打印用户存单信息。4.3.2系统输出模块的算法根据功能需求分析和结构设计来实现系统输出模块算法,算法用程序流程图表 示,如图4.8图4.8系统输出模块程序流程图5系统测试5.1测试的目的及技术本系统采用测试技术有黑盒测试技术和白盒测试技术,采用的测试步骤有单元 测试、集成测试和确认测试。(1)测试的目的系统测试其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不 符或矛盾的地方,从而提出更加完善的方案,尽可能彻底地检查出程序中的错误, 提高软件系统的可靠性。(2)测试的技术1黑盒测试技术黑盒测试是通过使用整个软件或某种软件
20、功能来严格地测试,在测试时只检查 程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确 的输出。2白盒测试技术白盒测试是通过程序的源代码进行测试而不使用用户界面。 这种类型的测试需 要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进 而加以修正。5.2测试的步骤(1) 单元测试单元测试是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单 元的含义。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软 件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部 分相隔离的情况下进行测试。(2) 集成测试集成测试(也叫组装测
21、试,联合测试)是单元测试的逻辑扩展。集成测试是 在单元测试的基础上,集成测试采用的方法是测试软件单元的组合能否正常工作, 以及与其他组的模块能否集成起来工作。最后,还要测试系统所有模块组合在一起 能否正常工作。集成测试的主要目的在于发现单元之间接口的错误以及发现集成后软件同总体 设计分析不一致的地方,重点在于测试各个模块连接起来后通过接口传递的数据是 否会错误或丢失。(3) 确认测试确认测试的目的是进一步验证软件的有效性,这就是确认测试的任务,验证软 件的功能和性能如同用户所合理期待的那样。确认测试过程包括安装测试,功能测 试,可靠性测试,安全性测试,时间及空间性能测试,易用性测试,可移植型测
22、试, 可维护性测试,文档测试。5.3测试的过程5.3.1存款模块功能测试(1) 存款模块的功能储户插入银行卡,输入密码,点击存款按钮,放入需要存储的现金,显示存储 完成,点击退卡。(2) 存款模块测试用例:表5.1存款模块测试用例输入条件 控件的使用预期输出结果插入银行卡弹出输入密码窗口输入密码进入功能界面选择存款弹出放入现金提示放入需要存储的现金显示确认存储完成窗口点击确认进入功能界面点击退卡退出银行卡(3) 测试结果测试结果与预期结果相同,输入密码可以进入功能界面,可以进行存款操作, 因此存款模块功能完整。(4) 评价根据系统的测试和实际需求的分析,可以看出存款模块的运行正常,实现的功 能
23、与预期结果一致,基本实现了存款的功能5.3.2取款功能模块测试(1) 取款模块的功能储户插入银行卡,输入密码,点击取款按钮,选择需要取的金额,取款后进入 主界面,点击退卡。(2) 取款模块测试用例表5.2取款模块测试用例输入条件预期输出结果控件的使用插入银行卡弹出输入密码窗口输入密码进入功能界面选择取款弹出取款界面选择需要取的金额弹出提示取款界面取走现金弹出确认界面点击确认进入功能界面选择退卡退出银行卡(3)测试结果测试结果与预期结果相同,取款的功能完善。(4)评价根据系统的测试和实际需求的分析,可以看出取款模块的运行正常,实现的功 能与预期结果一致。5.3.3转账模块功能测试(1)转账模块的
24、功能储户插入银行卡,输入密码,点击转账按钮,输入转账的账户及金额,确认后, 进入功能界面,点击退卡。(2)转账模块测试用例表5.3请假申请模块测试用例输入条件 控件的使用预期输出结果插入银行卡弹出输入密码窗口输入密码进入功能界面选择转账弹出转账界面输入账户及金额弹出确认界面点击确认进入功能界面选择退卡退出银行卡(3)测试结果测试结果与预期结果相同(4)评价根据系统的测试和实际需求的分析,可以看出转账模块的运行正常,实现的功 能与预期结果一致。5.4集成测试及确认测试541集成测试(1)集成测试过程:1存款模块:存款记录可以通过接口在存款模块中查询。2取款模块:在取款模块生成的记录可以通过接口在
25、取款模块中显示。3转账模块:在转账模块生成的记录可以通过接口在转账模块中显示。542确认测试(1) 安装测设:本系统的客户端开发采用的是 Microsoft Visual Studio 2010 软件,服务器端采用的是 SQL Server 2008数据库,在任意一台 Windows的操作系 统上都能顺利的进行安装。(2) 功能测试:分别以储户、业务员的身份登录系统进行存款功能、 取款功能、 转账功能,均能满足设计要求。但在部分功能上缺少人性化设计:存在的缺项:在实现取款功能中,储户只能选择取款金额,不能自定义输入。解决办法:将取款金额的选项改成输入框控件来实现,这样更加方便。(3) 安全性测试:进入系统要先输入密码,正确的密码才可以进入,而且业务 员可以对系统的用户进行管理,这样确保了系统的用户的范围,提高了系统使用的安全性。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1