例软件测试综合项目实训说明指导书_第1页
例软件测试综合项目实训说明指导书_第2页
例软件测试综合项目实训说明指导书_第3页
例软件测试综合项目实训说明指导书_第4页
例软件测试综合项目实训说明指导书_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州工业应用技术学院课程设计说明书题目:基于Java语言下银行账户管理系统姓名:任天雷院(系):信息工程学院专业班级:12级软件技术学号:110124指导老师:杨杨成绩:时间:年6月15日至年7月3日郑州工业应用技术学院课程设计任务书题目基于Java语言下银行账户管理系统专业、班级12级软件技术学号110124姓名任天雷关键内容:ATM自动取款机是由计算机控制持卡人自我服务型金融专用设备,ATM是英文AutomaticTellerMachine缩写。ATM是最普遍自助银行设备,能够提供最基础银行服务之一,即出钞交易,有些全功效产品还能够提供信封存款业务。在ATM自动取款机上也能够进行账户查询、修改密码和转账业务。基础要求:此次设计含有以下功效:系统实现关键有账户管理、取款机管理、用户查询等功效:*账户管理模块:存款、取款、开户、销户、修改信息、办卡、挂失卡;

*用户查询模块;

*取款机信息管理模块:管理员管理查询和维护、用户查询和取款等功效;

关键参考资料:[1]孙卫琴.Java面向对象程序设计[M].北京:电子工业出版社,.7[2]王国辉,吕海涛.Java数据库系统开发案例精选[M].北京:人民邮电出版社[3]占彬,章祥生.人民币银行结算账户管理系统亟待处理问题及提议[J].金融和经济,,(10):95-95.

完成期限:6月15日——6月20日指导老师署名:课程责任人署名:摘要ATM自动取款机是由计算机控制持卡人自我服务型金融专用设备。ATM是英文AutomaticTellerMachine缩写。ATM是最普遍自助银行设备,能够提供最基础银行服务之一,即出钞交易,有些全功效产品还能够提供信封存款业务。在ATM自动取款机上也能够进行账户查询、修改密码和转账业务。同时在制作这个系统过程中也应用了数据库知识,这个相对于想从事软件开发人来说是比较关键内容,这个也是此次设计关键知识,同时数据库链接是必需要学会,因为这个是最关键内容,培养自己坚实逻辑表示能力和沟通能力,和培养自己良好文案能力,要求掌握ATM取款机具体工作原理和java简单系统设计方法。关键字:ATM自动取款机,金融专用,java目录TOC\o"1-3"\h\u1.ATM系统开发方法 11.1系统方法概述 11.2本系统使用方法概述 22.系统分析 32.1系统初步调查 32.2可行性研究 32.3系统具体调查及提出 43.系统设计 73.1开发环境 73.2系统总体结构设计 83.3系统具体设计 93.3.1数据库设计 103.3.2界面模块设计 114.系统实现 204.1程序设计和调试 204.1.1程序设计 204.1.2程序调试 204.2试运行 215.系统维护 226.系统评价 23参考文件 241.ATM系统开发方法1.1系统方法概述软件开发方法是一个使用早已定义好技术集及符号表示习惯来组织软件生产过程。开发目标是在要求投资和时间内,开发出符适用户需求高质量软件。任何系统全部有其产生、发展、成熟、消亡或更新换代过程。这个过程称为系统生命周期。系统生命周期法提供思绪、逻辑、技能、工具和工作规范,是系统开发、处理管理信息系统建设中各类实际问题关键基础,对复杂系统建设含相关键指导意义。系统开发是管理信息系统建设中工作任务最为繁重,也是最关键一个阶段。从项目开发到结束整个过程,称为系统开发生命周期。系统开发生命周期通常分为系统分析、系统设计和系统实施。结构化生命周期法是一个面向数据流开发方法。该方法简单实用、应用较广、技术成熟,方法指导思想是自顶向下、逐步求精,基础标准是能动分解和抽象,尤其适合于数据处理领域问题,伴随开发项目规模改变,该方法也就暴漏出了它缺点:对于规模大、尤其复杂项目不太适应难于处理软件重用问题难于适应需求改变问题,难于根本处理维护问题。到了90年代,主流开发方法是面向对象开发方法,它基础出发点是尽可能根据人类认识世界方法和思维方法来分析和处理问题。面向对象方法支持软件重用和原型概念,提升了系统开发效率,所以得到了ATM系统各计算机界极大关注。该方法包含面向对象分析、面向对象设计、面向对象实现。系统开发工作自动化、计算机化是提升系统开发效率和质量关键路径。计算机辅助软件工程(简记为CASE)也是目前信息系统领域和计算机应用领域热门话题。CASE技术目标是实现系统开发生命周期内各阶段工作基于计算机自动化。这将造成系统开发工作根本改变。1.2本系统使用方法概述比较多种开发方法特点,结合银行取款系统实际情况,整个系统采取结构化生命周期法,以原型法和面向对象开发方法作为辅助,即系统总体上采取结构化生命周期法进行系统分析和系统设计,系统实施等步骤采取面向对象方法。本系统开发工具使用是基于Java可扩展开发平台MyEclipse。

