【《高校学生资助系统的设计与实现》13000字(论文)】_第1页
【《高校学生资助系统的设计与实现》13000字(论文)】_第2页
【《高校学生资助系统的设计与实现》13000字(论文)】_第3页
【《高校学生资助系统的设计与实现》13000字(论文)】_第4页
【《高校学生资助系统的设计与实现》13000字(论文)】_第5页
已阅读5页,还剩25页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

高校学生资助系统的设计与实现摘要 III1绪论 11.1研究的背景和意义 11.2课题的研究现状 11.3研究的内容和方法 22开发工具和技术 32.1JSP 32.2SSM架构 32.3MySQL数据库 32.4Java 42.5JavaScript 43系统需求分析 63.1可行性分析 63.2功能需求分析 63.3非功能需求分析 74系统总体设计 84.1基于SSM框架的架构设计 84.2网站总体功能结构 84.3系统整体结构 94.4系统工作流程设计 94.5网站数据库设计 104.6数据库表设计 124.7系统活动图设计 154.8系统活动图设计 165系统详细设计 185.1登录管理 185.2用户管理 185.3高校资助贫困认定管理 195.4公告管理 205.5高校资助申请管理 205.6家庭成员管理 216系统测试 226.1测试分析 226.2系统测试方法 226.3系统测试用例 237结论 26参考文献 27

第1章绪论PAGEIV摘要目前,我国在建立国家学生资助政策的体系上已较为完善。在制度上,实现了“不让一个学生因家庭经济困难而失学”,为做到学有所教提供了有力保障。随着国家对高校资助力度的不断加大,为保证资助管理工作的公平、公正和公开性,需要建设一套信息化和网络化的学生资助管理系统,以全面提升学生资助服务水平。本系统以IDEA作为开发环境,采用Java语言开发。系统基于SSM架构设计,采用MySQL数据库,前端利用Ajax进行异步交互,数据库表设计按照三范式进行设计,可以实现跨平台部署。系统按用户分为管理员和学生角色,实现的功能包括用户管理、贫困认定、奖学金和助学金申请等,可以提高学生资助管理工作的规范化和高效化。关键词:学生资助系统;IDEA;SSM;Java1绪论1.1研究的背景和意义现在很多社会和高校都会对贫困群体进行资助帮助。但是在资助过程中会出现很多信息数据传递工作。这样用传统的工作方式会很不方便而且也容易造成数据的丢失。尤其国内的高校对贫困学生的资助审核非常严格,各项信息资料都需要进行收集审核最后保存。很多在校大学生,由于日常的事情比较多不能及时获取资助信息,因此耽误的资助申请。我们要利用高校学生资助系统来改变现在的高校资助工作方式,完善他们工作中的漏洞和缺失。我们要利用系统科学有条理的管理学生的各类申请数据信息,让学校可以通过系统统计分析出申请的各类数据。这样会减少学校老师对资料审核的繁琐工作,提高他们的工作效率;学生也可以通过系统随时了解自己的申请审核情况。不需要通过咨询老师这种方式。高校学生资助系统给学校还有学生都带了很多便利之处。1.2课题的研究现状国外的学生资助是一件非常普遍的事情。国外对孩子的教育方式和国内完全不一样。很多国外的贫困生都会选择勤工俭学,而且由于国外的发展比较早,他们的各项政策福利比国内要优先。随着大学生贫困资助工作的复杂性及难度的不断增加,利用信息化的优势将贫困资助工作融入到高校的管理工作中,通过学生资助系统能够快速地收集和整理大量的信息,并通过对数据的筛选和整理,增强对贫困的大学生精准化的资助,目前,广东金融学院通过采用JFinal3.1框架、Shiro框架、Freemarker模板引擎、Druid以及Tomcat8.0等技术设计和实现了贫困生资助管理系统,根据用户及学校管理人员的工作需求,开发和设计了贫困生资助管理系统的多项功能[1]。吴鹭广等人研究和分析了当前高校贫困认定体系中的问题与不足,详细的分析了用户对系统的需求,对系统的功能进行了设计,最后利用SSH2框架搭建了贫困生认定与资助管理系统,该系统从学生信息采集、家庭情况信息采集、学生申请筛选、贫困认定等方面进行了设计和实现,并提出使用贪心算法进行资助分配[2]。刘慧等人研究了传统的贫困生资助工作中管理方式的不足以及资助工作中流程的规范。随着资助年数的增加,贫困生信息以及相关资料的逐年增加,这些信息的管理也是大学生资助管理系统所必须解决的问题,作者设计和实现一套基于WEB平台的高校学生资助信息管理系统[3],推动了高校学生资助信息系统的应用和推广。已有的资助系统的功能针对性较强,均是为满足特定高校的实际需求而产生,不能适用于每一所高校。随着高校资助部门工作业务不断拓展和教育信息化的进一步要求,设计开发一套适用于电子科技大学的资助系统显得尤为重要。本文结合学校资助工作部门的需求,通过研究和总结高校资助工作的流程及工作中存在的一些问题,设计并实现了高校学生资助系统,从而极大地提高资助工作的效率。1.3研究的内容和方法本论文主要工作为实现本学校的资助工作信息化、网络化、高效化,对高校学生资助系统的设计与实现过程进行详细的介绍。检索国内外高校信息管理系统,学生资助工作的信息化、网络化和高效化相关研究成功与文献资料,梳理相关研究方向的国内外进展,结合高校的资助工作开展实际情况,了解校内学生资助的相关工作诉求、学生资助工作政策与实际工作流程,以及资助工作常见问题,进行系统开发需求分析。根据对电子科技大学学生资助系统功能的了解与分析,确定了系统实现将要采用的前端与后端主要技术。基于SSM框架下,分析高校学生资助系统中的学生管理员对的功能需求,并设计和实现学生贫困生认定模块、助学金模块、奖学金模块等。管理员的主要功能:注册并且登录后,可发布资助申请,资助条件审核,发布资助通知。学生具体功能:未注册的学生可以填写个人信息完成注册,然后通过账号进行登录,可以对个人信息进行修改,资助申请,查看申请结果,查看资助通知。完成各功能模块、运行环境、数据库表的设计及搭建。搭建结束后,对此系统进行各功能模块测试根据测试结果,对潜在的系统问题进行了处理,保障系统的正常工作。

