完整版在线考试系统毕业设计.docx
- 文档编号:24084187
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:21
- 大小:145.04KB
完整版在线考试系统毕业设计.docx
《完整版在线考试系统毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版在线考试系统毕业设计.docx(21页珍藏版)》请在冰豆网上搜索。
完整版在线考试系统毕业设计
河南工业大学
毕业论文
题目在线考试系统
院系名称:
信息科学与工程学院
专业班级:
计算机软件03级
用户姓名:
学号:
指导教师:
2011年4月12日
摘要
随着计算机技术的迅猛发展,学校教学和管理的信息化发展也有长足的进步,这就要求各个环节都均衡发展,从软硬件双方面把学校建设成一流的信息管理、教育教学的平台。
本文设计开发的在线考试系统也是其中重要的一个方面。
该系统本着减轻教师工作负担、提高工作效率、优化用户考试的流程,增强参加考试用户的身份识别,比传统的考试模式节省人力财力和时间。
系统分为三大模块:
考生管理模块、试题库管理和试卷生成管理。
其中试题库管理是进行题目的添加、存储和删除,是系统运行的基础;成绩查询管理实现了对用户考试信息查询。
登陆界面管理是客户端考生或管理员通过自己的姓名和学号以及密码登陆系统,进入界面时由系统按照出题教师预先设置好的试卷结构从题库中随机抽取适合的题目,形成试卷。
系统选用的开发软件是PHP,后台数据库为MYSQL,采用BS结构的运行模式
关键词
信息管理考试流程PHPMysqlBS结构
Abstract
Alongwiththetechnicalandfastfiercedevelopmentincalculator,theschoolteachingturnsthedevelopmenttoalsoofthemanagement,thiswillbegtheeachlinktheallbalanceddevelopping,educatingschooldevelopmentsfromthebothparties'insoftmanagement,Thatsystemisinthelightofthealleviativeteachertheworksupportsesandincreasestheworkefficiency,excellentchemistrylivingstheprocessoftheexamination,strengthenningtotakeexaminationsthestudent'sbodyidentify,comparingthetraditionalexaminationmodesavemanpowerfinancialpowerwithtimeAlongwiththetechnicalandfastfiercedevelopmentincalculator,theschoolteachingturnsthedevelopmenttoalsoofthemanagement,thiswillbegtheeachlinktheallbalanceddevelopping,educatingschooldevelopmentsfromthebothparties'insoftmanagement,theterraceoftheteaching.Thistextdesignstheexaminationmanagementsystemofthedevelopmentisalsoamongthemimportantanphpect.Thatsystemisinthelightofthealleviativeteachertheworksupportsesandincreasestheworkefficiency,excellentchemistrylivingstheprocessoftheexamination。
Thesystemisdividedintothreegreatestmoldspiece:
Thecustomerregistrationamoldpiecemanageswiththesystemmoldpiece.Thesystemisdividedintothreegreatestmoldspiece:
Thecustomerregistrationamoldpiecemanageswiththesystemmoldpiece.Amongthemthesystemmanagementmoldpieceisafoundationtoproceedtopicincrease,savingwithdelete,isasystemmovement;Thesearchsonmoldpiece.
Keywords:
InformationmanagementTheexaminationmanagesSQLSERVER2002BCconstructionPHP
目录
摘要II
AbstractIII
第一章绪论IV
1.1考试系统应用的背景V
1.2国内外研究的现状V
1.3考试系统应用的意义VI
第二章系统设计相关技术及原理VI
2.1PHP简介VI
2.2MySQL简介VIII
2.3APACHE服务器简介X
第三章需求分析XVI
3.1系统需要解决的主要问题XVI
3.2系统应该具备的基本功能XVI
第四章系统总体设计XVIII
4.1系统结构与系统结构图XVIII
4.2详细设计XIX
4.3用户、管理员权限XXI
4.4网站功能详细设计XXI
第五章系统实现XXII
5.1网站的开发流程XXII
5.2系统功能实现及主要界面XXIII
总结XXVI
统分析与总结XXVI
结束语XXVII
致谢XXVIII
参考文献XXIX
第一章绪论
随着技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了教学,通过计算机实现异地教育和培训。
现在,计算机硬件技术的发展已经达到了相当高的水平。
但是,教学软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到教学当中去,这就给软件设计人员提出了更高的设计要求。
1.1考试系统应用的背景
教学包括很多环节,例如教学系统、答疑系统和考试系统等等。
其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。
在我国,虽然教学已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。
人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发用户的学习兴趣。
1.2国内外研究的现状
在线考试是现阶段研究开发的一个热点。
它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。
一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。
在线考试系统中题目的生成、试卷的提交、成绩的查询等都可以在上自动完成。
只要形成一套成熟的题库就可以实现考试的自动化。
这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。
为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!
目前,应用软件运行的模式主要有二类:
Clientserver模式,BrowserWeb模式。
前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户服务器方式类似,客户端是一个标准的浏览器,服务器端是Apache,而Apache与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护简便。
另外,考试系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。
1.3考试系统应用的意义
基于便利快捷等因素的考虑,用BrowserWeb模式来设计考试系统比较合适,服务器端我们采用MYSQL2数据库系统和PHP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。
利用和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用ActiveServerPage技术,开发基于BS模式多用户在线考试系统这一程序。
它运用方便、操作简单,效率很高(同时,它要求计算机配置也很高,尤其是服务器端)。
现阶段实现了试卷的客观题部分,具有考生管理、多用户同时在线考试、动态随机出题、时间控制、自动判卷,试题录入、修改题库、用户管理、科目管理、管理员管理、分数管理等重要功能,也就是说可以实现真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题、出题和判卷等繁重的工作量。
第二章系统设计相关技术及原理
2.1PHP简介
PHP,一个嵌套的缩写名称,是英文"超级文本预处理语言"(PHP:
HypertextPreprocessor)的缩写。
PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的"嵌入HTML文档的脚本语言",语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。
它可以比CGI或者Perl更快速的执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,成分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户在一次访问这个程序时就不需要重新编译程序了,只须直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。
PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
PHP最强大最显著的特性之一,是它支持很大范围的数据库。
您会发现利用PHP编写数据库支持的网页简单得难以置信。
目前,PHP支持如下数据库:
AdabasDIngresOracle(OCI7andOCI8)
dBaseInterBaseOvrimos
EmpressFrontBasePostgreSQL
FilePro(read-only)mSQLSolid
HyperwaveDirectMS-SQLSybase
IBMDB2MySQLVelocis
InformixODBCUnixdbm
(实际上通过扩展库的应用,php也可以连接access等)
*开放源码--所有的PHP源码都可以得到。
事实上,所有的源码都包含在随书附带的光盘中。
*没有运行费用--PHP是免费的。
*基于服务器端--由于PHP是在Web服务器端运行的,PHP程序可以很大、很复杂而不会降低客户端的运行速度。
*跨平台--虽然我是以win2000操作系统下构建网站的,但PHP程序可以运行在UNIX,Linux,或者Windows等所有主流操作系统下。
*嵌入HTML--因为PHP语言可以嵌入到HTML内部,所以PHP很容易学习。
*简单的语言--和Java和C++不同,PHP语言坚持以基本语言为基础,然而它的功能也强大到足以支持任何类型的Web站点。
*效率高--和其它的解释性语言相比,PHP系统消耗较少的系统资源。
当PHP作为ApacheWeb服务器的一部分时,运行代码不需要调试外部二进制程序,服务器解释脚本不需要承担任何额外负担。
*分析XML--用户可以组建一个可以读取XML信息的PHP版本。
*数据库模块--用户可以使用PHP存取Oracle、Sybase、MSSQL、AdabaseD、MySQL、mSQL、PostgreSQL、dBase、FilePro、Unixdbm、InformixIllustra等类型的数据库,以及任何支持ODBC标准的数据库。
*文件存取--PHP有许多支持文件存取函数。
*文本处理--PHP有许多函数处理字符串,其中包括模式匹配的能力。
*复杂的变量--PHP支持标量、数组、关联数组等变量,这给用户提供了以支持其它的高级数据结构的坚实基础。
*图象处理--用户可以使用PHP动态的创建输出图像、PDF文件甚至Flash动画(使用libswf和Ming)。
*更多其他功能。
2.2MySQL简介
MySQL是一个多用户、多线程的SQL数据库,是一个客户机服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。
SQL(StructuredQueryLanguage结构化查询语言)是目前使用最广的并且是标准的数据库语言。
SQL语言使得存取或更新信息变得十分容易,你可以直接使用SQL从网站上查询信息。
MySQL的快速和灵活性足以满足一个网站的信息管理工作。
数据库与用户端之间的接口程序可以使用CGI进行通信。
新网ChinaDNS使用的是PHP,使用PHP和MySQL这两样东西加在一起,对于开发数据驱动的网站这项工作而言是最佳组合。
PHP是一种用于服务器端执行程序解释的脚本语言。
如果你接触过ASP的话,那么您对于在HTML页面中嵌入代码应该是比较熟悉了。
PHP代码在服务器一端被解释、执行并转变成普通的HTML页面内容,送给浏览器一端。
这种模式使得我们可以用它来完成相当复杂的功能。
MySQL的功能特点如下:
1、可以同时处理几乎不限数量的用户;
3、命令执行速度快,也许是现今最快的;
4、简单有效的用户特权系统。
5、数据类型
字段支持大量数据类型是件好事。
通常的整数、浮点数、字符串和数字均以多种长度表示,并支持变长的BLOB(BinaryLargeOBject)类型。
对?
br>字段由自动增量选项,日期时间字段也能很好的表示。
MySQL与大多数其他数据库系统不同的是提供两个相对不常用的字段类型:
ENUM和SET。
ENUM是一个枚举类型,非常类适于Pascal语言的枚举类型,它允许程序员看到类似于'red、'green'、'blue'的字段值,而MySQL只将这些值存储为一个字节。
SET也是从Pascal借用的,它也是一个枚举类型,但一个单独字段一次可存储多个值,这种存储多个枚举值的能力也许不会给你一些印象(并可能威胁第三范式定义),但正确使用SET和CONTAINS关键字可以省去很多表连接,能获得很好的性能提高。
6、SQL兼容性
MySQL包含一些与SQL标准不同的转变,他们的大多数被设计成是对SQL语言脚本语言的不足的一种补偿。
然而,另一些扩展确实使MySQL与众不同,例如,LINK子句搜索是自动地忽略大小写的。
MySQL也允许用户自定义的SQL函数,换句话说,一个程序员可以编写一个函数然后集成到MySQL中,并且其表现的与任何基本函数如SUM()或AVG()没有什么不同。
函数必须被编译道一个共享库文件中(.so文件),然后用一个LOADFUNCTION命令装载。
它也缺乏一些常用的SQL功能,没有子选择(在查询中的查询)。
视图(View)也没了。
当然大多数子查询可以用简单的连接(join)子句重写,但有时用两个嵌套的查询思考问题比一个大连接容易。
同样,视图仅仅为程序员隐蔽where子句,但这正是程序员们期望的另一种便利。
7、存储过程和触发器
MySQL没有一种存储过程(StoredProcedure)语言,这是对习惯于企业级数据库的程序员的最大限制。
多语句SQL命令必须通过客户方代码来协调,这种情形是借助于相当健全的查询语言和赋予客户端锁定和解锁表的能力,这样才允许的多语句运行。
8、参考完整性(ReferentialIntegrity-RI)
MySQL的主要的缺陷之一是缺乏标准的RI机制;然而,MySQL的创造者也不是对其用户的愿望置若罔闻,并且提供了一些解决办法。
其中之一是支持唯一索引。
Rule限制的缺乏(在给钉字段域上的一种固定的范围限制)通过大量的数据类型来补偿。
不简单地提供检查约束(一个字段相对于同一行的另一个字段的之值的限制)、外部关键字和经常与RI相关的“级联删除”功能。
有趣的是,当不支持这些功能时,SQL分析器容忍这些语句的句法。
这样做目的是易于移植数据库到MySQL中。
这是一个很好的尝试,并且它确实未来支持该功能留下方便之门;然而,那些没有仔细阅读文档的的人可能误以为这些功能实际上是存在的。
9、安全性
自始至终我对MySQL最大的抱怨是其安全系统,它唯一的缺点是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。
通常的SQLGRANTREVOKE语句到最近的版本才被支持,但是至少他们现在有了。
MySQL的编写者广泛地记载了其特定的安全性系统,但是它确实需要一条可能是别无它法的学习过程。
10、备份和恢复、数据导入导出
强制参考一致性的缺乏显著地简化备份和恢复,单靠数据导入导出就可完美复制这一功能。
LOADDATAINFILE命令给了数据导入很大的灵活性。
SELECTINTO命令实现了数据导出的相等功能。
另外,既然MySQL不使用原始的分区,所有的数据库数据能用一个文件系统备份保存。
数据库活动能被记载。
与通常的数据库日志不同(存储记录变化或在记录映像之前之后),MySQL记载实际的SQL语句。
这允许数据库被恢复到失败前的那一点,但是不允许提交(commit)和回卷(rollback)操作。
11、连接性
MySQL客户库是客户服务器结构的C语言库,它意味着一个客户能查询驻留在另一台机器的一个数据库。
然而MySQL真正的强项处于该库中的语言“包装器(wrapper)”,Perl、Pathon和PHP只是一部分。
Apache的Web服务器也有许多模块例如目录存取文件等允许各种各样的Apache配置信息(例如目录存取文件)使用MySQL,应用程序接口简单、一致并且相但完整。
另外、多平台ODBC驱动程序可自由获得。
12、未来
MySQL的开发继续以快速进行着。
事实上,开发步伐对大多数开放源代码是一种挑战。
本文提到的几个抱怨中有很多新功能正在解决,然而,我将不对还没确实存在的特征做评价。
开发者们向我表明了在未来的开发中把增加查询功能和提高查询速度作为最高优先级。
13、总结
Mysql是数据库领域的中间派。
它缺乏一个全功能数据库的大多数主要特征,但是又有比类似Xbase记录存储引擎更多的特征。
它象企业级RDBMS那样需要一个积极的服务者守护程序,但是不能象他们那样消费资源。
查询语言允许复杂的连接(join)查询,但是所有的参考完整必须由程序员强制保证。
MySQL在Linux世界里找到一个位置-提供简洁和速度,同时仍然提供足够的功能使程序员高兴。
数据库程序员将喜欢其查询功能和广泛的客户库,数据库管理员会觉得系统缺乏主要数据库功能,他们会发觉它对简单数据库(在不能保证购买大牌数据库时)是有价值的。
2.3APACHE服务器简介
Apache源自于NCSA(UniversityofIllinois,Urbana-Champaign)所开发的httpd。
在1994年中期,许多Web主管自行发展自己的外加功能及修正码。
一小批的Web主管通过私人电子邮件聚集在一起来实现他们的改变(以“patches”,即补丁的形式出现)。
在1995年2月底,八位核心贡献者成立原始的Apache组织(取自APAtCHE),1995年4月,Apache0.6.2公布。
在1995年5月到7月,一个新的服务器架构被开发出来(程序名为Shambhala),包含了模块结构及API。
这个服务器架构是基于存储池的存储器配置及要调整的预设分支处理模式开发的。
这个开发群体在7月份将此服务器架构转换到新的服务器上,并为Apache0.7.x新增特色,于8月推出了Apache0.8.8。
在一年之内,Apache服务器超过了NCSA的httpd成为Internet上排名第一的服务器。
Apache的强项是极大的市场占有率:
Apache是今天网际网络金字招牌第一号,远远将竞争者抛在后面。
特别是,Apache市场占有率表现出几个使对方望尘莫及的优势:
①起源于HTTP协议——降低了用户加入协议来支援新的应用软件的门槛;
②给UNIXLinux带来生机——Apache走到哪里,UNIXLinux就走到哪里;
③支援厂商的支持,为Apache提供的工具模块持续成长。
特别是IBM宣布将把Apache作为其WebSphere应用服务器的一部分,这一轰动的宣布被商业报纸称为是开放源代码软件的一次突破。
统计显示,最流行的Web服务器是OSSFS。
比如,Apache就是现在排行第一的Web服务器,其市场份额比位于第二位的IIS高出了一倍多。
Netcraft在Web服务器上的统计(.vnd.ms-powerpoint,applicationvnd.ms-excel,applicationmsword,**
Referer:
engineerideal
Accept-Language:
zh-cn
Accept-Encoding:
gzip,deflate
User-Agent:
Mozilla4.0(compatible;MSIE6.0;WindowsNT5.0)
Host:
Connection:
Keep-Alive
从代码中可以看到,在客户端的请求里包含了很多有用的信息,如客户端类型等。
Web服务器会将请求的Web页内容发送返回给客户端。
HTTP1.1说明:
HTTP1.1(超文本链接协议1.1版本)是HTTP协议的最新版本。
HTTP协议是运行在TCPIP协议组上的万维网应用协议。
HTTP1.1提供了比前一版本更快的访问网站速度,同时针对网络资源进行优化,降低了网络流量。
HTTP1.1由互联网工程任务组开发。
现在大部分服务器和网站都支持HTTP1.1协议。
下面是一些HTTP1.1能够加快网页访问速度的原因。
(1)以往的HTTP协议每次访问应用程序时,都会进行创立及撤销链接的步骤。
HTTP1.1在首次访问网站时建立持久链接,将多个请求批量或通过管道发送到输出缓冲区内。
TCP协议允许将多个来自IP层的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 在线 考试 系统 毕业设计