2.系统分析系统分析是管理系统开提议始阶段,也是MIS(管理信息系统)开发工作中最关键一环。系统分析阶段关键活动有:系统初步调查、可行性研究、系统具体调查、新系统逻辑方案提出。系统分析目标是明确系统开发目标和用户信息需求,提出系统逻辑方案。为系统设计做好准备。2.1系统初步调查系统初步调查是系统分析阶段第一项活动,也是系统开发第一项活动,初步调查关键目标是从系统分析人中和管理人员角度看新系统开发有没有必需和可能。经过亲身体验总结各银行ATM提款机界面步骤,得到本系统开发关键步骤界面(关键功效取款、转账、查询、修改密码等)。2.2可行性研究可行性研究(FeasibilityStudy),是指在调查基础上,经过市场分析、技术分析、财务分析和国民经济分析,对多种投资项目标技术可行性和经济合理性进行综合评价。可行性研究基础任务,是对新建或改建项目关键问题,从技术经济角度进行全方面分析研究,并对其投产后经济效果进行估计,在既定范围内进行方案论证选择,方便最合理地利用资源,达成预定社会效益和经济效益。可行性研究必需从系统总体出发,对技术、经济、财务、商业以至环境保护、法律等多个方面进行分析和论证,以确定建设项目是否可行,为正确进行投资决议提供科学依据。项目标可行性研究是对多原因、多目标系统进行不停分析研究、评价和决议过程。它需要有各方面知识专业人才通力合作才能完成。可行性研究不仅应用于建设项目,还可应用于科学技术和工业发展各个阶段和各个方面。可行性研究目标就是用最小代价在最短时间内确定该软件项目是否能够开发,是否值得去开发。实质上就是进行一次简化、压缩了需求分析、设计过程。可从以下三个方面分析研究每种处理问题可行性:(1)技术可行性:对项目标功效、性能、限制条件进行分析,确定在现有资源条件下项目是否能实现。(开发风险、资源有效性、技术)(2)社会可行性:要开发项目是否存在任何侵犯、妨碍等责任问题,要开发项目标运行方法在用户组织内是否行得通,现有管理制度、人员素质、操作方法是否可行。(3)经济可行性:进行开发成本估算和了解得到效益评定,确定要开发项目是否值得投资开发。对银行业来说,是靠存款贷款之间差额来生存,所以要尽可能拉拢更多用户使用本行,ATM取款机是为了能让为用户更便捷服务,从而更含有吸引力。从银行角度出发还是很愿意把一部分资金投入到这方面。2.3系统具体调查及提出系统具体调查是在可行性研究基础上深入对现行系统进行全方面、深入调查和分析,搞清现行系统运行情况,发觉其微弱步骤,确保新系统比原系统更有效。具体调查关键在于对系统内部情况更具体和具体了解,从而能够提供在新系统建设时改善或更换内容。明确用户信息需求,明确新系统逻辑功效。关键工作是对用户需求进行深入调查分析,创建新系统逻辑模型。逻辑模型关键以数据步骤图和数据字典为关键描述工具。通常登陆模块只输入账号、密码,当然在实际应用中没有要求用户输入账号,这是因为在磁卡上有个感应区,设计此模块时加上了验证码。银行帐目管理系统是针对银行帐目标日常管理而设计。银行操作系统不仅要求操作方便而且要求界面简练,它需要实现帐户管理,用户查询和查询统计等多个功效。其中帐目管理又包含了开户、存款、取款和修改信息功效。用户能够经过不一样方法来查询需要信息。经过该系统设计实现,使银行部门愈加好地进行业务管理,为用户提供愈加优质服务。经过仔细调查得以下业务步骤图和功效图。图2-1、2-2所表示。待机界面待机界面(按任意键进入登录界面)登录界面登录界面(卡号、密码、验证码、取消等选项)密码错误,请从新输入!选择界面(查询、取款、转帐、修改密码、取消)密码错误,请从新输入!选择界面(查询、取款、转帐、修改密码、取消)修改密码转帐取款查询修改密码转帐取款查询交易完成交易完成点击退出点击退出谢谢使用,再见!谢谢使用,再见!图2-1业务步骤图