2开发工具和技术2.1JSPJSP(JavaServerPages)是由SunMicrosystems公司主导创建的一种动态网页技术标准。JSP是一种基于文本的程序,其特点就是HTML和JAVA代码共同存在。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档地WEB网页,然后返回给请求者。JSP是为了简化Servlet的工作出现的替代品,由于Servlet输出HTML非常困难,JSP可以替代Servlet输出HTML。2.2SSM架构SSM架构是JAVA近些年最火的开发架构,主要为Spring、SpringMVC、MyBatis,基于MVC的三层架构模式对数据库处理层、控制中转层进行封装,简化了代码的繁琐,使得代码的开发更为简单、健硕。Spring:为JAVA提供了更多的可能,Spring有很多的jar包和组件,基于Spring也有很多的衍生架构、Spring将面向对象更加具体,Spring可以提供类的注入,可以对类进行反向控制,Spring利用JAVA的面向对象优势,将点编程达到了面编程,Spring提供了一整套的工具类,很多的框架可以集成到此架构中,Spring的控制反转是将类注入到Spring的Bean中,然后提供反向的动态类,通过注解的方法可以进行注入。SpringMVC:为控制层的架构,在页面发送请求后,提供到Controller层,通过对url路由进行拦截解析,SpringMVC作为中转控制层,可以对请求以及参数进行拦截设置,比如对token是否存在的拦截,可以对请求头header和请求body进行处理,对日志也可以进行拦截,通过与spring相结合通过拦截机制进行处理,SpringMVC是基于rest风格的,他们的请求方法是固定的,RequestMtthod可以分为六种,Post,Get,Delete,Put等,通过不同的方法注入以及通过在url中对参数的动态和定义使得路由更动态化。MyBatis:作为数据库JDBC的底层设计架构,可以对数据进行处理,MyBatis自带mapper的反向代理,且提供了二级缓存机制,MyBatis的优势在于对数据SQL的处理,可以集成c3p0等数据库连接池进行链接的动态配置,无需再进行手动的获取数据库链接然后进行操作,通过也可以达到资源的分配最大化。MyBatis通常是跟一些关系型数据库进行数据的处理,特别是在MYSQL和SqlServer的处理上,MyBatis可以SQL进行校验,在定义时通过对Mapper与XML进行对于,然后通过id与参数进行关联和传输,对底层的业务进行封装处理,通过MyBatis将SqlSessionFactory进行了封装,这样解放了开发者,避免了一些多线程处理事务的繁琐流程。而另一个数据库处理框架Hibernate,则直接自动生成SQL,在一定程度上昂也是基于面向对象开发,而MyBatis作为半自动ORM架构也使得底层查询更为的灵活。Spring的主要核心为AOP切面编程,通过对同一类型的事件类进行处理,类似于日志或者是安全性拦击。Spring可以对所有的Bean进行生命周期的监听,通过对各个Bean进行初始化达到类的单例模式,而Spring的另一大特定就是控制反转,通过建立动态代理类自动进行Bean新建,Spring的DI机制彻底解决了各个类之间的复杂依赖,且Spring可以集成一些持久性组件,通过将JDBC代码进行封装,对DAO层进行自动化处理,Spring可以通过事务模式,对一些需要一致性执行的代码进行监管。它的核心是工厂模式的BeanFactory,通过建立Spring的上下文对Spring架构来提供信息。SpringMVC是基于Spring架构的控制层的MVC模式框架,在最初的Java贫困认定的开发中都是JSP和Servlet都在前台页面,而在提出MVC模式后将代码进行了分离,通过对各个业务层级的代码进行分离,然后将代码更为明确,且在后期也更易于维护,在SpringMVC机制中通过对url功能进行重新的定义,例如之前的Struts2中的config文件,通过将url在整个文件中进行定义,而SpringMVC通过对method上进行定义,每个函数对应一个请求的url,对各个controller的函数进行拦击定义。2.3MySQL数据库目前MySQL作为最常用的关系型数据库,可以对数据进行格式化存储,MySQL可以里面内包含一些已经封装的函数,保证了SQL的正常调用以及快速查询搜索,MySQL的特点在于可以对中小型数据量的数据进行快速的检索,且可以通过index索引对数据进行内部的关联设定,MySQL的底层检索原理也为二叉树形式进行数据标签关联存储,MySQL的数据格式与Java的格式基本一致,因此在开发者选择中也会首先选择MyBatis与之搭配开发,MySQL无需一些用户权限角色的关联直接便于开发者上手进行查询。MySQL作为关系型的数据库,在千万级以下的数据中,MySQL是最佳的选择,它适用于中小型贫困认定,且MySQL不像Oracle那么繁琐,没有多用户多权限这样的东西,对于开发者来说也更易于上手,MySQL的优势在于查询方便,效率高,且内部集成了很多的查询函数,可以之间进行调用,MySQL的安装部署也更为简单,且MySQL也是可以跨平台进行部署的,MySQL的数据类型也比较简单,因此在Java的开发中,若数据允许的情况下,MySQL是唯一的合适选择。2.4JavaJava是网站系统开发类的第一语言,它的主要优势就是开发简单,可以进行开平台部署,Java开发易上手,且可以调用底层操作,Java的特点在于封装、继承、多态,通过这些形式特点将Java的优势发挥出来,Java可以通过jar包和war包进行部署,有很多的开放第三方集成软件,相对于.net来说更开源,从而也衍生出更多的框架,例如SSM、SpringBoot等,Java的底层是基于C++的,但又在上层进行了封装,因此Java也是面向对象的,Java没有了指针等繁琐的事务,Java可以支持多线程模式,且有23种设计模式,都可以代码的编写更为简单,开发者只需要对上层的业务进行编写,无需对底层进行分析。Java目前最常用的JDK为1.8,Java开发系统和网站主要是通过对jar包的引用,jar包中包含很多的开源的封装的方法和类,可以对一些常规的数据进行处理,Java的底层为C++,但Java却除去了一些底层的东西,因此Java的开发更为简单,无需开发者对底层的原理性进行研究,Java作为面向对象的语言,通过对类的定义和调用进行处理,而类中的函数或者是变量都可以看作是Java的对象中的特性,Java最常用的两个jar包为utils和lang,Java作为可以扩展的语言,它的可行性和可靠性都是非常强的,Java无需关注对一些异常以及垃圾回收的处理,可以通过try,catch的形式进行捕捉。2.5JavaScriptJavaScript作为前端页面的嵌入性语言,它的主要作用就是将界面进行动态化数据处理,通过js可以将数据进行展示变换,同时可以对HTML中的标签进行动态设置,js跟Java一样都是面向对象的语言,也包含变量以及函数,在HTML中可以直接进行嵌套和引用,在js中可以对浏览器的Cookie进行处理,可以对客户端的信息进行存储,通过js可以对后台进行请求,也可以单独对数据库进行请求,js的出现可以将Java的代码与界面的代码提供了交互的桥梁,她它的主要作用在于对前端提供请求后台服务器处理,同时可以对后台数据进行动态展示,可以对要提交的数据进行校验,以及可以基于node进行编程。JavaScript脚本语言有许多特点,比如说它是一种脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释的;它是一种基于对象的脚本语言,它可以创建对象,也能使用当前已经存在的对象;变量非常简单。JavaScript语言中使用弱类型的变量类型,它对使用的变量数据类型不需要超高的标准,是基于Java基本语句和控制的脚本语言,其设计简单而紧凑;具有动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在用户访问某个网页的时候,用户的鼠标在网页中进行鼠标点击或上下移之类的操作,JavaScript可直接对这些用户事件做出相对应的响应;具有跨平台性。JavaScript脚本语言它不依赖于操作系统,只是需要浏览器的支持即可。因此,只要机器上的浏览器支持JavaScript脚本语言,那么在编写完JavaScript脚本语音之后,就可以把它带到任何机器上。随着服务器变得更加健壮,JavaScript继续以其跨平台、易于使用等等的优势占据了主导地位。尽管出于安全原因,程序员更喜欢运行服务器端脚本。同时,一些特殊功能如Ajax必须依靠JavaScript在客户端支持它们。

