《创新基金申报系统-学位论文.doc》由会员分享,可在线阅读,更多相关《创新基金申报系统-学位论文.doc(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于JAVA的创新基金申报系统的设计软件工程学 院: 刘星,何志英专 业: 指导教师: 2014年 9月 基于JAVA的创新基金申报系统的设计 摘 要当今社会己进入信息社会时代,信息己经受到社会的广泛关注,被看作社会和科学技术发展的三大支柱(材料、申报、信息)之一。信息是管理的基础,是进行决策的基本依据。在一个组织里,信息己作为人力、物力、财力之外的第四种申报,占有重要的地位。然而,信息是一种非物质的,有别于基本资源的新形式的资源。信息也是管理的对象,必须进行管理和控制。创新基金申报系统是将IT技术用于基金申报信息的管理, 它能够收集与存储基金申报的档案信息,提供更新与检索基金申报信息档案的接
2、口;提高工作效率。系统采用JSP为编程语言。论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思想、难点技术和解决方案。关键词:基金,申报,管理,系统,开发 Design Innovation Fund JAVA-Based Reporting System AbstractTodays society has entered the era of the information society, information has been widespread concern in society, is seen as the three pilla
3、rs of social and scientific and technological development (materials, reporting, information) one. Information is the basis of management is fundamental basis for decision-making. In an organization, the information has been used as a fourth human, material and financial resources beyond the declara
4、tion, occupies an important position. However, the information is a non-material, unlike the new forms of basic resources resources. Also managed object information must be managed and controlled. Innovation Fund is a reporting system used to fund IT technology management reporting information, it i
5、s able to collect and file information is stored fund reporting, providing updates and retrieval fund reporting interface information file; improve work efficiency. System uses JSP programming language. This paper introduces the topic of development background, function and development process to be
6、 completed. Focus illustrates the focus of system design, design ideas, technical difficulties and solutions. Keywords: Fund,declaration,management,system,Development 朗读显示对应的拉丁字符的拼音目 录1 引言11.1 研究现状11.2 主要研究的目的及内容21.3 研究方法及设计思路21.3.1 研究方法21.3.2 设计思路22 应用需求分析与可行性分析42.1 应用需求分析52.2 运行需求分析52.3 其他需求分析52.4
7、 可行性分析62.4.1经济可行性62.4.2技术可行性62.4.3运行可行性62.4.4时间可行性72.4.5法律可行性72.5 系统开发步骤73 相关技术简介93.1 JSP技术简介93.2 Sqlserver数据库93.3 JDBC103.4 B/S模式分析114 系统分析134.1 系统实现目标134.2 系统体系结构144.3 主控流程图154.4 系统ER图165 系统设计17第 页 共 页5.1 概要设计175.2 系统结构设计175.3 详细设计175.3.1 管理员登录界面175.3.2 基金申请信息管理185.3.3 用户管理模块185.3.4信息查询管理模块196 系统调
8、试与测试196.1 程序调试206.2 程序的测试206.2.1 测试的重要性及目的206.2.2 测试的步骤216.2.3 测试的主要内容21结束语25参 考 文 献27致谢28 第页 共 页1 引言1.1 研究现状随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由大规模科学计算的海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统在大规模的事务处理和对工作流的管理等方面的应用,特别是在基金申报信息管理之中的应用日益收到人们的关注。近年来我国信息事业发展迅速,手工管理方式在基金申报信息管理等需要大量事务处理的
9、应用中已显得不相适应,采用IT技术提高服务质量和管理水平势在必行。目前,对外开放必然趋势使信息行业直面外国同行单位的直接挑战,因此,信息行业必须提高其工作效率,改善其工作环境。这样,基金申报信息管理的信息化势在必行。在传统的基金申报信息管理中,其过程往往是很复杂的,繁琐的,基金申报信息管理以基金申报信息管理为核心,在此过程中又需要经过若干道手续,因为整个过程都需要手工操作,效率十分低下,且由于他们之间关联复杂,统计和查询的方式各不相同;且会出现信息的重复传递问题,因此该过程必须实现信息化。随着计算机技术和网络技术的飞速发展,各校都相继采用信息技术对基金申报有关信息进行管理。然而,也注意到许多单
10、位,并没有很好地运用现代信息技术对基金申报等信息进行管理,很多基金申报管理系统将所有的管理事务全都交给管理员来完成,如果信息有任何的增删改查,都需要通过管理员来完成,非常麻烦。如何开发一个实用的基金申报管理系统,是摆在设计者面前的一大难题。 通过对基金申报管理系统进行深入分析和研究,本文从功能模块、数据格式、通用性三个方面进行细化,提出基金申报管理系统设计的理论依据和实现的方法。设计系统的数据层、逻辑层、界面层,重点体现数据格式的规范,也为通用性的实施提供保障。最后在系统开发环节,从技术层面实现代码的可重用性及系统的通用性,从而使系统的设计更具实用性和通用性。总之我觉得现在逐渐发展起来的信息系
11、统可以让申报管理变得非常灵活,每一种角色都有自己的权限,保证了信息的安全性以及老师与家长之间的交流简易性。因此,基于MVC 的基金申报管理系统将会是以后的趋势。所以我通过开发一个基金申报管理系统来完成以便能更好的衔接。1.2 主要研究的目的及内容本课题的目的是使基金申报信息管理清晰化,透明化,便于操作,易于管理。通过功能模块的优化组合实现不同的管理细节,使管理过程实现最大程度的自动化与信息化,并能自动对人工操作环节进行复查,使基金申报管理系统出错率降至最低。在传统的基金申报信息管理中,各种管理工作往往是很复杂烦琐的。基金申报信息管理的特点是信息处理量比较大,所管理的种类比较繁多,而且由于消费、
12、缴费等单据发生量特别大,关联信息多,查询和统计的方式不尽相同。在管理过程中经常会出现信息的重复传递,因此基金申报信息管理必须实现计算机化处理。我们系统开发的总体任务是实现基金申报信息管理的系统化、规范化、自动化、信息化与智能化,从而达到提高基金申报信息管理效率的目的。1.3 研究方法及设计思路1.3.1 研究方法基金申报信息管理是信息行业业务流程过程中十分重要且必备的环节之一,在信息行业业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多信息行业在具体的业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。针对上述问题,采用软件工程的开发
13、原理,依据软件流程过程规范,按照需求分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个基金申报管理系统。采用JSP作为开发工具,结合Sqlserver数据库,数据库设计遵循3范式,解决了基金申报管理系统中存在的数据安全性、数据一致性以及系统运行速度等问题。1.3.2 设计思路(1)系统应符合基金申报信息管理的规定,满足信息行业相关人员日常使用的需要,并达到操作过程中的直观,方便,实用,安全等要求;(2)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充,维护; (3)系统应具备数据库维护功能,及时根据用户需求进行数据的添加、
14、删除、修改、备份等操作; (4)尽量采用现有软件环境及先进的管理系统开方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。2 应用需求分析与可行性分析伴随着信息行业的蓬勃发展和人们办公自动化意识的增强,基金申报管理部门的的工作也越来越繁重,原来的基金基金申报管理系统已经不能完全满足相关人员使用的需要。为了协助信息行业开展申报管理工作,提高工作效率,充分利用信息行业的现有资源,开发更好的基金申报管理系统势在必行。基金申报管理系统是将IT技术用于基金申报信息的管理, 它能够收集与存储患者信息,提供更新与检索的接口;协助信息行业开展申报管理工作提高工作效率。创新基金基金申报管理系统采用
15、B/S结构、结合网络数据库开发技术来设计本系统。开发语言采用JSP,数据库使用Sqlserver数据库。完成以下基本功能:1.进行用户身份识别。一般使用者和超级管理员的认证和权限的设定。 2.进行基金申报流程进行管理,申报人填写申报信息,审批人进行审批, 如果通过就可以申请基金,如果不通过则返回修改。本系统是一个独立的系统,用来解决基金申报信息的管理问题。采用JSP技术构建了一个有效而且实用的基金申报信息管理平台,目的是为高效地完成对基金申报信息的管理。创新基金申报管理系统具有标准基金申报管理系统所具有的现实中完整的申报管理步骤,完全的虚拟现实实现。真正实现节约资源、提高效率、业务处理的同时真
16、正实现基金申报管理系统的功能作用。2.1 应用需求分析服务器硬件处理器:Intel 酷睿内 存:512M 或更大硬 盘:120G 或更大软件Microsoft Windows XPMicrosoft ACCESSMicrosoft IIS 6.0 或更高版本Microsoft Office 2003客户机硬件无特殊要求,只要能上连接互联网即可软件Microsoft Windows XP Microsoft IE 6.0 或更高版本系统的性能要求通常指系统需要的存储容量以及后援存储,重新启动和安全性,运行效率等方面的考虑。 硬件系统环境:Core 5600、1G MB(RAM)、120GB(HD
17、)。系统运行时对数据的保密性要求不高对一般的数据不要求进行加密。此外,对其它软件几乎没有依赖性,程序健壮性较好2.2 运行需求分析硬件条件:酷睿 CPU、1G RAM、10G硬盘以上的PC机;打印机;局域网。软件条件:Windows XP IE6.0以上2.3 其他需求分析本系统有较好的可维护性、可靠性、可理解性、效率。易于用户理解和操作。可维护性包括了可读性、可测试性等含义。可靠性通常包括正确性和健壮性。开发过程中,在各种矛盾的目标之间作权衡,并在一定的限制的条件下(经费、时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。2.4 可行性分析2.4.1经济可行性经济可行性研究是对组
18、织的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。由于本系统是作为毕业设计由我们自己开发的,在经济上的投入甚微,系统建成之后将为今后基金申报信息管理提供很大的方便,估算新系统的开发费用和今后的运行、维护费用,估计新系统将获得的效益,并将费用与效益进行比较,看是否有利。开发、运行和维护费用主要包括:购买和安装基金申报的费用:计算机硬件、系统软件、 机房、电源、空调等; 软件开发费用:若由实习单位的技术人员开发,则该项费用可以计入下面的人员费用一项;人员费用:系统开发人员、操作人员和维护人员的工资、培训费用等;消耗品费用:系统开发所用材
19、料、系统正常运行所用消耗品,例如水、预算,打印纸、软盘、色带等开支。所有开支都不大,所以经济上是可行的。2.4.2技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。基金申报管理系统用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前BS模式软件相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。2.4.3 运行可行性对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现有管
20、理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。运行可行性是对组织结构的影响,现有人员和机构和环境对系统的适应性及人员培训补充计划的可行性。当前我国信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。本系统的开发,是典型的Mis开发,主要是对数据的处理,包括数据的收集,数据的变换,及数据的各种报表形式的输出。采用流行的JSP+Sqlserver体系,已无技术上的问题。2.4.4 时间可行性从时间上看,在两个月的时间里学习相关知识,并开发基金申报信息管理系统,时间上是有点紧,但是不是不可能实现,通过两个多月的努力功能应该基本实现。2.4.5 法律可行
21、性: 所有技术资料都为合法。 开发过程中不存在知识产权问题。 未抄袭任何已存在的基金申报信息管理系统,不存在侵犯版权问题。 开发过程中未涉及任何法律责任。综上所述,本系统的开发从技术上、从经济上、从法律上都是完全可靠的。2.5 系统开发步骤一般说来,管理信息系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻
22、易改变前面经过评审的成果。上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低管理信息系统开发的复杂性。国内外许多系统开发的实例都证明这是一种行之有效的开发方式。国外曾有人对一些软件项目开发各阶段的工作量进行了统计,结果表明,在开发过程中各工作阶段所占全部工作量的比重分别达到系统分析:系统设计:编程:模块调试:系统调试20%:15%:20%:25%:20%。由此可见,程序编写在开发工作中只占很小比例,而调试工作却占整个开发工作量的一半左右,因此“系统开发就是编程”的习惯说法显然是片面的。另据统计,在建立管理信息系统的三个阶段中,总体规划和系统开发阶段的工作量约占整个工作量的2/3,
23、而运行、维护阶段要占1/3,这说明一个管理信息系统开发后,仍应十分重视它的维护工作,以便使系统不断完善并充分发挥其作用。3 相关技术简介3.1 JSP技术简介JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和script
24、lets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP主要优先如下:(1)一次编
25、写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比JSP/PHP的局限性是显而易见的。 (3)强大的可伸缩性。从只有一个小的war文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。 (4)多样化和功能强大的开发工具支持。这一点与JSP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺
26、利的运行于多种平台之下。3.2 Sqlserver数据库SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft Mysql, Access等都采用了SQL语言标准。Sqlserver是一个关系型数据库管理系统,由瑞典Sqlserver AB公司
27、开发,目前属于Oracle公司。Sqlserver是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。Sqlserver所使用的SQL语言是用于访问数据库的最常用标准化语言。Sqlserver软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择Sqlserver作为网站数据库。3.3 JDBCJDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,
28、可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。 有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC ,就不必为访问access数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不
29、必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如JDBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。3.4 B/S模式分析 C/S模式主要由客户应用程
30、序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。客户应用程序是系统中用户与数据进行交互的部件。服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求。 B/S模式是一种以Web技术为基础的新型的MIS系统平台模式。把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系。 第一层客户机是用户与整个系统的接口。
31、客户的应用程序精简到一个通用的浏览器软件,如NetscapeNavigator,微软公司的IE等。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。 第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。 第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQ请求,管理数据库。 B/S模式首先简化了客户端
32、。它无需象C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。假设一个企业的决策层要开一个讨论库存问题的基金申报,他们只需从基金申报室的计算机上直接通过浏览器查询数据,然后显示给大家看就可以了。甚至与会者还可以把笔记本电脑联上基金申报室的网络插口,自己来查询相关的数据。其次,它简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web服务器上,并就不同的功能为各个组别的用户设置权限就可以了。各个用户通过HTTP请求在权限范围
33、内调用Web服务器上不同处理程序,从而完成对数据的查询或修改。现代企业面临着日新月异的竞争环境,对企业内部运作机制的更新与调整也变得逐渐频繁。相对于C/S,B/S的维护具有更大的灵活性。当形势变化时,它无须再为每一个现有的客户应用程序升级,而只需对Web服务器上的服务处理程序进行修订。这样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦。如果一个公司有上千台客户机,并且分布在不同的地点,那么便于维护将会显得更加重要。 再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决
34、策层还是操作层的人员都无需培训,就可以直接使用。B/S模式的这种特性,还使MIS系统维护的限制因素更少。 最后,B/S特别适用于网上信息发布,使得传统的MIS的功能有所扩展。这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力。 鉴于B/S相对于C/S的先进性,B/S逐渐成为一种流行的MIS系统平台。各软件公司纷纷推出自己的Internet方案,基于Web的财务系统、基于Web的ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。 B/S模式的新颖与流行,和在某
35、些方面相对于C/S的巨大改进,使B/S成了MIS系统平台的首选。本系统也采用B/S结构开发。4 系统分析4.1 系统实现目标伴随着信息行业的蓬勃发展和人们办公自动化意识的增强,申报管理部门的的工作也越来越繁重,原来的基金申报管理系统已经不能完全满足相关人员使用的需要。为了协助信息行业开展申报管理工作,提高工作效率,充分利用信息行业的现有资源,开发更好的基金申报管理系统势在必行。基金申报管理系统是将IT技术用于基金申报信息的管理, 它能够收集与存储患者信息,提供更新与检索的接口;协助信息行业开展申报管理工作提高工作效率。基金申报管理系统采用B/S结构、结合网络数据库开发技术来设计本系统。开发语言
36、采用JSP,数据库使用Sqlserver数据库。完成以下基本功能:本系统是一个独立的系统,用来解决基金申报信息的管理问题。采用JSP技术构建了一个有效而且实用的基金申报信息管理平台,目的是为高效地完成对基金申报信息的管理。基金申报管理系统具有标准基金申报管理系统所具有的现实中完整的申报管理步骤,完全的虚拟现实实现。真正实现节约资源、提高效率、业务处理的同时真正实现基金申报管理系统的功能作用。4.2 系统体系结构在系统功能分析的基础上,做系统功能模块图如图4.1所示: 超级管理报销管理系统创新基金申报管理系统普通用户申请信息统计录用户信息管理基金申请信息基金申请管理理注册用户管理通知公告管理密码
37、信息管理 图4.1 系统结构图4.3 主控流程图开 始输入用户名、密码 密码正确?N Y 进入主控模块选择操作方式退出系统Y停 止 图4.2 主控流程图4.4 系统ER图用户名密码管理员管理创新基金申报系统系统用户信息修改密码密码信息通知公告用户信息基金申请增加用户信息统计 图4.3 系统ER图5 系统设计本系统不仅要求功能完善,而且还要界面友好,因此,对于一个成功的系统设计,功能模块的设计是关键。5.1 概要设计在系统需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现系统的需求。首先,我
38、们需要描述的是系统的总的体系结构。5.2 系统结构设计系统的概要设计中最重要的就是系统的模块化。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。在系统的概要设计中采用结构化设计以需求分析阶段产生的数据流
39、图为基础,按一定的步骤映射成软件结构。首先将整个系统化分为几个小问题,小模块。然后,进一步细分模块,添加细节。5.3 详细设计5.3.1 管理员登录界面对于一个完整的基金申报管理系统,不仅要求功能强大、操作简单,还要有良好的设计风格和另人爽目的界面。登录界面对于整个系统来说是非常重要的,因为它设置了进入本系统的用户和口令,防止非法用户进入系统,破坏系统安全和所保存的数据,只有合法的管理员在输入正确的密码后方可进入系统,否则将提示密码或用户名输入错误,并询问用户是否重新输入。这样就对使用者有了限制,增加了系统的安全性和保密性,便于控制和管理,有利于系统的维护。 图5.1管理员登陆界面5.3.2
40、基金申请信息管理基金申请信息管理模块是本系统中一个基础的部分,在本模块中包括对各个申报信息的增删改功能,确保资料的安全。增加了系统的安全性和保密性,便于控制和管理。 图5.2基金申请信息管路 5.3.3 用户管理模块本模块主要实现用户信息的管理、增加、删除、修改等操作。如下图所示: 图5.3用户管理5.3.4信息查询管理模块本模块主要实现对信息查询统计管理功能。如下图所示: 图5.4信息查询6 系统调试与测试6.1 程序调试在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的
41、操作或对某些数据的计算公式的逻辑错误导致的错误结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。6.2 程序的测试6.2.1 测试的重要性及目的(1)测试的重要性对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量
42、的40以上。而在软件开发的总成本中,用在测试上的开销要占30到50。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。 在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然存在一些不正确的看法和错误的态度,这包括: 认为测试工作不如设计和编码那样容易取得进展难以给测试人员某种成就感; 以发现软件错误为目标的测试是非建设性的,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定; 测试工作枯燥无味,不能引起人们的兴趣; 测试工作是艰苦而细致的工作; 对自己编写的程序盲目自信
43、,在发现错误后,顾虑别人对自己的开发能力的看法。 这些观点对软件测试工作是极为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。 (2)测试的目的 如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。 软件测试是为了发现错误而执行程序的过程; 测试是为了证明程序有错,而不是证明程序无错误; 一个好的测试用例是在于它能发现至今未发现的错误; 一个成功的测试是发现了至今未发现的错误的测试。 这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目
44、,查找不出错误的测试就是没有价值的,事实并非如此。 首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。6.2.2 测试的步骤与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。因此,大型软件系统的测试基本上由下述几个步骤组成:(1)模块测试 在这个测试步骤中所发现的往往是编码和
45、详细设计的错误。(2)系统测试 在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。(3)验收测试 在这个测试步骤中发现的往往是系统需求说明书中的错误。6.2.3 测试的主要内容为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。 (1)单元测试 单元测试集中在检查软件设计的最小单位模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。 (2)集成测试 集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。 (3)确认测试 确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任
限制150内