ATM取款机系统ATM取款机系统退出模块功效模块登入模块退出模块功效模块登入模块转账查询余额退卡查卡信息修改密码取款验证码输入账号输入密码转账查询余额退卡查卡信息修改密码取款验证码输入账号输入密码 图2-2功效图该系统关键实现银行卡用户存取款,和进行部分简单查询和转账业务,同时能够在系统里面进行用户密码修改,实现简单机器和用户交互。

3.系统设计系统设计阶段关键目标是将系统分析所提出反应用户信息需求系统逻辑方案转换成能够实施基础计算机(ATM取款机)和通信系统物理(技术)方案。系统设计关键包含系统总体结构设计和具体设计。系统设计依据关键有系统分析结果、现行技术、用户需求、系统运行环境。3.1开发环境(1)软件开发工具选择本系统采取Java作为编程语言,采取MyEclipse软件开发环境,MyEclipse对数据库应用强大支持,使数据库应用开发功效更强大,控制更灵活,编译后程序运行速度愈加快。MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE扩展,利用它能够在数据库和J2EE开发、公布,和应用程序服务器整合方面极大提升工作效率。它是功效丰富J2EE集成开发环境,包含了完备编码、调试、测试和公布功效,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。(2)、数据库管理系统选择因为此次设计所采取是MySql小型数据库,这种数据库用来存放少许数据,在设计和实施上有很大优势,依据之前所做功效分析,和ATM柜员机本身所含有功效。MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB企业,在1月16号被Sun企业收购。MySQL被广泛地应用在Internet上中小型网站中。因为其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,很多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 (3)、开发平台选择windows平台以其全新界面简单快捷操作方法而成为软件开发趋势。依据本系统运行环境和实际情况,选择Windows7(旗舰版)作为开发测试和运行平台。3.2系统总体结构设计系统总体结构是指整个系统由哪些部分组成,和各部分在物理上、逻辑上相互关系,包含硬件部分和软件部分,该设计包含:系统总体布局方案确实定、软件系统总体结构设计、计算机硬件方案选择和设计、数据存放总体设计。依据业务步骤图转化为软件体系结构,进而用软件结构图建立物理模型,得系统活动图,图3-1、3-2所表示。图3-1系统活动图图3-2系统结构图3.3系统具体设计具体设计实现依据结构程序设计原理,将每个模块功效用对应标准语句表示出来。包含代码设计、数据库设计、用户界面设计、处理过程设计。代码设计是指把系统管理对象数字化或字符化,便于计算机处理。遵照代码设计标准:合理性、简明性、系统性、稳定性、可扩充性、标准化、便于识别和记忆。数据库设计指对系统所采取数据模式、子模式、应用程序、数据库等依据用户具体要求进行分析和设计。它也是管理信息系统设计关键组成部分。数据库设计基础标准是尽可能提升数据组织相对独立性,简化其结构,即用规范化方法设施数据存放结构,提升数据可维护性、完整性、一致性。3.3.1数据库设计经过搜集和分析用户需求,确定了数据库要保留信息,我将此次数据库设计为二个以下表3-1、图3-1、表3-2、图3-2所表示。表3-1用户信息设计表1、用户表(user)CardID字段信息字段名称类型宽度小数位数空特征姓名userNamevarchar10N性别userSexvarchar2N身份证号userIDvarchar10N卡号userCardNovarchar10N图3-1用户信息表实现图表3-2账户信息设计表2、账户表(card)CardID字段信息字段名称类型宽度小数位数空特征卡号cardNovarchar10N账户余额cardBalancedecimal102N密码cardPassWordvarchar6N图3-2账户信息设计表具体实现3.3.2界面模块设计用户界面设计现在已成为评价软件质量一条关键指标,所谓用户界面是指软件系统和用户交互接口,通常包含输入设计、输出设计、人机对话界面设计,图3-3所表示。图3-3登录模块关键代码以下:publicvoidactionPerformed(ActionEvente){ if(e.getActionCommand()=="汉字"){ this.setVisible(false); newClient00("输入密码"); }elseif(e.getActionCommand()=="英文"){ StringinputValue=JOptionPane .showInputDialog("Pleaseinputavalue"); } }//监听是选择汉字输入还是英文输入}publicclassATM{ publicstaticvoidmain(String[]args){ newClient("ATM自动取款系统"); }}当插入现金卡以后出现界面,系统出现选择中英文登入方法,点击按钮以后(汉字)出现后对话框,图3-4所表示。图3-4登录界面登录模块仍然采取是密码验证方法,需要用户输入卡号、密码和验证码然后点击确定进行验证,程序将依据输入卡号查找密码,第一没有找到提醒,找到继续下一步,在这里我用了验证码方法,输入正确继续,程序系统将依据卡号调用后台数据库查找和卡号对应密码并和用户输入密码相对比。密码正确继续,不然当输入次数达成三次时,系统将提醒你和前台服务员取得联络。第二假如没有找到,提醒输入账号错误。关键代码以下:(1)从后台取得账号信息,用于和用户输入账号密码对照 Class.forName("com.mysql.jdbc.Driver");//加载驱动Connectioncon=DriverManager.getConnection(url,"root", null);//建立连接Statementsql=con.createStatement();//取得一个statement对象 Stringql=panel1.textB.getText();//获取账号ResultSetrs=sql.executeQuery("selectcnimafromcardwhere cno="+ql+"");//依据账号搜索密码,取得结果集系统生成验证码并验证用户输入验证码publicvoidactionPerformed(ActionEvente){ char[]passwords=panel1.textA.getPassword(); Stringpassword=newString("112626");//设置账号初始密码为112626,每输入一次全部有提醒,在连续输入三次不正确后系统自动退出。 if(e.getActionCommand().equals("确定")) if(panel1.textC.getText().equals(panel1.label3.getText())) {heshi(); }else{ JOptionPane.showMessageDialog(frame,"你输入验证码有误, 请重新输入。"); } elseif(e.getActionCommand()=="取消"){ this.setVisible(false); newClient08(""); } }//当输入验证码有误是弹出一个提醒窗口首页设计关键是设计了查询余额、取款、转账、密码更改及退出按钮等ATM部分标准操作界面,图3-5所表示。图3-5首页设计关键代码以下:本界面设置了五个按钮 button1=newJButton("查询"); button2=newJButton("取款"); button3=newJButton("转账"); button4=newJButton("退出");button5=newJButton("修改密码");(2)点击以上五个按钮能够触发进入对应操作界面publicvoidactionPerformed(ActionEvente){ if(e.getActionCommand()=="取款"){ this.setVisible(false); newClient02("请选择取款金额"); } elseif(e.getActionCommand()=="查询"){ this.setVisible(false); newClient06("查询服务"); } elseif(e.getActionCommand()=="修改密码"){ this.setVisible(false); newClient05("修改密码服务"); } elseif(e.getActionCommand()=="转账"){ this.setVisible(false); newClient04("用户转账服务"); } elseif(e.getActionCommand()=="退出"){ this.setVisible(false); newClient08(""); }}在此模块中,将经过用户所使用账户编号来进行余额查询,将显示账户实际余额,点击“查询”按钮,经过按钮Action方法进行方法调用,就能够实现查询功效并把查询到账户余额显示到界面上。当用户点击“返回”时,程序返回到初始主界面,图3-6所表示。图3-6查询卡信息模块此模块需要用户输入旧密码后,两次输入新密码进行确定,然后,点击确定,修改密码,成功后给出提醒信息,其中考虑到部分用户输入错误问题,我做出了部分异常判定和处理,空输入,输入两次新密码不匹配和原密码不正确等问题。修改更新密码完成仍然依靠按钮控件Action事件完成,图3-7所表示。图3-7修改密码模块修改密码关键代码以下:if(newString(passwords1).equals(newString(passwords2))){ this.setVisible(false); JOptionPane.showMessageDialog(frame,"输入新密码和和原密码一致,请重新输入。"); panel10.text1.setText(""); panel10.text2.setText(""); panel10.text3.setText(""); return; } if(newString(passwords2).equals(newString(passwords3))){ this.setVisible(false); JOptionPane.showMessageDialog(frame,"正修改原密码,请等候"); updateM(); }//程序依据输入原密码,查找数据库表格user进而修改密码数据表数据。 else{ JOptionPane.showMessageDialog(frame,"两次输入新密码不一致,请重新输入。"); panel10.text2.setText(""); panel10.text3.setText(""); } //}if(panel10.text1.getText().equals("")||panel10.text2.getText().equals("")||panel10.text3.getText().equals("")){ JOptionPane.showMessageDialog(frame,"请输入原密码及新密码!"); return; } else{ if(newString(passwords1).equals(newString(passwords2))){ JOptionPane.showMessageDialog(frame,"输入新密码和原密码一致,请重新输入。");panel10.text2.setText("");panel10.text3.setText("");return;} if(newString(passwords2).equals(newString(passwords3))){ JOptionPane.showMessageDialog(frame,"正修改原密码,请等候");updateM();}//程序依据输入原密码,查找数据库表格user进而修改密码数据表数据。 else{ JOptionPane.showMessageDialog(frame,"两次输入新密码不一致,请重新输入。"); panel10.text2.setText(""); panel10.text3.setText("");}}在此模块,用户依据需要自己输入卡号及欲转金额,这里设计其实最终究结于具体SQL语句而言,系统将依据输入卡号查找和之对应用户数据表,从而修改金额。第一,系统首先依据本卡号,查找本卡金额和输入金额对比,假如找到,且金额许可就提醒转账成功。第二,假如,没有找到输入卡号,提醒没有该用户,重新输入欲转账号,图3-8所表示。图3-8转账业务模块取款模块是一个相对比较关键模块,因为ATM机就要功效就是取款业务,用户选择账户名点击取款金额然后点击取款进行取款操作,所以多个数字按钮设计比较大,方便用户操作,其中部分提醒信息也对应地给出,以防用户误操作。因为此模块不需要用户输入,所以没有对输入异常处理。依据所查资料我所采取SQL语句调用方法是预处理指令方法,这种方法对于处理此程序含有很大益处,而且能够预防非法SQL注入。当用户点击数组按钮后系统将依据输入卡号查找卡号余额并和按钮数字相对比,假如选择金额大于本卡余额将提醒(不许可透支)图3-9所表示。图3-9取款模块退卡模块相对简单多了,没有什么具体界面设计,只是一个消息提醒,也是一个友好处理方法,以预防用户误操作方法,图3-10所表示。图3-10退卡模块