第3章系统需求分析3系统需求分析3.1可行性分析本章节从社会、经济、技术性三个方面对本系统进行可行性分析。3.1.1社会可行性随着计算机网络技术和信息技术的快速发展,高校资助申请必然要实现信息化管理。对高校资助的深情、提交信息、审核等是可行的。首先,系统对软硬件的要求不高,目前市面上的普通计算机都可以满足开发需求。其次,由于开发工具都是可视化的,因此开发出的应用程序均都具有图形化界面,这使得系统便于操作上手,对于没有使用计算机经验的用户来说也可以快速掌握操作过程。另外,现如今大多数人已经学会了Windows的基本操作,即使他们没有外援指导,没有经历过培训也可以熟练使用本软件,因此该系统社会中是可行的。3.1.2经济可行性开发费用可行性:目前很多的资助系统都有各自的特色,功能也非常的丰富,但目前没有一个系统可以适用于一些普通类的,此套系统的开发前期只需要程序员的设计,且使用的都是开发免费软件,没有特别大的费用投入,后期部署时需要一个外网服务器即可,在整个的设计流程中都采用绿色安装,且没有任何的违规行为,在后期的数据量大的时候可以只需有几个维护数据人员即可。3.1.3技术可行性开发技术可行性:本系统后台采用Java语言进行开发,Java开发有很明显的优势性,跨平台性很高。并且基于Java的网站框架都已经十分的成熟。还有各种Web服务器和许多开源的软件。各个方面分析可以看出,从软件技术方面有绝对的可行性。而硬件层面,只需要一台电脑即可。因此软硬件角度都可以满足系统需求。3.2功能需求分析高校资助管理系统分为前台和后台。前台用户模块主要包括学生用户模块以及学校管理员模块。学生用户登录后首先要进行贫困认定,可以填写贫困生申请表,并且可以上传附件,这些数据都将存入数据库中,在申请贫困认定后,学生还可以查看自己的贫困生审核情况。学校管理员登录后能够查看全校所有学生的申请信息,并且能够下载学生上传的附件(即贫困生证明材料),管理员能够根据这些情况给学生评定是否通过贫困认定。管理员登录后能够对学生用户、管理员用户的信息进行增删改查等操作,也可以发布各类资助公告。下面通过管理员用例图来分析整个系统的功能需求,如图3.1所示:图3.1管理员用例图3.3非功能需求分析在系统中除了进行功能需求分析,还要进行非功能需求分析,那到底什么叫非功能需求分析呢?非功能需求分析就是对系统的运行环境、运行速度、故障预测、故障恢复程度、安全隐秘性等等。但进行非功能需求分析是非常不好进行分析的,它不像功能需求分析,能够操作,非功能需求分析根本就不知道从何入手,让人难以应对,但不进行非功能需求分析,又对以后的上线产生很大的影响,很有可能出现各种各样的问题,让人猝不及防。本系统的非功能需求分析主要测试系统的安全性、运行的速度和数据处理速率等,要求安全又稳定,最大限度的达到最优化。在系统的设计中首先要保证系统的运行以及整个功能的完整,其次要保证系统的整个流程的合理运作,比如在系统的访问以及系统的数据存储合理和响应效率要保证合理性,通常系统的界面操作响应时间以及数据跟数据库的交互处理不超过3s,其次保证数据的合理性比如电话邮箱等格式的合理,以及一些输入数字为金额或者是时间的统计的合理,然后需要对sql的查询进行优化,保证查询的效率合理,对于系统的部署要可跨平台,保证可以进行多维操作。

