《在线考试系统的设计与开发.doc》由会员分享,可在线阅读,更多相关《在线考试系统的设计与开发.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除在线考试系统的设计与开发目 次1 引言12 系统设计22.1 需求分析22.1.1 系统需求分析 22.1.2 数据库需求分析32.2 设计工具简介32.2.1 asp 技术32.2.2 access 软件介绍 42.3 概念结构设计 42.4 数据库逻辑设计52.5 系统结构 63 系统主要功能模块73.1 系统功能模块划分73.1.1 前台系统功能模块划分73.1.2 后台功能模块划分83.2 用户注册模块 83.2.1 流程分析83.3 用户登录模块93.3.1 流程分析93.4 在线测试模块93.4.1 流程分析93.5 留言板模块 10
2、3.5.1 流程分析103.6 在线交流模块113.6.1 流程分析113.7 题库管理模块123.7.1 题库管理功能模块图123.8 判断题管理模块页面流程133.9 试卷管理模块133.9.1卷管理功能模块图133.10 学生信息管理模块143.10.1 学生信息管理模块图143.11 成绩管理模块143.11.1 成绩管理模块图144 系统测试与发布144.1 前台系统功能模块的测试144.1.1 用户注册模块的测试144.1.2 发用户登录模块的测试154.1.3 在线考试模块的测试154.2 后台功能模块的测试174.2.1 管理员登录174.2.2 判断题管理174.2.3 试卷
3、管理194.2.4 成绩管理194.2.5 学生管理204.2.6 系统管理204.3 在线考试系统的发布21结论 22致谢 23参考文献 24附录 25【精品文档】第 15 页1 引言随着Internet的迅速发展和广泛普及,网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。远程教育成为现代教育技术未来发展的重要方向之一,考试测试作为远程教育的一个子系统也成为一个重要的研究领域。Internet技术的发展使得考试的技术手段和载体发生了革命性的变化,Internet的开放性、分布性的特点和基于Internet的巨大的计算能力使得考试突破了时间和空
4、间的限制。与传统考试模式相比,在线考试具有无可比拟的优越性,它可以将传统考试过程中的试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量的时日、人力、物力与财力,而且还可以大幅度增加考试成绩的客观性和公正性。传统的考试方式一般要经过人工出卷、考生考试、人工阅卷等过程。对于一些课程来说,随着考生数量的增加,教师出卷阅卷的工作量将会越来越大,并且其工作十分烦琐和非常容易出错。在线考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化系统的建设,目的是充分利用学校现有的计算机软、硬件和网络资源实现无纸化考试
5、以避免传统手工考试的不足。与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。通过Internet来实现网上考试,是现代教育技术的一个具体实现,具有很重要的现实意义。可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观性、公证性,自动化组卷、阅卷可以减轻教师的工作强度。传统考试要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。在线考试系统是传统考场的
6、延伸,它可以利用网络的无限广阔空间,随时随地的对学生进行考试,加上Web数据库技术的利用,大大简化了传统考试的过程。本文以Internet为平台,研究了基于Web考试系统的设计与开发,包括系统需求分析和系统功能设计以及数据库设计。重点阐述了用户注册模块、用户登录模块、在线考试模块、题库管理模块、试卷管理模块、学生管理模块、成绩管理模块的设计,以及留言板和聊天室的简单设计。2 系统设计2.1 需求分析2.1.1 系统需求分析本系统的用户可分为管理员和普通用户两类。本系统共分成两个界面:一个界面用于管理员登录,主要负责进行基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于普通用户登录,主
7、要负责在线考试、查询以往考试成绩留言和在线交流等。从总体上考虑,系统应该实现下列功能:对管理员来说,包括试卷管理、题库管理、成绩管理。1、试卷管理:管理员可以从课程,各种题型的数量等方面对某份试卷提出一定的要求生成试卷规则,。同时,管理员还可以对库中已有的试卷进行修改和删除,添加新试卷等。2、题库管理:管理员可以对题库中的试题进行三种基本操作:添加新的考题、删除旧有考题、修改原有考题,其中试题类型包括判断题、填空题、选择题;对于每种类型的试题,教师可以设置题干、答案等属性。3、成绩管理:管理员可以查看考生的考试成绩,并针对不同的课程进行成绩统计,包括考试人数、最高分、最低分、平均分以及各分数段
8、得分人数等。4、学生管理:管理员可以对用户的资料进行查询、删除。对普通用户来说,包括在线考试、查询以往考试成绩、留言和在线交流等。1、在线考试:学生可以任选时间进行在线测试,考试结束后,系统会根据已有的标准答案进行在线判卷,考生可以立刻知道考试成绩。2、查询以往考试成绩:学生可以在线查询以前参加过的每门课程的考试相关信息。3、留言板:学生提交对系统的留言信息。4、聊天室:学生相互交流学习心得和研究疑难问题。2.1.2 数据库需求分析针对一般考试系统的需求,设计如下所示的数据项和数据结构:l 管理员信息,包括的数据项有:管理员姓名、密码等。l 普通用户信息,包括的数据项有:用户名、密码、性别、班
9、号、学号等。l 试卷信息,包括的数据项有:填空题分值、填空题数量、判断题分值、判断题数量、选择题分值、选择题数量等。l 判断题信息,包括的数据项有:判断题编号、题干、正确答案等。l 填空题信息,包括的数据项有:填空题编号、题干、正确答案等。l 选择题信息,包括的数据项有:单选题编号、题干、正确答案、备选项(A、B、C、D)等。l 成绩信息,包括的数据项有:考试科目、考生学号、成绩、考试时间、是否补考、补考成绩等。本系统应该建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、试题信息、试卷信息、考试信息等)。本系统还应该包括学生和教师的账号、后台数据库的安全机制、考试
10、过程的控制机制。2.2 设计工具简介2.2.1 ASP技术由于系统的操作界面都是Web页面形式,而且需要对各种用户的具体请求进行动态处理并返回结果,所以采用动态网页技术。目前动态网页技术有很多,本设计采用ASP技术。 Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写产生动态网页的HTML程序代码。因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户
11、浏览器并显示出网页。ASP内含于IIS3.0和4.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。有了ASP就不必担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。由ASP(Active Server Pages)是微软公司开发的基于Windows NT Server和IIS(InternetInformation Server)的服务器端脚本环境,它具
12、有如下特点: 无需编译:ASP脚本集成于HTML当中,容易生成,无需编译或连接即可直接解释执行 易于生成:使用常规文本编辑器(如Windows下的记事本),即可进行*ASP页面设计还可以使用可视化的集成编辑环境Visual InterDev 独立于浏览器:ASP脚本在服务器端解释执行,用户端只要使用可解释常规HTML码的浏览器,即可浏览ASP所设计的主页 面向对象:在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制ActiveX Server Component(ActiveX服务器组件)来扩充功能 与任何Active Xscript语言兼容:除了可使用VBscript和Ja
13、vascript语言进行设计外,还可通过Plugin的方式,使用由第三方所提供的其它script语言 源程序代码不会泄漏:ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,这样可保证编写出来的程序代码不会被他人盗取另外,ASP支持多用户、多线程,它还具有记忆能力,拥有强有力的管理机制,可以实现各请求之间的信息共享,提高服务器的处理效率,同时,ASP在安全性方面也作了细致的考虑,包括设定虚拟目录访问权限、用户身份监测等措施2.2.2 access软件介绍本系统涉及到许多数据的处理,这就需要有一个强大的后台数据库管理系统支持。本系统采用的是微软公司的Microso
14、ft Access。采用它的原因如下:第一、只要安装了PWS或IIS4肯定有ACCESS的ODBC驱动,即你的系统肯定支持ACCESS数据库的存取。第二、ACCESS支持的SQL指令非常齐全。第三、ACCESS ODBC驱动程序的效率非常高。2.3概念结构设计根据前面所作的需求分析本系统的实体及其属性如下:学生 (用户名1,密码1,性别,学号,班号)管理员(密码2,用户名2)成绩 (用户名1,成绩)试卷 (题型数量,题型分值)留言板聊天室图2-1 系统E-R图题型分值题型分值OL11PM1用户名1密码21N管理员管理用户名1密码1学生性别学号班号用户名2学生 查询删除班号密码1性别成绩 查 询
15、管理试卷 编辑删除试 题 参加查询使用使用考试 成绩留言板 聊天室 成绩题型数量用户名1题型分值用户名1成绩学号2.4 数据库逻辑设计 本系统数据库名称为test_admin。根据需求分析设计了如图2-2所示的数据库结构。在名为data的数据库里包含用户数据对象、管理员数据对象和系统数据对象两大部分,其中系统数据对象由系统自动产生,用户数据对象和管理员数据对象是由设计人员根据需要设计,具体的数据表结构参见附录A。Test_adminadmin_表Type3表Type2表Type1表student表test表report表图2-2 数据库结构图用户数据对象管理员数据对象系统数据对象2.5 系统结
16、构本系统分为后台数据库系统和前台网站系统两部分。后台数据库test_data主要包括7个数据表。l 存储系统管理员信息的admin。l 存储注册用户信息的student。l 存储考生成绩信息的report。l 存储判断题信息的type1l 存储填空题信息的type3。l 存储选择题信息的type2l 存储试卷类型 的test前台ASP网站系统结构包括:l Admin子目录下存放与管理员界面相关的asp文件。l Data子目录下存放数据文件:test_admin.mdfl 主目录下存放与考生界面相关的文件。l CSS子目录下存放层叠样式表文件,规范网页的总体风格3 系统主要功能模块3.1 系统功
17、能模块划分3.1.1 前台系统功能模块划分(图3-1)前台系统图3-1 前台功能模块图3.1.2 后台功能模块划分(图3-2)后台系统图3-2 后台系统功能模块图3.2 用户注册模块.2.1 流程分析此模块是添加新的用户,填写学生个人基本信息,包括姓名、性别、学号、班级,设定个人的原始密码,并添加到学生用户信息库中。YesNoNoYes录入用户信息接收信息信息为空?提示用户已存在注册成功用户已存在吗图3-3 用户登录模块执行流程提示信息不能为空3.3 用户登录模块3.3.1 流程分析该模块包括login.asp文件。如果用户要使用为注册用户提供的功能,那么在使用之前必须登录。用户只要输入用户名
18、、密码就可以了。若用户输入的以上两项与数据库中保存的相符,则表明用户登录成功,可以开放全部前台子系统;如果不符,则登录失败。模块执行流程如图4-3所示。其中管理员、用户登录模块执行流程类似,文件为:INDEX.ASP . 具体的数据表结构和原代码参见附录B。YesYesNoNoNo按照用户名查询NoYes提示密码错误登录信息录入接收登录信息用户名、密码为空?提示用户不存在已 登 录用户已存在吗口令正确吗?图3-4 用户登录模块执行流程提示用户名或密码不能为空3.4 在线测试模块在此模块中包含查询成绩、考试、自动判卷等模块。进入在线考试系统。在线测试是有时间限定的,学生要先登入自己的用户,用户可
19、以查询成绩,再进行在线考试。一旦进入在线考试,系统就自动开始计时。时间到会自动交卷,然后进入判卷系统。考试过程中学生可以不按题目顺序答题。3.4.1 流程分析返回NoNoYesNo用户登录进入考场自动交卷时间结束?考试退出考场自动阅卷显示成绩交卷?交卷?图3-5 在线考试流程图查询成绩3.5 留言板模块学生提出使用系统后对我们的工作有许多良好的建议和意见,或者有一些疑难问题需要大家共同探讨的话,可以在此提出,以便更加完善系统。3.5.1 流程分析图3-6 留言板模块执行流程YesNoNoYes输入用户信息接收信息输入框为空?提示用户已存在提交用户已存在吗输入框不能为空查看留言3.6 在线交流模
20、块学生使用聊天室相互交流学习心得和研究疑难问题。3.6.1 流程分析重新输入图3-7 在线交流模块执行流程YesNoNoYes输入用户信息接收信息输入姓名为空?提示用户已存在登录用户已存在吗输入姓名不能为空聊天交流3.7 题库管理模块3.7.1 题库管理功能模块图题库管理包括判断题管理、填空题管理、选择题管理。管理员可以通过题库管理对各种类型的试题进行添加、删除、修改以及查询。题库管理功能模块图如图4-2所示,由于各种类型试题的管理功能均类似,这里仅以判断题管理为例进行介绍。判断题管理模块包括的操作有:添加判断题、删除判断题、修改判断题和查找判断题,有关判断题管理模块操作的主要源代码参见附录C
21、。题库管理填空题管理多选题管理判断题管理图3-8 题库管理功能模块图3.8 判断题管理模块页面流程(图3-9)返回图3-9 判断题管理页面流程type_1.asp type_1.aspType-1-dell.aspPtype1.asp查找判断题其他功能模块均与题库管理模块类似,此处不再论述。3.9 试卷管理模块试卷管理模块主要是对试卷进行添加、删除、修改。3.9.1 试卷管理功能模块图试 卷 管 理添 加 试 卷删 除 试 卷修 改 试 卷图3-10 试卷管理功能模块图3.10 学生信息管理模块学生管理模块主要是对学生进行查询、删除,可以对学生的成绩情况进行查看。3.10.1 学生信息管理模块
22、图学 生 管 理查看成绩查询基本信息删除记录图3-11学生信息管理模块3.11 成绩管理模块学生成绩管理子模块通过对学生成绩的全面分析,总结学生对所学知识点的掌握程度和知识点被学生理解并掌握的程度。本模块共分为浏览学生成绩、查询学生成绩、重修与否以及重修成绩查询四个功能模块。3.11.1 成绩管理模块图成 绩 管 理浏览学生成绩重修成绩查询重修与否查询学生成绩图3-12成绩管理模块图4 系统测试与发布系统在投入使用之前必须进行严格的测试,测试的内容包括各个模块的功能测试、性能测试、客户端测试等。4.1 前台系统功能模块的测试4.1.1 用户注册模块的测试进入系统后,若不是已有用户系统会提示先注
23、册。进入用户注册模块如下若输入为空或已注册的用户名系统会提示重新输入。4.1.2 发用户登录模块的测试注册成功后,系统会自动进入登录界面:输入信息不正确,系统会提示重新输入。当输入信息正确后,会自动进入考试模块。4.1.3 在线考试模块的测试此模块中可以查询考试成绩、进行考试和在线判卷。点击查询你以往考试成绩可查询考试成绩。点击返回考场可退出,点击进入考试可以开始考试。交卷后即进入在线判卷。结束后可退出考场。4.2 后台功能模块的测试4.2.1 管理员登录输入信息正确后进入后台管理系统点击屏幕左侧的按钮即可进行各项信息管理4.2.2 判断题管理分别点击编辑、删除、添加新题可进入相应模块选择题和
24、填空题与判断提类似,在此不在叙述。4.2.3 试卷管理可以增加、修改试卷。4.2.4 成绩管理可以查看、查询学生成绩。4.2.5 学生管理可以查看、删除学生信息。4.2.6 系统管理可以修改管理员信息。4.3 在线考试系统的发布系统在经过试测之后,进行了一定的发布和应用。系统发布后,学生能够通过网站方便地注册登录进行在线测考试,管理者能够通过网站方便地对学生和题库进行后台管理。系统发布后我的同学给我提出了很多建议,这是一种比较新鲜的、灵活的考试方式,该系统能够及时对学生的学习情况进行测试,对学习有一定的帮助。本人所做的在线考试系统的内容还不是特别丰富。希望大家积极参加到这项工作中来,共同促进在
25、线考试系统系统的发展。结论一个完备的在线考试系统可以使用户在学习过后及时检验自己的学习效果,以发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,作者进行了一次在线考试系统的探索。并且在本文中详细论述了在线考试系统的设计与实现,该系统基本实现了需求分析中的功能要求,其中考生信息主要由数据库直接输入,考生成功登录后进入考生界面,考生界面主要由考试、
26、成绩查询、留言版以及聊天室考生姓名核对正确后进入考场,关键实现了考生在进入考场后由系统出题、自动组卷后进入考试页面,考试计时,考试时间到,系统强制考生退出,及考完后对考试题的自动评分、存档。管理员进入管理员界面,管理员界面主要由学生信息管理、题库管理、试卷管理、成绩管理以及查询等模块组成。由于时间和技术水平的缘故,本系统还存在着许多方面的工作尚未完善。系统对操作人员录入的错误数据和数据本身的错误所造成数据的不完整性,系统的约束力较弱,在系统的更进一步的实现阶段,应加强数据的完整性约束提高系统数据的正确性和相容性,以及系统的容错性,加强对用户输入端的数据进行检验。另外,本系统只提供了一些基本的查
27、询与删除、修改功能。这些功能还不能完全满足大家的需求。为了揭求教学过程的全貌,还需要进一步地引入新的测量指标,并详细阐述它在教育中所代表的含义,如知识点的掌握度、频数分布图等等,为了给没有教育测量背景的教师和学生参考,还将制作测量指标的应用案例,说明如何在实际教学过程中应用这些指标。致谢在论文写作期间,导师杨威教授给予我极大的帮助,他对我的严格要求使得我的论文有了一定的成果;在生活和学习上,我也得到了老师的关心和照顾,不仅如此老师还传授了很多关于考试系统设计方面的经验,使我少走了很多弯路;杨威教授的高瞻远瞩、博学多闻和严谨的治学态度更令我钦佩不已。谨向杨威教授致以真诚的谢意!在今后的人生道路上
28、,我一定谨遵恩师的教诲,发挥自己的潜能。同时,同学们的热心帮助也使我获益菲浅,没有他们我不会取得如此大的进步,在此一并感谢!参考文献1 王庆华.易学易用ASP3.0.京邮电大学出版社,2000.8 2 李瑞旭.ASP实例教程.中国电力出版社, 2000.8 3 许进华. 程序设计教程-ASP.苏州大学出版社,2005. 1 4 周晓玉,步向荣.ACCESS实例教程.人民邮电出版社,2004.115 刘小云.数据库技术与ACCESS应用.科学出版杜,2004.96 赛奎村.ASP信息系统开发实例精选.机械工业出版社,20057 求是科技.信息系统开发实例导航.机械工业出版社,2005.78 宣晓
29、平.ASP数据库系统统开发实例导航M.机械工业出版社,2003.19 孟军.精通ASP.NET网络编成.人民邮电出版社,200210 杨帆.ASP.NET技术与应用.高等教育出版社,200411 廖彬杉.ASP动态网站开发教程.清华大学出版社,2003.7附录A用户数据表结构(1)管理员表:admin_数据表结构如表3-1所示 表 3-1 admin_info 数据表结构字段名字段类型类型说明字段含义idint整型ID,自动编号帐号varchar字符型用户名密码varchar字符型口令(2用户表:student结构如表3-3所示 表 3-3 stu_info 数据表结构字段名字段类型类型说明字
30、段含义idint整型ID,自动编号姓名varchar字符型学号密码varchar字符型姓名性别varchar字符型性别学号varchar字符型班级班号varchar字符型IP地址传呼建期datetime日期时间型注册日期(4)试卷规则表:test表3-5所示 表 3-5 paper_info 数据表结构字段名字段类型类型说明字段含义idint整型ID,自动编号判断题数varchar字符型填空题分值判断题每题分数varchar字符型填空题数量选择题数varchar字符型判断题分值选择题每题分数varchar字符型判断题数量填空题数varchar字符型单选题分值填空题每题分数varchar字符型单
31、选题数量设置日期varchar字符型多选题分值考试时间varchar字符型多选题数量(6)成绩表:report 数据表结构如表3-6所示 表 3-6 report 数据表结构字段名字段类型类型说明字段含义idint整型ID,自动编号subject_idvarchar字符型考试科目stu_idvarchar字符型考生学号scorevarchar字符型成绩testtimedatetime日期时间型考试时间是否补考varchar字符型补考成绩varchar字符型补考日期datetime日期时间型endtimedatetime日期时间型结束时间(7)判断题表:type1数据表结构如表3-7所示 表 3
32、-7 tk_pd 数据表结构字段名字段类型类型说明字段含义idint整型ID,自动编号题干varchar字符型题干答案varchar字符型正确答案statusvarchar字符型状态标志:1-可用,0-禁用(8)填空题表:type2 数据表结构如表3-8所示 表 3-8 tk_tk 数据表结构字段名字段类型类型说明字段含义idint整型ID,自动编号idvarchar字符型题干题干varchar字符型答案,多个答案之间用”;”隔开答案varchar字符型课程名称statusvarchar字符型状态标志:1-可用,0-禁用(9)单选题表:tk_single 数据表结构如表3-9所示 表 3-9
33、tk_single 数据表结构字段名字段类型类型说明字段含义idint整型ID,自动编号题干varchar字符型题干答案varchar字符型正确答案选项1varchar字符型课程名称选项2varchar字符型难度系数:1-3选项3datetime日期时间型添加日期选项4varchar字符型解析附录B用户登录模块原代码login. asp文件:按照下述内容设计login. asp文件。图4-1 用户登录模块执行流程表单名:form1。表单执行程序:login. asp。表单数据传输方法:post。表单的要素如表4-1所示。表4-1 user_login.aspx表单设计表单要素说明表单要素名称表
34、单要素性质用户名姓名文本框密码密码文本框(密码域)提交按钮Submit2按钮(类型为submit)重置按钮Reset2按钮(类型为reset)设计的部分代码如下:function check()if (document.form1.student.value=)alert(请输入用户名);document.form1.student.focus();return false;if (document.form1.pwd.value=)alert(请输入用户密码);document.form1.pwd.focus();return false;document.form1.ctype.value
35、=add;document.form1.submit();session.timeout=125if trim(request(ctype)=add thensession(student)=session(classes)=session(id)=session(number)=session(sex)=sql=select * from student where 姓名=&trim(request(student)& and 密码=&trim(request(pwd)&set rs=conn.execute(sql)if rs.eof thenalert(无此学员!请先注册);%elsesession(student)=rs(姓名)session(classes)=rs(班号)session(id)=rs(id)session(number)=rs(学号)session(sex)=rs(性别)session(timen)=nowvar now=new Date()window.navigate(index.asp?time=+now.getTime();网上考试系统.style8 font-size: 13px.style9 font-size: x-large;font-family: 华文彩云;colo