自动组卷系统
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
1、概述
1.1国内外题库的发展及现状
考试在我国古代就已经有了很大的发展,早在1300年以前就有了科举制度。但这种考试不规范、不严密,不能客观、准确地评估一个人的能力水平。第二次世界大战结束后,考试在社会生活中的地位进一步提高, 资格证书考试也就应运而生。这种考试次数频繁,命题工作量大,并且对考试的测量学特性要求更加严格,不少考生要求结果相互可比,因此,建立高质量、大容量的现代化题库成为必要。目前,经济发达国家已经建立了完善的考试专业机构。各机构也都根据自己所承担的职能建立起了大型题库。
从我国恢复高考制度以后,随着高考标准化的实施,尤其是微型计算机的快速发展,这些都为题库建设提供了基础条件。80年代中期以来,出现了多所学校或行政机构联合开发试题库的局面,同时,也出现了许多其它学科的试题库。90年代前后,政府部门在全国范围内有计划、有组织、系统地开展CAI教学与国家试题库的建设。
1.2本研究的目的和意义
传统的考试出题总是教师考前集中出题、集中组卷,这样很难保证试卷的质量,进而不能准确反映学生的学习效果。为促进教学手段的现代化,提高教学质量,减轻教师在出题、组卷和成绩分析中的工作量,帮助教师方便、快速、准确地分析、评价学生的学习成绩,本研究在VB编程环境下开发了一套能实现试题库管理和成绩分析的软件。
本研究将试题管理、试卷生成和考试分析集为一体,不仅能帮助教师适时编制各类考试题目、生成标准试卷,还能对学生成绩录入、保存、分析并生成考试总结。本研究大大减轻了教师的工作量,有效地提高了整个考试过程的效率,对学校推动教学改革、提高教学质量起着很大的促进作用。
2系统总体结构设计
2.1系统结构框图与功能
图2.1 系统结构框图
系统的总体结构框图如图2.1所示,系统的具体功能如下:
● 试题录入功能 能将每道题的全部信息(包括每道题的题型、难度系数、分值等)录入到试题库中,而且若试题或答案中含有图形或公式,可以进行相应的录入。
● 题库管理功能 对题库中的试题与答案可进行整体浏览,或根据用户选择的具体查询条件进行相应的查询,也可以对试题库中的试题进行修改、删除等维护操作。
● 自动组卷功能 根据用户指定的试题难度、试题类型从试题库中随机抽取试题组成一套试卷,答案亦随机生成。
● 试卷浏览与修改功能 可对当前试卷进行整体浏览,并对不满意的试题进行修改和删除。 [资料来源:http://THINK58.com]
● 试卷输出功能 可通过调用Word将当前生成的试卷模板进行编辑排版,从而生成一套正式的试卷,并可将其打印输出。
● 考试分析功能 可实现成绩库导入、成绩统计与分析、试卷分析等功能。
● 用户管理功能 为不同级别的用户设定密码,登录后方可实现对应的操作。
2.2本系统的数据库结构设计
本试题库系统数据库[4]共分为两个数据表,一个用来存放各种题型的试题,另一个用来存放试卷考题的试卷表。
表2.1 试题数据表
字段名 类型 意义
DM(试题代码) Integer 每道题的唯一标识
NR(试题内容) Memo 存放试题图文混和信息
NDXS(难度系数) Text 存放每道题的难度信息
FZ(建议分值) Text 存放每道题的分值信息
DAAN(答案) Memo 存放试题答案信息
表2.1介绍了试题数据表的具体结构,因为本试题库系统的试题数据表中存储的试题中往往带有图形,在设计数据表结构时就需要一个能存放图文混和信息的字段,我们选用了Memo类型[5]字段来存放试题内容和试题答案信息。
think58
表2.2 试卷表
字段名
类型
STDM(试题代码) Text
STNR(试题内容) Memo
TX(题型) Text
FZ(分值) Integer
表2.2介绍了试卷表的具体结构,本部分主要包括试题代码、试题内容、题型和分值四项内容,对于试题代码和题型都是文字信息,所以选用Text类型;试题内容中往往带有图形,选用Memo类型;分值都是数字,所以选用Integer类型。
3试题录入系统的设计
3.1试题录入功能的实现
3.1.1纯文本信息的输入
在试题数据表中,只有试题内容与试题答案包含图形信息,其余字段存的都是纯文本信息,对这些文本信息(包括每道题的难度系数、分值、知识点)的输入,采用了组合框控件,
3.1.2图文混和信息的输入
为了输入图文混和信息,我们使用RichText控件,该控件不仅允许输入和编辑文本,同时还提供了标准的TextBox内部控件(文本框控件,可用来输入纯文本信息)未具有的、更高级的指定格式的许多功能。
3.1.3公式信息的输入
为了实现公式信息的输入,我们同样使用RichText控件,公式信息的输入和图文混和信息的输入大体相同,但是公式信息的输入需要用到公式编辑器。
3.2题库管理系统的设计
●试题修改的实现 在修改试题的过程中,为避免误操作使不应改动的试题发生改动,在用户单击确定按钮后,增加了提示对话框。只有当用户在提示对话框里单击了“是”按钮,确认了确实要修改,才能将变化后的试题存入题库。在本窗体界面中,一次可以同时显示三道试题。
●删除功能的实现 与试题修改相类似,要想删除某道试题,也须先将焦点置于该题,然后单击删除确定按钮。但与试题修改不同的是,试题被删除后,数据库中的记录就会减少一条,而在通过向上或向下翻页按钮显示试题时,记录指针都将严格按顺序依次向上或者向下移动,这样当记录突然比原来少了一条以后,再来回翻页时,记录指针就会无法正确定位,于是也就无法按正确顺序显示试题。为避免这种情况,引入了一个窗体级变量,在每次单击“删除确定”按钮后,并不立即将该题删除,而是将要删除试题的代码存入窗体级变量中,然后在关闭该窗体时,在该窗体的事件中再将其删除。
4\试卷生成系统的设计
4.1自动组卷功能的实现
在试卷生成界面中,按照各题型的统计信息选择题型难度及数量选择结束后,已选择信息将存储在试题库中,以此继续下一题型的选择,直到全部选择完毕。 本文来自think58 [资料来源:http://think58.com]
当所有题型选择完毕后,按“生成试卷”按钮将生成规定格式的A、B试卷。点击“查看试卷统计信息”可以看到已选题型个数及已选分数。
4.1.1数据访问对象(DAO)
在VB中提供了两种访问数据库的方法:通过数据控件(Data)和利用数据访问对象(Data Access Objiect :DAO)。将这两种方法相比较,使用Data控件的特点是:几乎不需要任何代码,仅靠属性的设置即可使工程具有基本的数据访问能力;而数据访问对象则完全在程序运行代码中进行,使程序开发人员可以摆脱数据控件的束缚,直接编写程序访问数据库数据,从而能够开发出更具弹性且高效率的数据库应用程序。
4.1.2试题统计信息的实现
为了在生成的记录集中随机抽取出一道题,可以使用VB提供的Rnd函数,该函数能生成一个0︿a之间的随机数。设记录集的个数为a,则i = Int(Rnd * a + 1)就是一个范围在1︿a之间的随机整数。这样在记录集中取出的第i条记录,就是被随机抽出的一道题,而且被选中的这道题在SELECT语句选择条件的保证下不会重复已出过的试题。
4.2试卷浏览与修改
试卷管理系统主要能完成两方面的功能:试卷的浏览与修改,能对当前正在生成的试卷进行浏览,并对不满意的试卷进行修改或删除;试卷的编排和打印,能将选好的试题放入标准的试卷模板并调用Word进行编辑、排版和打印。 [资料来源:http://think58.com]
4.3试卷编排与打印
4.3.1试卷浏览与修改功能的实现
在试卷浏览与修改窗体界面中含有一个接近整个窗体的RichTextBox控件,用来显示当前试卷中的全部试题。
为了连续向RichTextBox控件(此处名为Rtb0)中添加试题利用了VB提供的SendMessage方法和Clipboard对象的SetText方法来模拟剪切和粘贴的过程,即先把一道道试题送入到剪切板,再把剪切板中的内容一个个粘贴到RichTextBox控件中。
4.3.2试卷的保存和打印功能的实现
首先在工程中引用Word对象模型。定义一个Word对象应用程序的对象mypaper,再用Set方法给mypaper赋值。通过mypaper的子对象集Documents调用Add方法,生成新Word文档。用SQL语句中的Select命令抽取出符合条件的记录并给Data控件的记录集赋值,将OLE与记录集的题目内容字段绑定,通过OLE调用Doverb方法,激活Word应用程序,并将题目内容粘贴到粘贴板上,再关闭Word。然后调用SendKeys命令,将粘贴板上的内容贴到RichText上,同时,将Word应用程序对象mypaper的子对象Select调用Paste命令也能将题目内容粘贴到Word的新文档中。对各种题型重复编程,最后将Word应用程序调用Quit命令,关闭Word,在关闭前会出现一个提示框,可以保存该文档。 copyright think58 [来源:http://www.think58.com]
5、成绩分析系统的设计与实现
5.1 成绩库导入
对于数据库的实现方法,有小型数据库Foxpro、Access、Paradox等,大型数据库Oracle、Sybase、Informix等。基于ODBC实现数据库和应用程序的接口,ODBC(Open Database Connectivity)可以提供一个为各数据库厂家支持的较一致的应用开发界面,使应用程序独立于具体的数据库,给信息交换带来方便。
ODBC有驱动管理器、驱动程序监管器、驱动程序和数据源四部分组成[6]。驱动程序监管器是一个控制面板小程序,用于定义ODBC数据源。数据源就是到具体数据库的连接定义。连接定义包括数据库的类型信息以及数据库相关位置信息,然后连接再被赋给一个公共名称,叫数据源名称(DSN)。ODBC驱动程序管理器(Driver Manager)和驱动程序,都把该名称当作数据源表的索引,以查找与数据库有关的信息。利用Visual Basic开发的Windows应用程序,通过ODBC机制可以方便地实现数据库的操作。
5.2 成绩统计和试卷分析
成绩统计是对学生的考试成绩进行统计,这些统计分固定格式的统计和用户自定义格式的统计,并输出这些统计的报表。包括成绩的分段统计、成绩分布曲线的绘制、平均分数、最低分、最高分、及格率的统计等。 think58.com
试卷分析是对测验的信度和效度进行分析。试卷分析的结果能够反映出考试是否真正检查出学生的知识水平与能力,是否真正检查出教学过程的成功与否,也就是说据此可以判断测定的结果是否能作为评价的依据。根据试卷统计三基部分分值、提高扩展部分分值、综合性部分分值及提高部分得分率等。
6、安全系统
6.1用户管理器
注册表是windows95以上版本的一大特色,通过注册表可以很方便地存取和应用程序有关的一些设置和数据,而VB又提供了十分方便的注册表操作函数,所以在用户管理过程中我们主要是利用注册表来对用户进行管理和注册。具体实现是,将各用户对应的用户名依次放入数组SUsername中,然后做成一个字符串存入注册表,需要时从注册表中取出,再分别存入SUsername中,以便于引用。各用户相应的口令和权限的操作也如此,分别存入数组SuserPW和SQx中。
将用户添加到注册表中需要利用VB提供的Savesetting函数。该函数用来在Windows注册表中保存或建立应用程序项目。
6.2登录系统
登录时将注册表中的用户名、口令、权限字符串取出,并分解到相应的数组SUsername、SuserPW、SQx中,将用户输入的用户名与用户名数组SUsername中的各元素比较,若在该数组中找到该用户名,则取出该元素在数组中的位置,再将用户输入的口令与口令数组SuserPW中的相同位置的元素相比较,如一致则登录成功,将权限数组SQx中相同位置的元素取出,得到该用户拥有的权限值,然后根据权限值给该用户分配操作功能,否则登录失败
1.1国内外题库的发展及现状
考试在我国古代就已经有了很大的发展,早在1300年以前就有了科举制度。但这种考试不规范、不严密,不能客观、准确地评估一个人的能力水平。第二次世界大战结束后,考试在社会生活中的地位进一步提高, 资格证书考试也就应运而生。这种考试次数频繁,命题工作量大,并且对考试的测量学特性要求更加严格,不少考生要求结果相互可比,因此,建立高质量、大容量的现代化题库成为必要。目前,经济发达国家已经建立了完善的考试专业机构。各机构也都根据自己所承担的职能建立起了大型题库。
从我国恢复高考制度以后,随着高考标准化的实施,尤其是微型计算机的快速发展,这些都为题库建设提供了基础条件。80年代中期以来,出现了多所学校或行政机构联合开发试题库的局面,同时,也出现了许多其它学科的试题库。90年代前后,政府部门在全国范围内有计划、有组织、系统地开展CAI教学与国家试题库的建设。
1.2本研究的目的和意义
传统的考试出题总是教师考前集中出题、集中组卷,这样很难保证试卷的质量,进而不能准确反映学生的学习效果。为促进教学手段的现代化,提高教学质量,减轻教师在出题、组卷和成绩分析中的工作量,帮助教师方便、快速、准确地分析、评价学生的学习成绩,本研究在VB编程环境下开发了一套能实现试题库管理和成绩分析的软件。
本文来自think58 [资料来源:www.THINK58.com]
本研究将试题管理、试卷生成和考试分析集为一体,不仅能帮助教师适时编制各类考试题目、生成标准试卷,还能对学生成绩录入、保存、分析并生成考试总结。本研究大大减轻了教师的工作量,有效地提高了整个考试过程的效率,对学校推动教学改革、提高教学质量起着很大的促进作用。
2系统总体结构设计
2.1系统结构框图与功能
图2.1 系统结构框图
系统的总体结构框图如图2.1所示,系统的具体功能如下:
● 试题录入功能 能将每道题的全部信息(包括每道题的题型、难度系数、分值等)录入到试题库中,而且若试题或答案中含有图形或公式,可以进行相应的录入。
● 题库管理功能 对题库中的试题与答案可进行整体浏览,或根据用户选择的具体查询条件进行相应的查询,也可以对试题库中的试题进行修改、删除等维护操作。
● 自动组卷功能 根据用户指定的试题难度、试题类型从试题库中随机抽取试题组成一套试卷,答案亦随机生成。
● 试卷浏览与修改功能 可对当前试卷进行整体浏览,并对不满意的试题进行修改和删除。 [资料来源:http://THINK58.com]
● 试卷输出功能 可通过调用Word将当前生成的试卷模板进行编辑排版,从而生成一套正式的试卷,并可将其打印输出。
● 考试分析功能 可实现成绩库导入、成绩统计与分析、试卷分析等功能。
● 用户管理功能 为不同级别的用户设定密码,登录后方可实现对应的操作。
2.2本系统的数据库结构设计
本试题库系统数据库[4]共分为两个数据表,一个用来存放各种题型的试题,另一个用来存放试卷考题的试卷表。
表2.1 试题数据表
字段名 类型 意义
DM(试题代码) Integer 每道题的唯一标识
NR(试题内容) Memo 存放试题图文混和信息
NDXS(难度系数) Text 存放每道题的难度信息
FZ(建议分值) Text 存放每道题的分值信息
DAAN(答案) Memo 存放试题答案信息
表2.1介绍了试题数据表的具体结构,因为本试题库系统的试题数据表中存储的试题中往往带有图形,在设计数据表结构时就需要一个能存放图文混和信息的字段,我们选用了Memo类型[5]字段来存放试题内容和试题答案信息。
think58
[来源:http://www.think58.com]
表2.2 试卷表
字段名
类型
STDM(试题代码) Text
STNR(试题内容) Memo
TX(题型) Text
FZ(分值) Integer
表2.2介绍了试卷表的具体结构,本部分主要包括试题代码、试题内容、题型和分值四项内容,对于试题代码和题型都是文字信息,所以选用Text类型;试题内容中往往带有图形,选用Memo类型;分值都是数字,所以选用Integer类型。
3试题录入系统的设计
3.1试题录入功能的实现
3.1.1纯文本信息的输入
在试题数据表中,只有试题内容与试题答案包含图形信息,其余字段存的都是纯文本信息,对这些文本信息(包括每道题的难度系数、分值、知识点)的输入,采用了组合框控件,
3.1.2图文混和信息的输入
为了输入图文混和信息,我们使用RichText控件,该控件不仅允许输入和编辑文本,同时还提供了标准的TextBox内部控件(文本框控件,可用来输入纯文本信息)未具有的、更高级的指定格式的许多功能。
3.1.3公式信息的输入
为了实现公式信息的输入,我们同样使用RichText控件,公式信息的输入和图文混和信息的输入大体相同,但是公式信息的输入需要用到公式编辑器。
copyright think58
[版权所有:http://think58.com]
3.2题库管理系统的设计
●试题修改的实现 在修改试题的过程中,为避免误操作使不应改动的试题发生改动,在用户单击确定按钮后,增加了提示对话框。只有当用户在提示对话框里单击了“是”按钮,确认了确实要修改,才能将变化后的试题存入题库。在本窗体界面中,一次可以同时显示三道试题。
●删除功能的实现 与试题修改相类似,要想删除某道试题,也须先将焦点置于该题,然后单击删除确定按钮。但与试题修改不同的是,试题被删除后,数据库中的记录就会减少一条,而在通过向上或向下翻页按钮显示试题时,记录指针都将严格按顺序依次向上或者向下移动,这样当记录突然比原来少了一条以后,再来回翻页时,记录指针就会无法正确定位,于是也就无法按正确顺序显示试题。为避免这种情况,引入了一个窗体级变量,在每次单击“删除确定”按钮后,并不立即将该题删除,而是将要删除试题的代码存入窗体级变量中,然后在关闭该窗体时,在该窗体的事件中再将其删除。
4\试卷生成系统的设计
4.1自动组卷功能的实现
在试卷生成界面中,按照各题型的统计信息选择题型难度及数量选择结束后,已选择信息将存储在试题库中,以此继续下一题型的选择,直到全部选择完毕。 本文来自think58 [资料来源:http://think58.com]
当所有题型选择完毕后,按“生成试卷”按钮将生成规定格式的A、B试卷。点击“查看试卷统计信息”可以看到已选题型个数及已选分数。
4.1.1数据访问对象(DAO)
在VB中提供了两种访问数据库的方法:通过数据控件(Data)和利用数据访问对象(Data Access Objiect :DAO)。将这两种方法相比较,使用Data控件的特点是:几乎不需要任何代码,仅靠属性的设置即可使工程具有基本的数据访问能力;而数据访问对象则完全在程序运行代码中进行,使程序开发人员可以摆脱数据控件的束缚,直接编写程序访问数据库数据,从而能够开发出更具弹性且高效率的数据库应用程序。
4.1.2试题统计信息的实现
为了在生成的记录集中随机抽取出一道题,可以使用VB提供的Rnd函数,该函数能生成一个0︿a之间的随机数。设记录集的个数为a,则i = Int(Rnd * a + 1)就是一个范围在1︿a之间的随机整数。这样在记录集中取出的第i条记录,就是被随机抽出的一道题,而且被选中的这道题在SELECT语句选择条件的保证下不会重复已出过的试题。
4.2试卷浏览与修改
试卷管理系统主要能完成两方面的功能:试卷的浏览与修改,能对当前正在生成的试卷进行浏览,并对不满意的试卷进行修改或删除;试卷的编排和打印,能将选好的试题放入标准的试卷模板并调用Word进行编辑、排版和打印。 [资料来源:http://think58.com]
4.3试卷编排与打印
4.3.1试卷浏览与修改功能的实现
在试卷浏览与修改窗体界面中含有一个接近整个窗体的RichTextBox控件,用来显示当前试卷中的全部试题。
为了连续向RichTextBox控件(此处名为Rtb0)中添加试题利用了VB提供的SendMessage方法和Clipboard对象的SetText方法来模拟剪切和粘贴的过程,即先把一道道试题送入到剪切板,再把剪切板中的内容一个个粘贴到RichTextBox控件中。
4.3.2试卷的保存和打印功能的实现
首先在工程中引用Word对象模型。定义一个Word对象应用程序的对象mypaper,再用Set方法给mypaper赋值。通过mypaper的子对象集Documents调用Add方法,生成新Word文档。用SQL语句中的Select命令抽取出符合条件的记录并给Data控件的记录集赋值,将OLE与记录集的题目内容字段绑定,通过OLE调用Doverb方法,激活Word应用程序,并将题目内容粘贴到粘贴板上,再关闭Word。然后调用SendKeys命令,将粘贴板上的内容贴到RichText上,同时,将Word应用程序对象mypaper的子对象Select调用Paste命令也能将题目内容粘贴到Word的新文档中。对各种题型重复编程,最后将Word应用程序调用Quit命令,关闭Word,在关闭前会出现一个提示框,可以保存该文档。 copyright think58 [来源:http://www.think58.com]
5、成绩分析系统的设计与实现
5.1 成绩库导入
对于数据库的实现方法,有小型数据库Foxpro、Access、Paradox等,大型数据库Oracle、Sybase、Informix等。基于ODBC实现数据库和应用程序的接口,ODBC(Open Database Connectivity)可以提供一个为各数据库厂家支持的较一致的应用开发界面,使应用程序独立于具体的数据库,给信息交换带来方便。
ODBC有驱动管理器、驱动程序监管器、驱动程序和数据源四部分组成[6]。驱动程序监管器是一个控制面板小程序,用于定义ODBC数据源。数据源就是到具体数据库的连接定义。连接定义包括数据库的类型信息以及数据库相关位置信息,然后连接再被赋给一个公共名称,叫数据源名称(DSN)。ODBC驱动程序管理器(Driver Manager)和驱动程序,都把该名称当作数据源表的索引,以查找与数据库有关的信息。利用Visual Basic开发的Windows应用程序,通过ODBC机制可以方便地实现数据库的操作。
5.2 成绩统计和试卷分析
成绩统计是对学生的考试成绩进行统计,这些统计分固定格式的统计和用户自定义格式的统计,并输出这些统计的报表。包括成绩的分段统计、成绩分布曲线的绘制、平均分数、最低分、最高分、及格率的统计等。 think58.com
[资料来源:http://www.THINK58.com]
试卷分析是对测验的信度和效度进行分析。试卷分析的结果能够反映出考试是否真正检查出学生的知识水平与能力,是否真正检查出教学过程的成功与否,也就是说据此可以判断测定的结果是否能作为评价的依据。根据试卷统计三基部分分值、提高扩展部分分值、综合性部分分值及提高部分得分率等。
6、安全系统
6.1用户管理器
注册表是windows95以上版本的一大特色,通过注册表可以很方便地存取和应用程序有关的一些设置和数据,而VB又提供了十分方便的注册表操作函数,所以在用户管理过程中我们主要是利用注册表来对用户进行管理和注册。具体实现是,将各用户对应的用户名依次放入数组SUsername中,然后做成一个字符串存入注册表,需要时从注册表中取出,再分别存入SUsername中,以便于引用。各用户相应的口令和权限的操作也如此,分别存入数组SuserPW和SQx中。
将用户添加到注册表中需要利用VB提供的Savesetting函数。该函数用来在Windows注册表中保存或建立应用程序项目。
6.2登录系统
登录时将注册表中的用户名、口令、权限字符串取出,并分解到相应的数组SUsername、SuserPW、SQx中,将用户输入的用户名与用户名数组SUsername中的各元素比较,若在该数组中找到该用户名,则取出该元素在数组中的位置,再将用户输入的口令与口令数组SuserPW中的相同位置的元素相比较,如一致则登录成功,将权限数组SQx中相同位置的元素取出,得到该用户拥有的权限值,然后根据权限值给该用户分配操作功能,否则登录失败
[资料来源:THINK58.com]