4系统总体设计4.1基于SSM框架的架构设计SpringMVC是一个优秀的Web框架,MyBatis是一个ORM数据持久化框架,它们是两个独立的框架,之间没有直接的联系。但由于Spring框架提供了IOC和AOP等相当实用的功能,若把SpringMVC和MyBatis的对象交给Spring容器进行解耦合管理,不仅能大大增强系统的灵活性、便于功能扩展,还能通过Spring提供的服务简化编码、减少开发工作量、提高开发效率。SSM框架整合就是分别实现Spring与SpringMVC、Spring与MyBatis的整合,而实现整合的主要工作就是把SpringMVC、MyBtis中的对象配置到Spring容器中,交给Spring来管理。当然,对于SpringMVC框架来说,它本身就是Spring为展现层提供的MVC框架,所以在进行框架整合时,SpringMVC与Spring可以无缝集成。整个系统架构运行流程如图4.1所示:图4.1架构过程流程图4.2网站总体功能结构该系统结合系统的分层结构和SSM框架的工作原理。在src/business目录下有以下包:Action包:存放业务功能Action。Service包:service业务处理层。Util包:存放常用的Java工具类。Exception包:异常处理包,统一异常处理,自定义异常处理都会放在此包中;resources目录下:存放SSM相关的配置文件。WebRoot目录下:基础JSP页面存放,外部可以直接访问的如报错页面,分页的提取页面等。WebRoot/WEB-INF/lib:存放Java的jar包。4.3系统整体结构系统目前采用的是基于MVC三层架构设计的SSM架构,此架构主要是通过将UI端发送请求,然后提交到Controller,在控制层进行中转处理后,提交到Service层,通然后Dao层保存,通过对层次代码的分离,达到代码的维护效果。系统主要分为二种用户角色,管理员、学生,管理员主要负责系统的注册用户的分页查询以及账户信息维护,学生贫困认定的审核,贫困生的管理,奖学金助学金的审核,学生端主要是贫困认定申请,贫困助学金申请,奖学金申请等。根据需求可以画出整体结构图,系统功能模块结构如下图4.2所示。图4.2系统功能模块结构图4.4系统工作流程设计由于该系统是针对高校资助管理人员使用的,所以系统工作流程主要是管理员工作流程,如图4.3所示:图4.3系统总体工作流程图4.5网站数据库设计在数据库设计分析时首先要对系统功能逻辑进行详细分析,分析系统之间各个模块之间的关联以及不同用户的系统功能权限,分析公共模块或是用户关联模块,数据库E-R总图,如图4.4所示图4.4数据E-R图根据系统分析的主要实体有:管理员、学生、贫困认定、奖学金。各个实体具体的描述属性图如下:管理员实体包括了管理员的id、用户名、密码等。如图4.5所示:图4.5管理员实体图2.学生实体包括id、性别、用户名、学号、密码等。如图4.6所示图4.6学生实体图3.奖学金实体包括奖学金编号、申请人、申请状态、申请金额、申请描述等。如图4.7所示:图4.7奖学金申请实体图4.贫困认定实体包括贫困认定人员编号、贫困描述、贫困文件、学生姓名、贫困认定描述等。如图4.8所示:图4.8贫困认定实体图4.6数据库表设计本系统设计用户的登录,各种基础信息,资助贫困认定信息、资助申请信息、家庭收入信息及各种信息的增删改等功能,通过对系统功能的分析,根据平台要求总结出以下需求信息。每个用户都需要一个单独用户名和密码来登录系统。根据上面总结的建表需求,可以得出如下设计:资助管理员表(所属编号、名称、密码、角色);贫困认定表(贫困认定人员编号、贫困描述、贫困文件、学生姓名、资助贫困认定描述);资助申请信息表(资助编号;资助描述、资助申请日期、资助申请日期、资助原因、申请人、资助类型信息);家庭人员信息表(记录编号、家庭人员姓名、收入、性别、出生日期、描述);资助学生信息表(学生编号、学生姓名、学生性别、学生证号、出生日期、学生备注);奖学金申请信息(奖学金编号、申请人、申请状态、申请金额、申请描述);对数据库所需数据表,以及表结构、每张表所代表功能说明。资助管理员表资助管理员表包含资助管理员所有字段信息,包括管理员的登陆用户名和登陆密码;其中主键为gl_admin,非空、且唯一自动递增;其余列皆为不自动递增;表结构如表4.1所示表4.1资助管理员表数据库列名属性名称属性类型是否可为空主键条件gl_admin所属编号int(6)不可为null唯一自增glname后台名varchar(80)不可为nullglpwd后台密码varchar(50)不可为nullglRole角色int(6)不可为null(2)贫困认定信息表包含学生的贫困认定信息等;其中主键为items_id;非空、且唯一自动递增;其余列皆为不自动递增;表结构如表4.2所示表4.2资助贫困认定信息表数据库列名属性名称属性类型是否可为空主键条件items_id贫困认定idint(6)不可为null唯一自增items_miaoshu贫困描述varchar(30)不可为null续表4.2数据库列名属性名称属性类型是否可为空主键条件items_file贫困文件Int(2)不可为nullxuesheng贫困学生double不可为nullLitemsdesc资助贫困认定描述varchar(40)不可为nullL(3)为资助申请信息包含资助内容等;其中主键为fupin_id;非空、且唯一自动递增;其余列皆为不自动递增;表结构如表4.3所示表4.3资助申请信息表数据库列名属性名称属性类型是否为空主键条件fupin_id资助编号int(6)不可为null数字主键自增fupin_name资助描述varchar(30)不可为nullfupin_riqi资助申请日期date不可为nullfupinyaunyin资助原因varchar(10)不可为nullJumin_id申请人int(6)不可为nullfupinleixing资助类型信息varchar(10)不可为null(4)家庭人员信息表包含家庭收入详细信息;其中主键为jating_id;非空、且唯一自动递增;其余列皆为不自动递增;表结构如表4.4所示表4.4家庭收入信息表数据库列名属性名称属性类型是否为空主键条件jiating_id记录编号int(6)不可为null数字主键自增jiating_name家庭人员姓名varchar(20)不可为nulljiating_shouru收入int(6)不可为nulljiating_sex性别int(6)不可为nulljiating_date出生日期date不可为nulljiating_desc描述varchar(20)不可为null(5)资助学生信息表包含学生的个人详细信息;其中主键为jumin_id;非空、且唯一自动递增;其余列皆为不自动递增;表结构如表4.5所示表4.5学生信息表数据库列名属性名称属性类型是否为空主键条件jumin_id学生编号int(6)不可为null数字主键自增jumin_name学生姓名varchar(20)不可为nulljumin_sex学生性别int(6)不可为nulljumin_card学生证号varchar(20)不可为nulljumin_date出生日期date不可为nulljumin_desc学生备注varchar(50)不可为null(6)高校奖学金申请信息表包含申请的金额,申请原因和申请人等;其中主键为jiangxuejing_id;非空、且唯一自动递增;其余列皆为不自动递增;表结构如表4.6所示表4.6奖学金信息表数据库列名属性名称属性类型是否为空主键条件jiangxuejin_id奖学金编号int(6)不可为null唯一自增jiangxuejin_user申请人varchar(30)不可为nulljiangxuejin_date申请状态Int(2)不可为nullJiangxuejin_money申请金额double不可为nullNgxuejin_sdesc申请描述varchar(40)不可为null4.7系统活动图设计4.7.1学生类图设计在类图的业务处理中,主要包含控制层Controller,内包含,新增注册学生类图、学生查询、通过调用service进行业务处理,包含学生新增,以及学生查询,到底层数据库的存储。学生类图如下图4.9所示图4.9学生类图4.7.2奖学金类图设计在房间预约的业务处理中,主要包含控制层Controller,内包含奖学金申请、查询申请记录,通过调用service进行业务处理,到底层数据库的存储。奖学金申请图如下图4.10所示图4.10奖学金申请类图4.8系统活动图设计(1)用户注册,用户可以输入账号,输入个人信息,通过后台进行校验,进无账号则直接保存,有账号则提示已被注册,顺序图如图4.11所示。图4.11学生注册顺序图。(2)新增贫困认定,学生可以上传认定贫困信息,可以对信息进行审核,可以查询审核的结果信息,顺序图如图4.12所示。图4.12贫困认定新增顺序图。(3)登录活动图,通过对登录信息进行校验,判断用户是否存在,判断用户的角色是否正确,顺序图如图4.13所示。图4.13登录顺序图。

