您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 模板/表格 > 网络试题库系统的分析与设计
基于B/S结构的网络试题库系统的分析与设计[摘要]本文介绍了网络试题库的一般结构、开发工具和功能模块,举例介绍了网络试题库的几种开发方法,并介绍了自己设计试题库的方案,对网络试题库的发展方向提出几点看法。[关键词]B/S结构网络试题库AccessDAO一、引言随着计算机的普及和Internet的广泛应用,网络教学也已成为教学的一种发展趋势,试题库系统是辅助教学和信息化建设的重要内容,是公平、公正、合理检验学生真实水平的依据,它可以大大的减轻教师的工作负担,提高工作效率,可以增加考试的科学性与客观性。试题库系统一般由试卷库和试题库两部分组成。使用试题库进行组卷的优点在于:首先,有利于实现教考分离,任课教师需要按照教学大纲的要求,不断改进和完善教学方法,切实提高教学水平;其次,杜绝学生依赖任课教师划分考试范围的惰性学习心理;最后,减轻任课教师组织试卷的工作负担,避免人工组卷过程的主观性和片面性,保证同一教学大纲指导下多班级考试的公平性[1]。标准化考试是当前我国考试改革的一个趋势,在许多高校的许多课程上相继建立了一些小型题库。各类试题库系统正在不断的改进,功能不断地完善,正由局部化向整体化发展,由集中式向分布式发展。二、系统结构在网络环境下,实现考试系统的主要方法有两种:C/S(Client/Server)模式与B/S(Browser/Server)模式[2]。C/S模式是典型的两层体系结构,它由客户机和服务器组成,服务器上运行着系统所需的数据库等系统软件,客户机则运行相应的客户端应用软件。B/S模式是目前信息系统建设的主要发展方向,也可称为B/W/S(Browser/Web/Server)模式。它属于三层体系结构,有浏览器、Web服务器和数据库服务器组成。B/S结构具有客户机简单,便于系统维护,界面统一,数据安全性高等优点[3],故现在的网络试题库系统多为B/S结构。2.1B/S结构概述第1层是客户层,为不同用户设计了相应的接口,学生可进行网上测试,管理员可以管理试题。用户通过浏览器向网络某一Web服务器提出服务请求,Web服务器对用户验证身份后把所需的主页传送给客户端。第2层是应用服务层,负责试题的生成、分发和接收。当Web服务器接到用户请求时,首先要执行相应的扩展应用程序与数据库连接,通过SQL方式向数据库发出数据处理申请,数据库将处理结果交给Web服务器,再由其送到客户端。1第3层是数据层,实现用户管理和试题管理。数据库服务器接受来自Web服务器的请求,实现对数据库的操作和存储,并将处理结果返回Web服务器[4]。2.2B/S结构工作原理[2]B/S模式的工作原理是将各类数据组织成数据库的形式,存储在后台数据库服务器,由在后台数据库服务器上运行的数据库系统对其进行安全存储、管理和检索等操作。Web服务器在前台运行,由安装在Web服务器上的应用程序执行对后台数据库的操作(如查询数据库)和响应浏览器的请求。当用户在客户端通过客户端浏览器向Web服务器发出请求时,Web服务器运行一个应用程序接收用户服务请求,执行对数据库的操作并将结果返回客户端,客户端的浏览器得到数据后将结果显示给用户。三、开发工具网络试题库的开发工具有很多种,网络编程语言可以采用ASP、JaveScript、VBscript、VB、PHP、ColdFusion、CGI等[5],数据库可以采用Oracle、SQLServer、mySQL、Access等,数据库访问接口可以采用ADO或DAO。3.1网络编程语言ASP[6]是ActiveServerPage的缩写,意为“动态服务器页面”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。VBScript[7]网站3是VisualBasicScript的简称,即VisualBasic脚本语言,有时也被缩写为VBS。是asp动态网页默认的编程语言,配合asp内建对象和ADO对象,目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序,用于调试简单的VB语句非常方便。PHP[8],一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:HypertextPreprocessor)的缩写。PHP是一种HTML内嵌式的语言,其独特的语法混合了C、Java、Perl以及PHP自创新的语法,它可以比CGI或者Perl更快速的执行动态网页。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。3.2数据库2MicrosoftSQLServer[9],它具有功能强大、使用方便、可伸缩性强与相关软件高度集成等特点,目前已经成为中、小型企业较为常用的一个数据库管理系统。并且由于目前Windows操作系统的用户群比较大,选择SQLServer2000在兼容性方面将会取得一些优势。另外,SQLServer2000除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。MicrosoftOfficeAccess[10]是由微软发布的关联式数据库管理系统,它结合了MicrosoftJetDatabaseEngine和图形用户界面两项特点,是MicrosoftOffice的成员之一。能够存取Access/Jet、MicrosoftSQLServer、Oracle(甲骨文软件公司),或者任何ODBC兼容数据库内的资料。它比较容易掌握,而且占用空间较小,适合创建小型的数据库。3.3数据访问接口DAO[11](数据访问对象)是一种应用程序编程接口(API),存在于微软的VisualBasic中,它允许程序员请求对微软的Access数据库的访问。DAO是微软的第一个面向对象的数据库接口。DAO对象封闭了Access的Jet函数。通过Jet函数,它还可以访问其他的结构化查询语言(SQL)数据库。ADO[12]的全称是ActiveXDataObjects,是一组优化的访问数据库的专用对象集,其主要优点是易于使用、高速度、低内存支出和占用磁盘空间较少。ADO主要包括Connection,Recordset和Commnd三个对象,其功能分别如下:(1)Connection对象:负责打开或连接数据库文件;(2)Recordset对象:存取数据库的内容;(3)Command对象:对数据库发出操纵指令。四、功能模块一般试题库的功能包括数据库库设计、登陆模块、题库管理模块、试卷生成模块、在线测试模块、考试信息反馈模块。4.1数据库设计数据库中应包含各类试题表、学生信息表、科目选择表、试卷表、成绩表。试题表中应包含试题的编号、题型、知识点、难度系数、分值;学生信息表中应包含考生的姓名、性别、专业、班级、学号、密码;科目选择表包含考试的科目,以供考生选择;试卷表中包含试卷ID、科目ID、试卷试题ID、试题类型、试题内容、参考答案;成绩表中包含考生答题的情况和分值,以便考生进行成绩查询[13]。4.1.1试题设计原则[14](1)目的性原则:将全部试题作为一个整体,应该符合考试的目的要求,即通过解答或完成这3些题目,应该能够测出预定需要测定的知识和能力水平。试题内容、形式、难度等均应服从于考试的目的。(2)科学性原则:试题表述要科学准确。客观性试题的答案应该确切唯一,研究型、讨论型题目研讨方向应该清晰,即学生可以使用不同的方法,但要解决的应该是同一个问题;非探讨性问题所给条件要做到既不多余也不欠缺。(3)考试与教学要求相一致原则:考核内容及试题难度应该与教学大纲要求为准,教学的重点和难点也是考试的重点。考题设计的形式和难度要求可以在教学大纲范围之内根据学生的学习情况稍微变动。(4)知识与能力并重原则:不仅要考核学生对知识的掌握程度,更应该考核学生对所学知识的理解程度和应用能力。在试题设计时不能忽略能力的测试,否则无法有效实现教学目标。4.1.2试题设计方法[14]试题库中包含单项选择题、多项选择题、填空题、判断题、简答题、算法分析题等六种题型。在试题设计之前先根据教学目标和教学大纲以及考试目的,设计不同难度要求的试题,供以后抽题组卷时选用。(1)选择题的编写应注意:每一选择题的选择项数应保持一致,单选题以4项,多选题可设4项;选择支的位置安排要具有逻辑性,正确支的位置要具有随机性和相对均衡性;正确支与干扰支要具有相似性,干扰支与题干的联系要与正确支与题干的联系同样密切,不能生搬硬凑,人为臆造。(2)填空题的编写应注意:填充的内容应该是关键字词,并要求与上下文有密切联系;一道填空题中不宜有过多、过长的空白,而且空白处所能填充的内容应该是唯一的;如果填充的内容是计算的结果,当为概念、法则等常规运算时,则计算不宜复杂。若是根据某些性质进行计算,则所用性质应该是重要的或简单的,不宜过分要求解题技巧,不能将综合题变成填空题。(3)判断题的编写应注意:每个题面最好只包含一个重要概念,尽量避免两个或多个概念同时出现;试题措辞必须含义清晰,语句简练,避免用较长的复合语句命题;尽量不用否定式语句,尤其不要用双重否定语句故意制造难点;不要用“可能”、“有时”、“通常”等“特加限定词”。(4)算法题的编写人们比较熟悉,这里只强调以下三点:为考核学生对概念、法则的理解而编写的计算题,主要是考查学生对方法而不是对技巧的掌握,因此计算量不要过大,数字不要复杂;要注意一题多解,如果一个题目有多种解法,且几种解法的难度差异较大,则可注明要求学生使用的解题方法,以避免学生回避所要考核的知识点;尽量少出为计算而计算的题目,要把计算和实际应用结合起来。4.2登陆模块[15]4用户登陆时要进行账号和密码的验证,如果账号或密码出现错误,系统会弹出提示信息。用户登陆时,系统会根据用户的账号信息,登陆到不同界面,分配不同的权限。4.3题库管理模块管理员向题库中添加题目,也可以删除题目和对考生信息进行管理。管理员应对试题的类型、知识点、难度系数给予注明,以便考生平时进行自测时可以根据自己的要求合理选择试题。4.4试卷生成模块试卷生成有手动组卷和自动组卷两种方式。手动组卷是管理员从试题库中手动选择试题组成试卷,而自动组卷是系统根据用户的条件自动生成试卷,现在的试题库多采用自动组卷的方式[16-17]。常用的自动成卷的选题算法主要有三种:一般的选题算法、逻辑型数组的选题算法和哈希(HASH)函数算法[18]。设计好组卷方案后,教师可以进行自动组卷操作,一般先编制组卷方案,然后根据组卷方案进行组卷。教师自动组卷时首先输入组卷条件,包括试题类型、知识点、分值,让后让系统自动生成试卷。抽题完毕,教师根据整份试卷中每道试题的分数值和难度系数,计算这份试卷的总分和难度系数,并存入试卷信息表中。最后,将组完的试卷以Web页的方式显示出来。若试卷不满意,可将其删除后重新进行组卷[19]。4.5在线测试模块考生在平时可以进行在线测试,测试时可以根据自己的需要自动选择试题,选题后进行自测,测试后系统可以对客观题进行评分。计时功能是本模块的重要功能,它的实现使考试成为可能,是保证考试顺利进行的前提条件。它采用倒计时的方式,由系统默认的考试总时间开始,以一秒为单位递减,直至交卷或考试时间结束。交卷功能又分为提前交卷和强行交卷。当用户按下“交卷”按钮时,系统保存试卷的相关信息以及学生的学号、姓名、班级等。然后显示“试卷已保存,考试结束”字样;当计时器显示为零时,“进行强行交卷”[20]。4.6考试信息反馈模块考试结束后,系统会对客观题自动打分,并将结果反馈给用户。结果应包含考生的答题情况,每题所得分和总分。教师可以根据考生的答题情况了解考生对知识的掌握情况,为
本文标题:网络试题库系统的分析与设计
链接地址:https://www.777doc.com/doc-2143301 .html