4.系统实现系统实施是ATM系统开发过程中最终一个阶段。它目标是将技术设计转化成物理实现。系统实施阶段关键任务有:按总体设计方案购置和安装计算机网络系统、建立数据库、编程和调试、整理基础数据、培训操作人员、程序试运行和系统切换。4.1程序设计和调试4.1.1程序设计程序设计语言选择通常考虑到项目标应用领域、软件开发方法、软件实施环境、算法和数据结构复杂性、和软件开发人员知识。程序设计是指使用选定程序设计语言,把经过概要设计和具体设计所得到信息处理过程,转换成能在计算机上运行程序源代码。本系统中用MyEclipse编程工具,采取结构化编程方法对模块进行程序编写。具体源程序见附件。4.1.2程序调试软件测试目标是尽可能多发觉程序中错误,而调试则是在进行了成功测试以后才开始工作。程序调试是指在系统测试基础上,将发觉问题进行更正,使之符合设计标准。本系统采取关键方法以下:单元测试:是指原程序中每个程序单元进行测试,检验各个模块是否正确实现要求功效,从而发觉模块在编码中或算法中错误。采取白盒法对各模块进行逻辑错误排查,用黑盒法录入部分有特征数据从不一样角度验证结果。集成测试:在单元测试基础上,将全部模块根据设计要求组装成一个完整系统进行测试。确定测试(有效性测试):它任务是检验软件功效和性能是否和需求规格说明书中确定指标相符合。通常分为用黑盒进行确定测试,再检验软件全部文档完整性、正确性——软件配置审查。4.2试运行系统试运行是指对系统运行环境和资源进行设置、系统运行和控制参数设定、数据加载和调整系统和业务工作同时等。