5系统详细设计5.1登录管理打开助学管理系统,通过注册个人账号来访问本网站。用户管理功能模块包括用户名、设置密码等。系统分为管理员和学生两大主体模块,用户可以根据不同主体进行选择登录。方便满足不同用户主体的系统应用需求,进行有针对性选择。管理员登录专属系统管理日常信息所有相关记录。学生登陆账号后可以查询具体的助学申请信息。可以登录发布自己的家庭情况和所需的助学申请信息。在login界面输入username,pwd通过login方法触发form表单进行提交。登录界面的实现是后台通过loginaction进行接受,再通过checkuser方法对用户进行登录的校验操作,登录界面如图5.1所示。图5.1登录显示5.2用户管理后端管理员端可以对已有的所有用户信息进行查询,每一个已新增的用户信息都可以在后端进行读取查看,管理员通过点击详情进行查询用户全部信息,同时可以对已新增的用户账号状态进行激活或者对违规账号进行禁用的处理,用户管理页面如图5.2:图5.2注册列表5.3高校资助贫困认定管理在后端端可以对高校资助贫困认定进行信息的维护,可以通过调用itemss表,对注册的所有的在线高校资助贫困认定的进行查询,通过itemssdao层对数据进行筛选,通过findbypage方法对表进行分页selectByExample(newitemssExample());通过在newitemssExample进行参数化设置然后进行查询,贫困验证页面如图5.3,贫困认定申请页面如图5.4:图5.3类型管理图5.4高校资助贫困认定审批5.4公告管理管理员可以对所有的公告进行查询,可以通过对公告信息新增以及对功能进行查询和删除,公告管理页面如图5.5所示:图5.5人员管理5.5高校资助申请管理在用户对高校资助贫困认定进行新增申请时,首先要分为两步,一步为对高校资助贫困认定状态的数据进行校验,另一部分为对数据进行存储到申请表,同时需要对金额以及申请理由等进行存储,通过zhuxuesservice以及zhuxuedao等类对数据进行持久化处理。在用户登录的情况下,通过session获取到userid,采作为存储用户基本信息编号使用。申请时将用户信息以及申请信息进行存储,助学金申请查询页面如图5.6所示图5.6高校资助新增5.6家庭成员管理在后端端可以对家庭成员进行信息的维护,可以通过调用users表,对注册的所有的成员的进行查询,通过usersdao层对数据进行筛选,通过findbypage方法对表进行分页selectByExample(newusersExample());通过在newusersExample进行参数化设置然后进行查询,家庭成员信息管理页面如图5.7所示:图5.7家庭成员管理

