毕业设计(论文)-基于Java EE技术的驾校在线考试系统的设计与实现.doc_第1页
毕业设计(论文)-基于Java EE技术的驾校在线考试系统的设计与实现.doc_第2页
毕业设计(论文)-基于Java EE技术的驾校在线考试系统的设计与实现.doc_第3页
毕业设计(论文)-基于Java EE技术的驾校在线考试系统的设计与实现.doc_第4页
毕业设计(论文)-基于Java EE技术的驾校在线考试系统的设计与实现.doc_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

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

文档简介

中北大学2013届毕业论文毕业设计说明书基于Java EE技术的驾校在线考试系统的设计与实现2班 级: 学号: _软件学院姓 名: 软件工程学 院: 专 业: 指导教师: 2013年 6 月驾校在线考试系统摘要在现代社会中,汽车早已成为了一个必不可少的代步工具,越来越多的人开始拥有自己的汽车。在开车上路前,必不可少的要经过驾校的培训和考核。然而,纸质的考卷不仅浪费资源,管理起来也过于繁琐。于是,网络的快速发展,将这一需求带向了无纸化时代。在电脑上进行理论考核,不仅能做到纸质考卷所能完成的功能,还能提高对考卷的管理效率。这种考核形式节约了时间,而且还节省了成本。在当今追求节约型社会的潮流下,考试方式终将进入无纸化时代。本文将主要阐述基于Java EE技术的驾校在线考试系统的设计与实现,并对系统所涉及的相关技术、需求分析、概要设计、详细设计、代码实现和系统测试进行说明。本系统采用B/S的开发模式,以Eclipse和Dreamweaver作为开发平台,Tomcat作为服务器,MySQL作为数据库,java语言作为主要的编程语言,界面采用HTML+CSS的布局方式,采用Java Web开发技术和MVC设计模式,并结合三大框架Struts、Spring、Hibernate和JavaScript、Jquery、Json、Ajax等技术进行开发。最终开发一个拥有在线练习、在线考试、个人信息管理、用户与题库管理,并且系统界面美观大方、具有较好的扩展性、维护性、安全性的驾校在线考试系统。用户借助次系统,可以随时进行练习并进行最终的考试。驾校借助此系统,可以更好的完成对考生的考核和对考生各项信息的管理。关键词:驾校在线考试,B/S模式,Java EE技术,SSH框架,Eclipse工具全套设计加扣 3012250582The Online Driving Testing System AbstractIn the modern society, the car has become an indispensable transportation tool with more and more people have their own car. Before driving, the essential processes drivers should pass are training and testing. While testing on paper is not only a kind of wasting, but complex to be managed. So with the development of network, examination has ushered the paperless age. When testing online, this pattern saves a lot of time and resources. Under the trend of economical society, driving testing will fully usher the paperless age.This article will mainly expound the design and implementation of The Online Driving Testing System based on Java EE technology, and explain some technologies which involved、 demanding analysis、integrated design、detailed design、coding and ST(system testing).The system take the B/S developing mode, Eclipse and Dreamweaver for developing tools, Tomcat for Server, MySQL for data base, java for developing language, HTML+CSS mode, MVC design mode and Java Web technology combining SSH、JavaScript、Jquery、Json and Ajax technology to develop. Finally a Online Driving Testing System will come out which has the functions of online practicing, online testing, personal information management, users and contents management, also it should have these advantages such as beauty, good expandability, maintainability and safety. Users can practice freely and take the driving examination using the system. The driving school can conduct the examination and manage users information better.Keywords: the online driving testing, B/S mode, Java EE, SSH, Eclipse中北大学2013届毕业论文目 录41绪论11.1课题背景及现状11.2研究目的及意义21.3论文组织结构32理论及技术基础42.1系统开发总体介绍42.2开发环境及工具简介42.2.1Eclipse开发平台42.2.2Dreamweaver开发工具42.2.3Tomcat服务器52.2.4MySQL数据库和SQLyog管理工具62.3相关技术简介72.3.1MVC开发模式72.3.2SSH三大框架72.3.3JavaScript技术92.3.4Jquery插件92.3.5JSON技术92.3.6AJAX技术103系统需求分析113.1功能描述113.1.1考生用户113.1.2管理员用户113.2设计要求113.3模块分析123.4可行性分析133.4.1技术可行性133.4.2经济可行性143.4.3运行可行性143.4.4分析结论144系统总体设计154.1数据库设计154.1.1环境搭建154.1.2概念模型设计154.1.3关系模式设计154.1.4实体映射配置164.2系统概要设计184.2.1总体结构设计194.2.2管理员功能模块204.2.3用户功能模块205系统详细设计215.1登陆功能215.2前台用户功能模块225.2.1模拟考试练习功能225.2.2考试功能225.2.3个人资料模块功能225.3后台管理员功能模块225.3.1管理员和用户管理模块235.3.2练习题和考试题管理模块245.3.3权限管理模块255.3.4成绩查询模块276编码及实现276.1用户管理模块276.2管理员管理模块416.3习题管理模块556.4权限管理模块687系统测试797.1测试目的797.2白盒测试797.3黑盒测试798总结79参 考 文 献80致 谢81第 页 共 页中北大学2013届毕业设计说明书1 绪论人类社会是一个不断发展不断进步的社会,从刀耕火种的原始社会,到各个封建王朝的崛起,再到物质及其丰富的现代社会,每一次的变革都是随着生产力的提高而发生。而生产力的大幅度提高,都离不开和生活、生产相关的各种发明创造。工业时代,蒸汽机的出现极大地推动了人类社会的发展,将生产力迅速提高,使人类开始迈向了现代文明。到了近代,电脑和网络的出现,也将人类的生产活动推向了新的高峰。各行各业的生产和管理,都离不开电脑和网络的应用。电脑,将管理的方式从纸质时代带向了无纸化时代;网络,将各项生产活动带向了远程终端控制的时代。各行各业将自己的生产方式和管理方式逐渐用软件所替代,基于这种现状,我想出了这个课题“驾校在线考试系统”。1.1 课题背景及现状在现代社会中,汽车早已成为了一个必不可少的代步工具,越来越多的人开始拥有自己的汽车。据经济杂志Wards Auto的介绍,2010年,全球共有汽车数量为十亿零一千五百万辆汽车,2009年时,全球汽车数量还只有九亿八千万辆,这说明全球每年增加三千五百万辆汽车。如果有人问,哪个国家的汽车增加最多,一般人会毫不犹豫地回答是中国。事实也的确如此,我国每年汽车的增加数量占到了全球汽车增加数量的三分之一左右。截止到2011年年底,我国汽车保有量达1.04亿辆,我国大城市中,汽车保有量达到100万辆以上的城市数量已达15个。我国的汽车保有量仅次于美国的汽车保有量,已经成为了世界上汽车第二大国。汽车数量的增多,对驾驶员的需求也就随之增加。每年增加的数百万辆汽车,如果每两辆车配一个新司机的话,也将新产生百万个新驾驶员。在驾驶员开车上路之前,必不可少的要进过驾校的培训和考核。只有考核通过,领取驾驶证以后才能合法的上路开车。一个汽车驾驶员,不仅掌握着自己的命运,有时也掌握着他人的命运。合格的汽车驾驶员,会给自己和他人带来生活、工作上的便利;不合格的驾驶员,不仅是对自己生命的不尊重,也会成为他人生命的收割者,给自己和其他家庭带来无尽的痛苦。因此,对于驾驶人来说,驾校的培训和考核是很重要的一个环节。大家都知道,驾驶员考核的第一项就是理论考核。考的是对道路交通安全法律知识的掌握情况。理论考试时间为45分钟,一共100道试题,满分100分,成绩达到90分的为合格,并且考试题从试题题库中随机抽取生成。在新道路交通安全法规正式实施之前,理论考试的通过率一般都在90%左右。高通过率让人们对于理论的学习变得掉以轻心,总觉得那么简单的题,一定能通过。然而,在新道路交通安全法颁布之后,理论考核的通过率大大降低。这是因为,新的理论考题更加的灵活、生动、实用,是和实际操作结合起来的。大多会配以图示进行询问和考核,甚至还会有动画。这些新增的要求,更加大了学员对于考试内容的理解和掌握程度。于是,在考核之前,对于考试的练习必不可少。“驾校在线考试系统”正是基于这一需求而开发,不仅可以去练习考试知识,还能参加最终的理论考试。1.2 研究目的及意义我们来试想一下,如果数百万的新增驾驶员,去驾校报名进行培训和考核,这么多人的信息管理和考试的管理将会是一项多么庞大的工程。如果还是用纸张的管理方式的话,那么个人信息资料将会堆积如山,并且安全性也不高。在考试后,纸质试卷也需要更多的人去进行阅卷和整理,更加浪费了人力资源和宝贵的时间。因此,出于以上的各种考虑,我们将驾校的管理和理论的考核交给计算机软件来完成。计算机的出现,极大的提高了工作和生活中对于各项事务的管理效率。帮助人们完成那些繁琐的体力和脑力劳动,在减轻了工作负担的同时,也提高了工作的效率、准确度和安全性。对于各行各业,不同的软件满足了不同业务的需求。以前费时费力的工作,现在只需输入数据,鼠标一点即可完成。极大的提高了效率,节约了管理成本,也节省了资源。在如今可持续发展理念的引领下,对于驾校的管理和对理论科目的考核,终将进入无纸化时代。这是时代发展的潮流,也是社会发展的必然趋势。“在线驾校考试系统”正式针对这些问题而单独设计的一个非常实用的应用型软件产品。从用户数量来看,此系统的潜在用户将是十分庞大的,因此它的应用将非常广泛。只要是有汽车的地方,就需要驾校的管理和考核。本系统主要任务是辅助驾校完成对用户的信息管理和对用户的交通法规,即科目一的理论考核。节省了大量的人力资源和公共资源,减少了运营成本,提高了工作效率。对于每一个用户来说,在正式参加考试前,能进行充分的模拟练习,从而更好的掌握理论知识,提高自己通过考试的概率。更重要的是,通过在线的模拟练习和最终的考核,让每一个驾驶人都更好的掌握交通法规知识,成为一名合格的司机。1.3 论文组织结构本文详细介绍了“基于Java EE的驾校在线考试系统”从设计到实现整个过程。一共分为八个部分,各部分的主要内容如下:第一部分“绪论”,主要从课题背景和现状方面阐述了系统开发的目的和意义,并简单介绍了系统将要实现的功能和以后的主要用途。第二部分“理论及技术基础”,从总体上介绍了系统开发所用到的技术和方式。然后分别从开发环境及工具和相关技术方面,具体对本系统的开发做了详细地介绍。第三部分“系统需求分析”,从“功能描述”、“设计要求”和“模块分析”三个方面分别阐述了本系统的各个用户的主要功能,之后用流程图和用例图形象说明了登陆的流程和各种用户可以执行的操作。第四部分“系统总体设计”,主要描述了数据库的设计和系统的概要设计,其中包括结构设计和管理员、用户功能模块的设计。第五部分“系统详细设计”,从每一个单功能出发,具体描述了各个功能的详细流程和参与的用户等。第六部分“编码与实现”,主要从模块的角度出发,结合程序图片和程序代码来阐述系统的具体实现。第七部分“系统测试”,描述了测试的两个主要方法“白盒测试”和“黑盒测试”,具体在什么情况下使用哪种测试方式。第八部分“总结”,对本次课题进行总结。2 理论及技术基础2.1 系统开发总体介绍本系统采用B/S的开发模式,以Eclipse和Dreamweaver作为开发平台,Tomcat作为服务器,MySQL作为数据库,Java语言作为主要的编程语言,界面采用HTML+CSS的布局方式,采用Java Web开发技术和MVC设计模式,并结合三大框架Struts、Spring、Hibernate和JavaScript、Jquery、Json、Ajax等技术进行开发。2.2 开发环境及工具简介2.2.1 Eclipse开发平台Eclipse是一个开放源码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。虽然大多用户很乐于将Eclipse作为Java集成开发环境来使用,但Eclipse的目标却不仅限于此。Eclipse还包括插件开发环境(Plugging Development Environment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为允许他们构建于Eclipse环境无缝集成的工具。由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性不仅限于Java开发工具。尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C+、CODBOL、PHP等编程语言的插件,或预计将会推出。Eclipse作为一个比较完善的开发工具,对于本系统的开发将会发挥很大的作用。2.2.2 Dreamweaver开发工具Dreamweaver是一个可视化的网页设计和网站管理工具,支持最新的Web开发技术,包含HTML检查、HTML格式控制、HTML格式化处理、HomeSite/BBEdit捆绑、可视化网页设计、图像编辑、全局查找替换、全FTP功能、处理Flash和Shockwave等富媒体格式和动态HTML、基于团队的Web创作等。Dreamweaver是当前最流行的网页设计软件,它和Macromedia公司出品的Fireworks和Flash一道,被誉为网页制作三剑客。Dreamweaver与其他同类型软件相比主要有以下优点:(1)、不生成冗余的代码。可视化的网页编辑器,都要把使用者的操作转换成HTML代码。一般的编辑器都会生成大量的冗余代码,给网页以后的修改带来极大的不方便,同事还增加了网页文件的大小。(2)、方便的代码编辑。Dreamweaver提供了HTML快速编辑器和自建的HTML编辑器,能方便自如的在可视化编辑状态和源码编辑状态间切换。(3)、强大的动态页面支持。Dreamweaver在网页中加入了丰富的动态效果,还可以精确的对层进行定位,再加上timeline功能,可生成动感十足的动态层效果。(4)、操作简单。Dreamweaver提供的历史面板、HTML样式、模板、库等功能避免了重复劳动。(5)、优秀的网站管理功能。在定义的本地站点中,改变文件的名称、位置,Dreamweaver会自动更新相应的超链接。(6)、便于扩展。使用者可以给Dreamweaver安装各种插件,使其功能更强大。使用者若有兴趣,还可以自己去制作插件,使其更适应个人的需求。2.2.3 Tomcat服务器Tomcat服务器是一个免费的开放源码的Web应用服务器。Tomcat是Apache软件基金会的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序员的首选。Tomcat很受广大程序员的喜爱,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新增的功能。2.2.4 MySQL数据库和SQLyog管理工具MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了MySQL作为网站的数据库。MySQL有很多优点,比如:(1)、它使用的核心线程是完全多线程,支持多处理器。(2)、有多种类型。(3)、它通过一个高度优化的类库实现SQL函数库并像他们能达到一样的快速,通常在查询初始化后不该有任何内存非配,没有内存漏洞。(4)、全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函数等。(5)、支持ANSI SQL的LEFTOUTER JOIN和ODBC。(6)、所有列都有缺省值。(7)、MySQL可以工作在不同的平台上。支持C、C+、Java、Perl、PHP、Python和TCL API。SQLyog是业界著名的Webyog公司出品的一款简介高效、功能强大的图形化MySQL数据库管理工具。SQLyog可以快速直观地让你从世界的任何一个角落通过网络来远程维护远端的MySQL数据库。SQLyog相比其他类似的MySQL数据库管理工具,具有如下的特点:(1)、基于C+和MySQL API编程。(2)、方便快捷的数据库同步于数据库结构同步工具。(3)、易用的数据库、数据表备份还原功能。(4)、支持导入与导出XML、HTML、CSV等多种格式的数据。(5)、直接运行批量SQL脚本文件,速度极快。2.3 相关技术简介2.3.1 MVC开发模式MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计的典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑,MVC被独特的发展起来,用于映射传统的输入、处理和输出功能在一个逻辑图形化用户界面的结构中。视图,是用户看到并与之交互的界面。对于老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演重要角色,但一些新的技术已层出不穷,包括Adobe Flash和XHTML、XML/XSL、WML等一些表示语言和Web Services。模型,表示企业数据也业务规则。在MVC的三个部件中,模型拥有最多的处理业务。且模型与数据格式无关,由于应用模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。控制器,接受用户的输入并调用模型和视图去完成用户的需求,所以单击Web页面中的超链接和发送表单时,控制器本身不输出任何东西和做出任何处理。它只是接收请求并确定调用哪个模型构建去处理请求,然后再确定用哪个视图来显示返回的数据。2.3.2 SSH三大框架SSH在J2EE项目中表示了三种框架,即Spring + Struts + Hibernate。Struts对Model、View和Controller都提供了对应的组件。其中,Struts进行流程控制,Spring进行业务的流转,Hibernate进行数据库操作的封装Struts:如下图所示,ActionServlet这个类是Struts的核心控制器,负责拦截来自用户的请求。Action,这个类通常由用户提供,接收来自ActionServlet的请求,并根据其请求调用模型的业务逻辑方法进行处理。Model部分由ActionForm和JavaBean组成,其中ActionForm用于封装用户的请求参数,封装成ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionForm里面的请求参数处理用户的请求。View部分采用JSP实现。Controller组件有两个部分:系统核心控制器和业务逻辑控制器。系统核心控制器对应图中的ActionServlet。业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用Model来完成处理,对应Action部分。图2.1 MVC相应模式图Spring:Spring是一个开源框架,是2003年兴起的一个轻量级Java开发框架,有RodJohnson在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂新而创建。Spring基本使用的JavaBean来完成以前只能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言任何Java应用都可以从Spring中受益。Hibernate:Hibernate是一个开放源码的对象欢喜映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以再应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。2.3.3 JavaScript技术JavaScript是一种有Netscape的LiveScript发展而来的原型化继承的面相对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言。一个完整的JavaScript实现由以下3个不同的部分组成:核心(ECMAScript)、文档对象模型(Document Object Model,简称DOM)、浏览器对象模型(Browser Object Model,简称BOM)。它有以下优点:简单性、动态性、跨平台性、节省CGI的交互时间。2.3.4 Jquery插件Jquery是继prototype之后又一个优秀的JavaScript框架,它是轻量级的JS库,它兼容CSS3,还兼容各种浏览器。Jquery使用户能方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供Ajax交互。Jquery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说的很详细,同时还有许多成熟的插件可供选择。Jquery能够使用户的HTML页面保持代码和HTML内容的分离,也就是说,不用再在HTML里面插入一堆JS来调用命令了,只需要定义ID即可。2.3.5 JSON技术JSON是一种轻量级的数据交换格式。它基于JavaScript的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似C语言家族的习惯。这些特性是JSON成为理想的数据交换语言。易于人们的阅读和编写,同事也易于机器解析和生成。2.3.6 AJAX技术AJAX,即Asynchronous JavaScript and XML(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。通过AJAX技术,浏览器页面与服务器之间采用异步通信的机制,让用户连续的发送多次异步请求,而无需重复多次提交信息,无需等待服务器响应,给浏览者带来连续的体验。因其使网页类应用程序更小、更快、更友好,得到了越来越多的网站开发者的重视和青睐。3 系统需求分析需求分析的基本任务是准确地回答“系统必须做什么”这个问题,也就是对目标系统提出完整、准确、清晰、具体的要求,是一个发现、求精、建摸、规格说明和复审的过程。为了发现用户的真正需求,首先应该从宏观角度调查、分析用户所面临的问题,尽可能了解当前用户的情况和需要解决的问题。需求分析的结果是系统开发的基础,关系到项目的成败和产品的质量。因此,必须用行之有效的方法对软件需求进行详细的分析,以及严格的审查验证。3.1 功能描述3.1.1 考生用户 1) 输入自己的用户名及密码登录,可以查看个人信息,以及修改密码、联系方式等部分个人信息,保证账户的安全性和有效性;2) 管理员分配了考试权限孩子后,考生可以进行在线考试的内容。考试结束后,可以进行错题回顾,并且每次考试将要记录在数据库中。考过之后,便不能在重复考试。除非管理员再一次分配了权限才可继续进行考试。3) 可以按自己的姓名查找自己的资料和考试信息。3.1.2 管理员用户1) 输入自己的用户名及密码登录,可修改自己的密码等信息保证账户安全性,并定期提示;2) 查询所有考生用户和管理员用户的信息;3) 对题库和用户进行增删查改操作。4) 对存在的用户分配考试的权限,其中有小车考试、货车考试和客车考试三个权限。5) 可以查询所有考生的成绩,但不能进行修改。如果考生还要参加考试,管理员可以先将已经考过的成绩作废,重新分配权限之后才可以进行考试。3.2 设计要求1) 系统应建立良好的界面,使操作尽可能的简单、直观、灵活、方便、快捷,易于掌握。因为这个系统可能是面向没有计算机使用基础的普通用户。2) 系统在用户输入用户名,密码时,就具有自动识别的功能,以帮助用户更正错误。3) 用户的各种操作不论成功与否,都应该有完善的信息提示,有助于用户了解。4) 系统应具有良好的安全性,遵循有关信息安全标准,具有切实可行的安全保护和保密措施。5) 系统应具有很好的应用性,适合学校环境。3.3 模块分析 在线考试系统的主要目标是实现在线考试,围绕这一中心任务,必须提供对在线考试的全面支持和其它教务辅助功能。整个系统的用户除了系统管理员外还有考生,这两类用户的相关信息都被存储在数据服务器中,称之为合法用户。因他们具有不同的权限,进入在线考试系统前必须对身份进行验证,用户只有属于其中的一种合法用户才能进入系统,对权限范围内的规定资源进行访问。登录模块流程如图3.1,各用户模块功能的用例图如图3.2-3.3所示。图 3.1 登录流程图图 3.2 管理员用例图图 3.3 用户用例图3.4 可行性分析在初步的需求分析后就可以提出系统目标,即系统建立后所要求达到的运行指标,这是系统开发和评价的依据。系统目标应充分体现教务评教系统的实际存在意义,直接为学校服务,并且可以分期分批实现。需要指出的是,系统目标不可能在总体规划阶段就提得非常具体,它还将在开发过程中逐步明确和定量化。系统的目标确定后,就可以从以下三方面对能否实现新系统目标进行可行性分析。3.4.1 技术可行性本系统由于只面向学校内部的用户使用,人数相对固定,而且使用时段也较为固定,流量并不会很大,所以对服务器的配置要求不高,一般的计算机或小型服务器即可胜任。在开发时个人的电脑配置已经足够,该系统的功能足以被实现。在软件方面可以用以下几种:1) 操作系统使用Windows。Windows作为一个优秀的网络操作系统,它的发行版本中集成了大量的网络应用软件。而且作为最常用的操作系统,使用难度低、普及率高,适合普通用户和单位使用。2) Web服务器端采用Tomcat + MySQL。Tomcat是JavaEE应用最为流行的服务器之一,功能完善,足够本系统使用;MySQL是一般中小型企业和网站最常用的数据库,功能强大,管理方便,可以很好的处理数据。3) 一般用户只需要一个网络浏览器(推荐使用IE)连接网络即可访问。3.4.2 经济可行性本系统因毕业设计要求的关系,软件开发周期为23个月,开发人员仅为本人,所需硬件设施目前大多数个人计算机都能够承担,所用软件、技术基本都开源免费,开发成本费用不高。目前,大多数学校都拥有高性能计算机和局域网,甚至服务器。该软件系统的安装、部署、运行和维护,都不会给单位增加太高的费用。3.4.3 运行可行性目前,大多数计算机和局域网都能够运行该系统,其安装、调试、运行不会改变原计算机系统和网络的设置、环境,并且大多数用户几乎不用做任何培训都能够方便使用本系统。3.4.4 分析结论按上述三方面进行可行性分析、研究后,发现该项目很适合作为一个毕业设计去开发,也很适合一般驾校投入使用,所以我认为该项目是可行的。4 系统总体设计4.1 数据库设计4.1.1 环境搭建本项目数据库使用Windows32位版本的MySQL为基本环境,使用SQLyog工具管理数据库。由于使用Hibernate框架,数据表会根据在Hibernate中所写相关配置文件自动创建。4.1.2 概念模型设计将需求分析得到的用户需求抽象为信息结构,即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。概念结构的主要特点1) 能真实充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。2) 易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。3) 易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。4) 易于向关系、网状、层次等各种数据模型转换。根据以上得到的数据项和数据结构,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。4.1.3 关系模式设计一个实体型转换为一个关系模式的集合。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:1) 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。2) 一个1:N联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。3) 一个M:N联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。4) 三个或三个以上实体间的一个多元联系可以转换为一个关系模式,与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。根据以上的关系模式,详细的分析出实体类之间的对应关系,能够更好的构建实体模型,从而使数据库的设计更加合理。4.1.4 实体映射配置表4.1 用户信息表User - 用户信息表名称代码数据类型强制注释用户代码UserCodeVARCHAR(50)TRUE主键用户类型UserTypeVARCHAR(2)TRUE00-管理员01-用户用户名UserNameVARCHAR(50)TRUE用户密码PasswordVARCHAR(100)TRUE联系电话TelphoneVARCHAR(50)TRUE联系邮箱EmailVARCHAR(200)FALSE注册时间RegTimeDATETIMEFALSE时间戳:YYYYMMDDhhmmss有效状态ValidStatusVARCHAR(2)FALSE00-无效01-有效备注一Reverse1VARCHAR(10)FALSE备注二Reverse2VARCHAR(10)FALSE备注三Reverse3VARCHAR(10)FALSE表4.2 练习题表PracticeQues - 练习题表名称代码数据类型强制注释试题代码QuesCodeVARCHAR(50)TRUE主键试题分类QuesCategoryVARCHAR(2)TRUE01-小车试题02-货车试题03-客车试题试题类别QuesTypeVARCHAR(2)TRUE01-判断题02-选择题试题内容QuesContentVARCHAR(300)TRUE选项AChooseAVARCHAR(200)FALSE选项BChooseBVARCHAR(200)FALSE选项CChooseCVARCHAR(200)FALSE选项DChooseDVARCHAR(200)FALSE试题图片QuesImageBLOBFALSE正确答案RightChooseVARCHAR(2)TRUE录入时间InputTimeDATETIMEFALSE时间戳:YYYYMMDDhhmmss有效状态ValidStatusVARCAHR(2)FALSE00-无效01-有效备注一Reverse1VARCHAR(10)FALSE备注二Reverse2VARCHAR(10)FALSE备注三Reverse3VARCHAR(10)FALSE表4.3 考试题表ExamQues - 考试题表名称代码数据类型强制注释试题代码QuesCodeVARCHAR(50)TRUE主键试题分类QuesCategoryVARCHAR(2)TRUE01-小车试题02-货车试题03-客车试题试题类别QuesTypeVARCHAR(2)TRUE01-判断题02-选择题试题内容QuesContentVARCHAR(300)TRUE选项AChooseAVARCHAR(200)FALSE选项BChooseBVARCHAR(200)FALSE选项CChooseCVARCHAR(200)FALSE选项DChooseDVARCHAR(200)FALSE试题图片QuesImageBLOBFALSE正确答案RightChooseVARCHAR(2)TRUE录入时间InputTimeDATETIMEFALSE时间戳:YYYYMMDDhhmmss有效状态ValidStatusVARCAHR(2)FALSE00-无效01-有效备注一Reverse1VARCHAR(10)FALSE备注二Reverse2VARCHAR(10)FALSE备注三Reverse3VARCHAR(10)FALSE表4.4 系统代码表SysCode - 系统代码表名称代码数据类型强制注释代码类型CodeTypeVARCHAR(50)TRUE主键代码名称CodeCodeVARCHAR(2)TRUE主键代码含义CodeNameVARCHAR(50)TRUE有效状态ValidStatusVARCHAR(2)FALSE00-无效01-有效备注一Reverse1VARCHAR(10)FALSE备注二Reverse2VARCHAR(10)FALSE备注三Reverse3VARCHAR(10)FALSE表4.2 考试成绩表Grade - 考试成绩表名称代码数据类型强制注释用户代码UserCodeVARCHAR(50)TRUE主键试题分类QuesCategoryVARCHAR(2)TRUE主键01-小车试题02-货车试题03-客车试题成绩ScoreINTTRUE有效状态ValidStatusVARCHAR(2)FALSE00-无效01-有效备注一Reverse1VARCHAR(10)FALSE备注二Reverse2VARCHAR(10)FALSE备注三Reverse3VARCHAR(10)FALSE4.2 系统概要设计经过了需求分析阶段的工作,基本上正确理解了系统的需求。同时通过数据库的设计,使系统中涉及到的实体更加清晰、明确。接下来将对教务评教系统的各模块业务功能进行分析与设计。系统设计从概念上分为概要设计和详细设计两个阶段。概要设计又称为结构设计,其主要的任务是制订系统实现方案和设计规范并合理确定软件系统的整体模块结构及接口关系。详细设计,也称为模块设计,其主要任务是详细规划每个模块功能的实现流程及算法。在这里首先对系统整体结构进行概要设计,明确总体构架,以及确定各个模块应有的业务功能,待思路明确之后,在下一部分再进行系统各模块具体业务功能的详细设计与实现。考虑到教务评教与计算机管理系统的交互性、复杂性和计算机本身的一些特性,在开发教学评测系统时不能简单地模仿手工系统,而应根据信息流的流向和顺序,全面考虑对各项数据的组织、管理,及其面向的用户对象。并将对各数据操作以具体的实际业务功能表现出来,分配给不同权限的用户进行使用,使系统中数据合理、流畅的传递,各功能稳定的运行。4.2.1 总体结构设计系统已网站的形式实现,在用户输入本站的网址后,会进入欢迎页面,显示欢迎信息以明确的展示本网站的名称。用户点击进入后,会跳转至登录页面,登录页面会让用户选择自己的身份,并输入用户名、密码以及验证码,验证通过之后会进入系统主界面。系统主界面由三部分组成,如图4.1所示:1) 标题栏:所有用户都公用此标题栏,标题栏不止显示本系统的标题,同时还动态显示当前登录用户的身份,当前时间,以及当前用户的站内邮件代收件数量的提示。而且还包含返回首页,前进,后退,刷新,显示用户登录详细信息,以及安全退出登录等常用功能。2) 菜单栏:根据登录用户身份的不同,而显示不同的功能菜单供用户使用,将在下文中对各用户的功能菜单进行详细分析与设计。3) 功能页面:完成各功能操作的具体页面,根据选择功能的不同而跳转。标题栏功能页面菜单栏图4.1 界面设计框架图4.2.2 管理员功能模块管理员负责管理和维护系统后台数据信息,以保证系统稳定、正常的运行。管理员可以对用户、管理员、练习题、考试题、权限等进行维护和相应的操作,具体如图4.2:图4.2 管理员功能设计图4.2.3 用户功能模块用户登陆本系统之后,可以进行在线练习,有小车练习、货车练习和客车练习三个功能。如果管理员给其分配了考试权限,则可以进行相应的考试。用户还可以修改自己的个人资料和密码等操作。具体如

温馨提示

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

评论

0/150

提交评论