系统维护系统维护是软件生存周期中时间最长一个阶段,所花费精力和费用也是最多一个阶段,系统维护目标是确保系统中各个要素伴随环境改变一直处于最新、正确工作状态。系统维护是信息系统可靠运行关键技术保障,我们应给足够重视。系统维护内容有校正性维护、适应性维护、完善性维护和预防性维护四种。校正性维护:为了识别和纠正错误,修改软件性能上缺点,进行确定和修改错误过程。适应性维护:为了使应用软件适应改变而修改软件过程完善性维护:为了适应改变,应用软件原来功效和性能需要扩充和增强。从而达成提升软件运行效率,增强软件性能而进行维护。(4)预防性维护:为了提升软件可维护性和可靠性而对软件修改。

6.系统评价系统评价应是贯穿系统整个生命周期各个阶段关键决议手段和工作步骤。狭义上系统评价是指系统投入运行后从功效性能、经济效益、社会效益上评价本系统基础实现了取款、查询余额、转账、修改密码等功效,但因为时间短、知识水平有限,经验不足,系统仍存在不足,该系统关键有以下特点:(1)程序可读性强,易懂易维护(2)用户界面简练,方便了用户使用。(3)安全性好,系统仍然使用输入密码方法,确保了系统安全。(4)系统稳定,基础达成预期功效要求。(5)系统还存在着很多不足,尤其是在数据库链接上,在代码编写上也存在着很多不足,代码存在着很多缺点。(6)在系统界面效果上也存在不足,系统界面显示应在屏中间。总来说,此次设计当中存有很多不足之处,基础上设计出了和自己预想中效果,但同时在设计上也还存在着很多,很多事没有什么用代码,我想是因为时间和经验问题,以后多练习就肯定能提

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论