6系统测试6.1测试分析在软件开发过程中软件测试阶段是是至关重要的,是保证可交付软件质量的关键。在完成了系统各个功能模块开发之后来到了系统的最终测试阶段,在这一阶段的任务主要是按照设计书去检验系统是否按照预期一样成功实现,找出存在的漏洞与错误并加以修改,最终保证系统是一个完整得可以交付的产品。只有对已完成开发得系统进行测试,才能明白系统目前存在哪些问题并加以修改。而且可以发现目前系统有哪些不足,可以实现更好的完善。虽说测试是一个很麻烦的过程,但是这对于我们更好的理解系统,理解软件开发流程是至关重要的。此次的网学习课程平台也是经过了大量的测试,从单元测试到集成测试再到最后的系统测试,最终才实现了一个相对比较满意的效果。过程中正因为有了大量的BUG出现,我才能认识到自己在什么地方犯了错,找出不足并引以为戒。在本系统中,可以采取对上传视频类型、文件大小等操作对系统进行性能测试。可以按照前期的任务书对系统进行黑盒测试,不打开内部代码只对整体测试,测试是否按照需求内容正确完成系统等。虽然在完成高校资助系统的过程中遇到了很多困难,但经过不断的努力也都一一克服,完成了系统的各个功能模块,到了需要对系统进行最终测试的这个阶段,这是高校资助系统需要完成的最后一步,同时也是至关重要的一步。在这一阶段,主要是需要测试已设计完成的各个功能模块能否实现,同时也要测试,检验系统中是否还存在一些问题,并且将找到的问题逐一解决。高校资助系统算是我自己独立完成的第一个系统,这个系统也是经过了多次测试,并把每一次测试中出现的问题都逐一解决。在多次测试中,系统的功能也得到不断的改进与完善。我发现,在系统的测试阶段,是能最快提升自己知识与技术的阶段,因为这是一个解决问题的过程,不单单是解决一些技术上的问题,同时也是自己思考方式的一次提升,同时也可以帮助自己学会更加细心的去解决问题,无论是寻找问题还是努力解决问题,这些过程都让我学会做事时细心与耐心的重要性。做好测试阶段,是做好整个高校资助系统的基础。6.2系统测试方法系统的测试方法有以下几种方法:单元测试单元测试又被称为模块测试,是所有测试方法中最微小的测试,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试,是对软件中最小可测试单元进行检查和验证。主要用来测试系统某个功能或代码块是否正确。集成测试集成测试也称为组装测试或联合测试。它是在单元测试的基础上进行的,并且对各个部件进行了联合测试以验证是否有冲突。确认测试确认测试也称有效性测试,目的是检查系统功能是否与需求分析中要求的功能一致。系统测试系统测试是对整个系统的硬件、软件和操作人员进行检查,以找出不符合系统说明书的地方,以确保系统满足要求。验收测试验收测试也称交付测试是部署系统前的最后一步测试操作,是设计技术测试的最后一步。目的是确定产品可以满足用户需求。回归测试回归测试就是修改旧的代码重新测试以确保修改的正确性。目的是验证对软件的修改是否正确。6.3系统测试用例通过描述输入、动作、或者时间和一个期望的结果,来确定各个模块特性是否正常的工作。(1)管理员登录模块的测试用例功能描述:测试管理员登录模块的身份验证。用例目的:测试系统登录界面不同输入条件下,登录模块的提示和跳转响应。测试输入、动作、预期结果以及实际情况如表6.1所示。表6.1管理员登陆测试输入动作预期结果实际情况正确用户名,正确密码点击登录按钮正常登录正常正确用户名,错误密码点击登录按钮用户名或密码错误,请确认数据库初始化正常错误用户名,正确密码点击登录按钮用户名或密码错误,请确认数据库初始化正常错误用户名,错误密码点击登录按钮用户名或密码错误,请确认数据库初始化正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常(2)学生用户登录模块的测试用例功能描述:测试学生用户登录模块的身份验证。用例目的:测试不同输入条件下,登录模块的提示和跳转响应。测试输入、动作、预期结果以及实际情况如表6.2所示。表6.2学生用户登陆测试输入动作预期结果实际情况正确用户名,正确密码点击登录按钮正常登录正常正确用户名,错误密码点击登录按钮用户名或密码错误,请确认数据库初始化正常错误用户名,正确密码点击登录按钮用户名或密码错误,请确认数据库初始化正常错误用户名,错误密码点击登录按钮用户名或密码错误,请确认数据库初始化正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常正确用户名,正确密码点击重置按钮输入的用户名和密码消失正常(3)学生基础信息模块的测试用例功能描述:测试基础信息模块功能。用例目的:测试基础信息模块功能的正确性。测试输入、动作、预期结果以及实际情况如表6.3所示。表6.3学生基础信息模块测试对应菜单输入动作预期结果实际情况贫困认定申请点击显示按钮跳转申请贫困认定界面正常贫困认定申请输入信息并提交点击按钮显示已提交待审核正常助学金申请点击显示按钮跳转申请助学金界面正常助学金申请输入信息并提交点击按钮显示已提交待审核正常奖学金申请点击显示按钮跳转申请奖学金界面正常奖学金申请以类型为过滤条件点击过滤按钮显示该条件的奖学金类型正常奖学金申请输入信息并提交点击按钮显示已提交待审核正常公告查询点击按钮显示公告内容正常个人信息编辑修改信息点击提交显示修改后信息正常密码修改修改密码点击提交重新登录正常(4)管理员模块的测试用例功能描述:测试基础信息模块功能。用例目的:测试基础信息模块功能的正确性。测试输入、动作、预期结果以及实际情况如表6.4所示。表6.4管理员基础模块测试对应菜单输入动作预期结果实际情况贫困认定审核点击显

温馨提示

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

评论

0/150

提交评论