高中数学自动化测试系统开发与应用研究研究报告(1)

    本文由汪恒新贡献    doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。    《高中数学自动化测试系统开发与应用研究》研究报告 高中数学自动化测试系统开发

    本文由汪恒新贡献

    doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。

    《高中数学自动化测试系统开发与应用研究》研究报告 高中数学自动化测试系统开发与应用研究》

    深圳外国语学校《高中数学自动化测试系统开发与应用研究》 深圳外国语学校《高中数学自动化测试系统开发与应用研究》课题组

    其核心是利用信 [摘要] 新一轮高中数学课程改革的突破口是将信息技术与高中数学课程进行全面整合, 摘要] 息技术的优势特点,作为教师的教学辅助工具、情感激励工具和学生的认知工具,构筑数字化学习资源,促 使学生实现学习方式的变革,逐步形成接受式学习、主动探究式学习和有意义学习等学习方式多样化的和谐 统一。我们尤其要探索根据高中数学测试特点,以易语言、Javascript 语言、ScienceWord 及其插件、宽带 Web 服务器 1.2、Meibu 域名转向服务等为工具,构建新课程改革背景下的高中数学题库,开发《高中数学自 动化测试系统》 ,方便广大师生的使用和进行二次开发。 [关键词] 信息技术,高中数学题库,自动化测试系统,二次开发 关键词] 一、课题研究背景 国家高中数学课程标准明确提出,高中数学教学提倡利用信息技术来呈现以往教学中难以呈现的课程内 容,在保证笔算训练的前提下,尽可能使用科学型计算器、各种数学教育技术平台,加强数学教学与信息技 术的结合,鼓励学生运用计算机、计算器等进行探索和发现。 计算机自动化测试,在社会各个领域已经展开,例如驾驶员考试、计算机等级考试、英语口语考试等。 然而,在数学教学领域内开展自动化考试,并不多见,尤其是在普通高中阶段开展利用计算机自动化考试, 根据目前我们所搜集的资料,还未见有先例。我们将所收集到一些考试系统进行分类,逐一加以分析如下。 1、 驾驶员考试系统和公务员考试系统 、 驾驶员考试系统和公务员考试系统。 目前的驾驶员考试系统一般采用 2007 年 4 月新发布的公安部 91 号令的题库,内容分为汽车和摩托车两 部分(练习时可选择做其中的一种) 。软件含试题学习、模拟考试,错题回顾等内容和功能。做题时系统会显 示考试过程已用的时间,做完后显示得分情况和各题答案的正确与错误情况,并可查看答错题的具体内容和 答错之处。而且软件种类比较丰富,一般采用绿色安装,供驾驶员学习交通常识和交通规则使用。这些系统 的优点是图文并茂,安装卸载简便,系统占用资源少。缺点是题库容量比较小,一般是直接对应驾照考试时 的题库,容量约为几百个题,学习者通过几天的练习,完全可以采取背答案的方法来对付。 参考下载地址列表如下(无法全部囊括,大同小异) : 莱西顶尖科技有限公司 2008-02-23 创新驾驶员考试系统 http://www.wwfsoft.com/product/download/ks.exe 2008-03-03 诚信通商务软件有限公司 2008-02-22 驾驶员科目考试学习系统全国统一版 http://www.skycn.com/soft/29316.html 2008-03-03 公务员考试系统一般紧扣公务员考试考试大纲、考试教材,符合公务员考试题型与考试科目,试题库巨 大,囊括了目前所有的最新公务员考试科目:言语理解与表达、数量关系、判断推理、常识判断、资料分析 等。其特点是:(1)标准化考试;(2)智能阅卷;(3)错题重做;(4)打印功能;(5)章节练习;(6)题型丰富。此类 软件的共同缺点是没有完善的辅导系统,使用者发现做错之后无从寻求帮助,甚至发现题库中的错误也没有 办法。 参考下载地址列表如下: 执业考试网 2008-02-22 公务员考试宝典 http://www.ksw8.com/Article_Show.aspx?ArticleID=8836 2008-03-03 2、 试卷管理类系统 、 此类系统的思路与上一类不同,它们采取只开放壳资源,具体题库由使用者建立这样的思路。这类软件 在使用说明中给出题库的组建方法,例如录入方法(多采用流行的 Word 系统) 、录入格式(说明、题目部分、 答案部分、结束标志等)等,一般还会给出若干种样例,以便于使用者建立题库;另外还附有组卷的配置文 件(通常以.ini 为后缀) ,格式比较自由个性化。这样的系统自有其明显的优势,由于题库和系统分离,因此 非常方便更换题库,教师可以将最新的试题加入其中,也可以从市场购买相应的题库系统。优点同时也就成 为其最大的制肘:如果采用市场购买的题库,则题量大则大矣,然多数陈旧难以适合具体的班级;如果自己 添加试题,则题量小而无法实现随机组卷。还有一个问题,这类软件多数由一些商业公司组织开发,因此需

    要支付高昂的费用,费用问题阻碍了软件的推广,反过来又制约了软件的发展。

page 1

,

因此曾经在市场上风光一时 的软件基本上都悄无声息了。 比较著名的软件有: 北京科利华网络技术有限责任公司 科利华智能组卷系统 http://211.67.78.3:9000/ 2008-03-03 清华同方思科系统技术有限公司“出卷王”题库管理与组卷系统 http://soft6.com/product/0/612.html 2008-03-03 3、 计算机自动化考试系统 、 这里的计算机自动化考试,不是泛指运用计算机进行的考试,而是专业的计算机学科考试,例如计算机 等级考试、计算机水平考试、计算机操作考试等。由于计算机行业本身的高科技性质,因此计算机自动化考 试历来都走在各类自动化考试的前列, 无论是技术还是应用。 从一开始纯粹的纸质试卷电子化到标准化考试, 再发展到程序运行结果自动判断,最近的成果是对操作过程的全记录,以判断考生的操作是否正确。考试内 容涉及几乎计算机的所有领域。 一款曾经流传相当广、相当著名的软件是 TT 打字测试,几乎所有早期的计算机从业人员都用这款软件 进行过打字练习。这款软件体积很小,速度很快,训练效果好得不一般,甚至被某些公司作为测量打字员打 字速度的标准软件。这款软件的流行如此之广,以至于原来的作者不可考,变成一款彻底的免费软件了。目 前在网络上能搜索到的最新版本是由吉林吴锡所仿制的“wx Type Training 3.1” ,作者公开源代码。下载地址: http://www.onlinedown.net/soft/4595.htm 2008-03-03。该软件甚至在失去原作者维护的情况下,仍能取得很大 成功,其主要原因是专业化,把精力集中到满足用户一个小小的需求上,不做大而全的作品。 4、 最新的学生测试系统 JExam 、 目前,最先进的计算机自动化考试当属美国开发的 JExam 系统,该系统采用 Java 语言作为编程语言,因 而天然具有跨平台、硬件无关的优势,目前已经开发出基于 Windows、Mac OS X、Solaris、Linux 等多种版 本。该系统在美国一些大学被应用,如大学化学练习与考试。然而,该系统直接引入高中数学教学尚有一定 困难,主要是:1.纯英文界面,国人使用尚有很大的困难;2.由于使用了模拟机机制,导致速度非常慢,在一 台 P4 2.66G,内存 256M 的联想品牌机上,从启动到练习开始,足足用了 5 分钟,这样的速度是高中学生所 无法容忍的。3.通过使用,我们发现,JExam 仍然采用事先编辑好的一套套试题,这样,通过几次的练习, 学生甚至可以直接将答案背下来应付考试。 尽管如此,JExam 仍然具有传统纸质考试、纸质练习无法比拟的优势。首先,考试或练习的自主化。学 生可以在任何时候,任何地点开展练习,只要拥有一台电脑和一条网线。其次,反馈的即时化。练习的一种 模式是:阅题——思考——答题——反馈——反思,对于学习而言,反馈的周期越短越好,使用计算机进行 自动化练习,反馈就可以达到即时的程度。第三,利用计算机进行自动化练习,可以有效地节约资源,达到 资源共享的目的。 相比前面的几类软件,这个系统的最先进之处在于不仅能进行标准化考试(选择、判断等) ,还可以进行 填空和简答的自动判卷。由于这个优势,我将本软件下载并打包在本课题的软件中,供大家参考比较。如果 我们也能成熟地解决这个问题,把一些现实中的考试搬到网上进行也未尝不可。 下载地址:http://exams.uga.edu/jexam/JExamStudent3/install/install.htm 课题组开展了广泛而细致的调查研究,查阅了国内外有关计算机自动化测试方面的各类文献,聘请上海 市教育科学研究院现代教育实验室主任、全国现代教育技术实验学校指导委员会委员、华东师范大学兼职博 士生导师蒋鸣和研究员担任本课题组的指导专家。课题组得到了他的大力支持与全程指导,蒋教授为本课题 的核心部分——题库建设提供了专业的意见与资料,确保本课题研究工作的顺利进行。 二、课题研究的理论依据与现实基础 课题组为了顺利完成系统的编制,组织课题组成员对数学测试进行分析,系统地学习易语言、Javascript 语言、ScienceWord 及其插件、宽带 Web 服务器 1.2、Meibu 域名转向服务,确立以构建新课程改革背景下的 高中数学题库为课题研究的切入点。

    1、数学测试特点分析 、 信息技术与教学的整合,不是简单地将教学过程从黑板搬到电脑,由纸张变成屏幕,也不是无中生有, 自成一套体系。利用计算机进行自动化测试,首先应该对测试的过程分析,这是建设一个优秀测试系统的关 键。 目前的数学高考,试题被分成三种题型:选择题、填空题和解答题。在这三类题型中,选择题是最容易 进行移植的,利用计算机的鼠标点击操作,可以实现选择。而填空题由于需要输入各种数学符号如

    1 ,对计 2

    算机基础知识的要求较高,不是所有的学生都能够顺利作答。解答题不仅输入上

page 2

,

有相当的困难,而且输入速 度很慢,严重影响考生的思维过程,更加上目前计算机自动阅卷的数学难题尚未克服,几乎不能作为自动化 测试的主要成分。从市场上看,即便目前最先进的自动阅卷系统,北师大数学系推出的几何自动解题评卷系 统,也只能对一些非常规范的证明和计算过程进行识别和评判,而且不允许跳步、省略、多余步骤等解题无 关行为,而这,在从学生的角度看,是几乎不可能的。因此,建设一个成熟的、应用广泛的高中数学自动化 测试系统,应该以选择题为主。而且高中数学的选择题有一个特点,它全部都是四选一的单选题,这对于试 题系统的建设是非常有利的条件。 数学高考的内容,一般包括了代数(集合与简易逻辑、函数、数列、三角函数、不等式)解析几何、立 体几何、概率(排列组合概率论、统计初步) 、微积分初步(极限、导数)这五个大模块。学生是按照课程标 准依序学习的,高考中各模块的组成比例和难度系数也是不同的。因此,这些单元的试题应该是分别组建, 而不是混在一起,当需要组卷时,才将它们按一定的比例编成一份试卷。从这个角度分析,题库中试题的质 量,将直接决定整份试卷的质量。 2、 《易语言》介绍 、 易语言》 要完成软件的编程工作,其实有很多编程工具可以选择,如 C++、Delphi、SQL、Flash……但考虑到中 国人的使用,我们的立足点是国内的教育市场,希望能够有更多其他教师参与,我们还是选择了大连吴涛易 语言软件开发有限公司产品的《易语言》 。这个语言最大的特点是采用汉字编程,即使不会编程的人,只要有 基本的逻辑知识,读懂程序也不是什么困难。该公司对产品的推广主要还是面对教育界,主要产品有面向初 学者的易乐谷 (类似于 LOGO) 面向对象编程的易语言 、 (类似于 VB) 跨平台编程工具易.飞扬 、 (类似于 C++、 JAVA) ,此外还有大量的使用者开发的源代码,例如世宝的易脚本等。 我们选择易语言,主要原因就是它的汉字编程特性,易于理解,易于编程,一位普通教师经过大约 3 天 学习就可以基本掌握,编写出比较漂亮的代码。目前由了中国教育学会中小学信息技术教育专业委员会编写 《信息技术》易语言版九年级教材已出版发行, 由北京师范大学出版社出版。 在本课题中,易语言主要用于开发单机版客户端程序和服务器端的数据处理程序。 3、Javascript 语言 、 Javascript 是由 Netscape 开发并随着 Nevigator 浏览器一起发布的,介于 Java 和 HTML 之间,基于面对 对象驱动的编程语言。因其开发环境简单,不需要 Java 编译器,而是直接运行在 Web 浏览器中,因而倍受 Web 设计者欢迎。虽然 Navigator 已经被 IE 所替代,但 IE 以及其他浏览器也一样支持 Javascript,从而实现 了“编写一次,走遍天下”的梦想。 Javascript 是一种脚本语言,嵌入到 HTML 代码中,浏览器可以直接回应使用者的某些需求,与使用者 互动而不需要任何网络资源,不需要服务器的支援,因此可以大幅度降低服务器的工作负担,加快系统的反 馈速度。同时,Javascript 不允许对客户硬盘进行读写操作,也不允许对服务器上文档进行修改,从而保证了 服务器和客户的安全。正是由于采取了 Javascript 而不是 Java 技术,才使得我们的系统既具有跨平台的优点, 又不会由于虚拟机技术而导致速度降低。 4、ScienceWord 及其插件 、 ScienceWord 及其插件是由北京星火燎原软件有限公司出品的一款科技文档处理器,是国家“863”专项 经费资助项目,是 2004 年度国家火炬计划项目,是中国软件行业协会推荐的优秀软件。ScienceWord 在处理 科技文档时具有强大的功能,从界面上看,几乎和 Word 一样,方便使用者迅速掌握。与其他几款科技文档 处理软件比较,可以发现。

    MathSoft 公司的 MathCAD,是一个专业的数学软件,虽然能处理公式,但是只能基于对象处理,不能 以文字流方式编排科技文献,且对于文字的处理能力极差。 Science Design 公司的 MathType 只能编辑数学公式,不具备文字处理能力。 Waterloo Maple 公司的 Maple V 与 MathCAD 相近,具有较强的公式处理能力,但不能处理文字。 Microsoft Word 为全球所熟悉,但只能处理常规文档,采用的 Science Design 公司的 MathType,输入文 档中可以出现的数学公式,并以图片的形式存在于文档之中,编辑个性极不容易,更无从检索,且不能处理 几何逻辑。 几何画板,具有强大的几何作图能力,但不能进行大批量文字和公式处理,使用几何画板制作出的几何 图形只能作为图片拷贝到字处理软件创建的文档中,以图片形式存储,不能再次进行修改。 ScienceWord 针对教师和学生群体设计其功能,具有强大的编辑大批量文字、公式、图形和曲线的能力, 且对于公式、图形和曲线的生成和修改简单方便,如同处理普通文字。在数学功能的基础上又增添了对物理 实验图和化学分子式、试验图

page 3

,

的处理功能。ScienceWord 具有小巧、功能实用、价格低廉等特点,适合于教师 编写电子教案、电子试卷、试题库等,学生完成电子版作业以及科技工作者编写电子科技论文等。 ScienceWord WebEdition 作为 ScienceWord 的 web 版本,以控件的方式改变了互联网科研及教育中始终 无法进行包括文字、 符号、 图形、 曲线等科学元素全面交互的难题。 本课题就是采用了 ScienceWord WebEdition 构建了网上答疑论坛,使用者可以直接在论坛中输入数学符号、公式、图形等内容,大大方便了使用者与课 题背后教师群体的交流。 答疑论坛地址:www.novoasoft.com/bbs/ShowForum.aspx?ForumID=24 ScienceWord 主页:www.novoasoft.com/ 5、 宽带 Web 服务器 1.2》 、 《 》 由于本课题的服务器要求比较低,只要能提供一般的访问支持即可,因此我们选择了常州搜易软件 (www.seekeasysoft.com)出品的免费软件《宽带 Web 服务器》v1.2 版,该软件通过开放计算机的 80 端口提 供主页服务。任何用户只要输入本机 IP,就可以访问到本机所提供的资源,将个人计算机轻松变成海量服务 器。此款服务器体积小,仅有 860KB;维护简单,除了 IP 没有任何参数,不需要安装;具备简单的 CGI 接 口,无须用户设置和编程。此款软件的缺点是只能提供单线程的下载,只能支持标准 ANSI 字符集文件,不 支持汉字文件名。系统默认的首页文件为 index.html,可以修改。 6、Meibu 域名转向服务 、 由于我们课题组的服务器是使用动态 IP 上网, 我们又申请了一个二级域名。 域名解析我们选择了青岛每 步数码科技有限公司(www.meibu.com)提供的域名解析服务,并注册了二级域名:math900.meibu.com。在 这之前,我们也尝试过中国学生网(广州) (www.6to23.com)的主页服务,但它要求将所有文件内容放到公 司服务器上,造成了维护的不方便,不得已放弃了。 Internet 上的域名解析一般是静态的,即一个域名所对应的 IP 地址是静态的,长期不变的。也就是说, 如果要在 Internet 上提供服务,如搭建网站,架设邮件系统,一般 需要有一个固定的 IP 地址。 动态域名的 功能,就是实现固定域名到动态 IP 地址之间的解析。用户每次连接到 Internet 一般会自动得到新的 IP 地 址之后,安装在用户计算机里的动态域名软件就会把这个 IP 地址发送到动态域名解析服务器,更新域名解 析数据库。Internet 上 的其他人要访问这个域名的时候,动态域名解析服务器会返回正确的 IP 地址给他。 因为绝大部分 Internet 用户上网的时候分配到的 IP 地址都是动态的。用传统的静态域名解析方法,用户想 把域名解释到自己上网的计算机,是不太现实的。而有了动态域名,这个美梦就可以成真。用户可以申请一 个域名, 利用动态域名解析服务, 把域名与自己上网的计算机绑定在一起, 这样就可以很方便的让 Internet 用 户访问到自己的计算机。 7、现实基础 深圳外国语学校创办于 1990 年,是具有鲜明外语特色的深圳市教育局直属重点学校、广东省一级学校、 全国外国语学校工作研究会理事学校、全国现代教育技术实验学校、广东省国家级示范性高中、全国 13 所 可保送 20%高中毕业生上重点大学的外国语学校之一。学校初、高中部目前有 82 个教学班,3700 多名师生 员工,开设英语、日语、德语、法语、西班牙语等多个语种的教学。学校狠抓现代教育技术环境的建设,现 已建成国内一流的中学校园网络,并宽带接入互联网,并在所有教学班级配置了完整的多媒体教学设施。学

    校各级领导非常重视课题研究工作,坚持科研兴校的办学方针,制定了一整套科研管理制度,建立了科研工 作的激励机制,将教学与科研作为学校不可或缺的两翼。数学组承担的全国教育科学“十五”规划重点课题 “数学教学效率论”子课题《数学解题教学的效率研究》 ,建构了“选择—探究—发展”的解题教学模式, 得到课题总课题组的高度评价,顺利结题;数学组承担的全国教育科学“十五”规划国家重点课题《信息化 进程中的教育技术发展研究》子课题《MM 教育方式与信息技术整合的理论与实践》得到课题总课题组的高 度评价:总课题组认定课题组圆满完成预定研究任务,成果达到了国内同类研究的先进水平,同意结题,已 将该项研究成果纳入总课题组最终成果,并经综合评议,该子课题被评为优秀子课题。所有这些,为本课题 的开展与深入奠定了坚实的基础。 高中部数学科组拥有特级教师 1 名、高级教师 27 名、一级教师 4 名、二级教师 1 名,学历均到达本科毕 业,其中有四位研究生毕业并获硕士学位,年龄的层次结构合理,全员参加课题研究工作,大部分教师参加 过数学课题研究工作,取得了一些研究成果,积累了一定的研究经验。 学校各级领导与部门高度重视课题的筹备、申报、立项、研究、实验、结项、推广等一系列工作。由老

page 4

,

 校长龚国祥高级教师、 校长汤佳宏高级教师担任本课题领导小组负责人, 成员由办公室主任刘继斌高级教师、 教导处主任林海平高级教师、副主任谢增生高级教师、科研处副主任刘军高级教师、吴珍冬高级教师、学生 处副主任张传平高级教师、总务处主任李明山高级教师、数学科组组组长刘仲雄高级教师、副组长张元清、 许书华高级教师、高一年级刘军组长、高二年级张传平组长、高三年级欧阳爱小组长等。课题领导小组全面 协调课题研究,对课题研究与实验工作进行组织管理,负责课题组研究人员、实验教师的培训工作,提供必 要的科研经费,聘请上海市教育科学研究院现代教育实验室主任、全国现代教育技术实验学校指导委员会委 员、华东师范大学兼职博士生导师蒋鸣和研究员担任本课题组的指导专家,确保课题研究工作的顺利进行。 三、课题研究的基本过程 1、准备阶段:2006 年 4 月 ̄2006 年 9 月。 组成课题组,学习研讨研究方案,广泛征求意见,选择研究课题,聘请课题指导专家,在专家指导下制 定课题研究方案,提出课题研究计划,向中央电化教育馆申报“十一五”全国教育技术研究规划专项课题, 课题正式开题。 主要课题组成员有组织地进行若干次学习和研究,搜集有关理论资料、他人的研究成果以及我们可能使 用到的一些工具的学习等。特别是研究 2006 年各地高考数学试卷,统计每部分的比例和难度系数。 蒋鸣和研究员亲赴我校对对课题组成员进行《应用创新引领发展》专题培训,并对课题采取多种方式式 进行全程指导。 2、构建题库阶段:2006 年 9 月 ̄2007 年 3 月。 由课题组成员分工,构建新课程改革背景下的高中数学题库,题库冗余度至少应该达到 1:10,即组织 20 道测试题,题库中至少应该有 200 道备用题。 3、系统设计阶段:2007 年 3 月 ̄2007 年 9 月。 运用软件项目开发技术,依托深圳市外国语学校的服务器系统,开发出实用、高效、即时反馈的自动化 测试系统,如果可能,加入教师实时答疑系统更好。 4、系统运用阶段:2007 年 9 月 ̄2008 年 3 月。 将系统开放给课题组成员,供其使用,并提供二次开发的技术支持和运用模式研究,同时进行题库的维 护工作,删除不适合的题、补充新题、改正错题、对系统进行评估。 5、系统排错、打包、验收阶段:2008 年 3 月 ̄2008 年 5 月。 系统排错、打包、验收阶段。最后成果希望能提供一个网络版、一个单机版,并免费向公众提供服务。 6、总结与结题阶段: 2008 年 5 月-2008 年 6 月。 课题组在蒋鸣和研究员指导下整理研究成果,总结经验,撰写结题报告,接受总课题组的结题验收。 四、课题研究取得的主要成果 高中数学自动化测试系统》 1、构建《高中数学自动化测试系统》 ⑴ 系统的组成结构

    整个系统由题库系统、考试系统、服务系统三大部分组成,基础是题库系统。 题库系统由多达 26 个单元的小数据库组成,每个数据库完整包含了一个单元的题(不少于 200 个) ,是 整个系统的核心,决定了系统的试卷质量。 考试系统主要完成四个功能:1、组卷。从题库中随机抽取 20 道题,打乱每道题的选择支,作为一份试 卷。2、考试。控制考试时间,呈现考试试题。3、判卷。考试结束,自动计算得分。4、评卷。使用者可以复 查试卷,可以向系统提出疑问,由服务系统或教师提供解答。 服务系统分为服务器、成绩收集系统、答疑体系。其中,服务器负责所有的下载,数据的接受传输工作; 成绩收集系统收集所有考试成绩, 收集所有的难题错题信息; 答疑体系包括已答疑过的问题和教师两个部分, 如果学生提出的问题曾经出现过,将自动回答,否则通过留言板、邮箱或 QQ 直接提交到教师,请求解答。 下图就是各系统之间的关系。题库系统主要是支持考试系统,通过考试系统考核使用者;教师支持服务 系统,提供服务系统所不能自动提供的服务;服务系统还支持考试系统,收集考试系统所传递的数据;服务 系统为使用者提供服务,有时还必须参考题库系统,同时,如果发现题库系统中的错误,及时进行修正。

    题库系统

    教师

    考试系统

    服务系统

    使用者

    ⑵ 题库系统 ① 题库系统的设置 高中数学知识点多,按新课程标准,我们根据实际教学的进度,将其分成若干个单元,每个单元设置一 个数据库。每个单元设计要求有至少 200 道选择题组成,每个选择题的 A 选项是参考答案。根据蒋鸣和教授 的

page 5

,

建议,我们设置数据库时,每一个数据有如下字段: 字段名 题干 选择支 A 选择支 B 选择支 C 选择支 D 答对数 答错数 以 字段类型 备注型(以 gif 格式存储的图形) 备注型(以 gif 格式存储的图形) 备注型(以 gif 格式存储的图形) 备注型(以 gif 格式存储的图形) 备注型(以 gif 格式存储的图形) 整数型 整数型 历史上本题正确回答次数,起始为 1 历史上本题错误回答次数,起始为 1 正确答案所在位置 注释

    答对数 作为该题的难度系数。 答对数+答错数

    课题组设计题库时,考虑到除了要满足组卷和考试的要求,还要系统能满足复查答疑的功能,因此 在设计题库时还设计了一个答疑记录文件。答疑记录存放在文件夹“答疑”中,以“单元名+编号”作 为文件名,例如“函数 238.doc”表示对函数单元第 238 题的答疑,一般是该题的详细解答过程,有时候 还有对题目的总结归纳或指明题目中的陷阱。 不论是服务器端, 还是客户端, 所有数据库都存放在文件夹 data 下, 每个数据库都由两个文件组成, 例如集合单元的数据库由“集合.EDB”和“集合.EDT”组成,只要熟悉数据库的人都知道为什么要两个

    文件(一个存储字段数据,一个存储备注数据) 。这样,本课题的题库系统实际上是由 56( 28 × 2 )个 文件,28 个单元组成。这些单元对应日常教学的 28 个单元,如图所示。

    必修一

    必修二 三角函数

    必修部分

    必修三

    必修四 必修五

    平面向量

    三角恒等变形 文科选修 选修部分 理科选修

    另外,由于系统的题库总处于动态的更新中。本课题还设置了一个配置文件 math900.ini,用于记录当前 题库的版本信息。 ② 题库系统的维护 题库中的试题来源于教师平时工作积累,来源于各种考试,来源于互联网或参考书籍,其中有一些错误 在所难免,如果系统题库不能进行纠错,不仅给整个系统造成严重的负面影响,而且可能误导使用者。本课 题的题库系统维护流程,我们称之为“捉虫” 。 首先,从用户的错误中发现题库中的错误。用户使用由于没有强制性要求,所以有部分使用者做题时不 认真,这很自然。我们界定,如果测试的成绩高于 40 分,则认为使用者认真完成了一份试卷,而不是随机选 择;如果测试成绩高于 60 分,则认为使用者的错误具有一定的典型性,值得进行分析。 使用者每完成一份试卷,考试系统就会向服务器发送一组数据。内容包括①测试时间;②用户名;③测 试单元;④测试成绩;⑤答对题号和答错题号。服务器收到数据,立即启动成绩分析系统(程序名:数据入 库.exe) 。 主程序:

    如果真(成绩≥40) //成绩低于 40 分被认为没有价值 改难度系数(单元,正答信息,错答信息) 如果真(成绩≥60) //成绩高于 60 分的试卷,其错题也有价值 整理错答信息(将其中已做过解答的题号去掉) 把错答信息写到文件“错题记录.ini”中 模块——改难度系数: //难度系数=答对数/(答对数+答错数) 打开数据库(单元) 题组=分割文本(正答信息) 计次循环首(取成员数(题组) i) , 跳到(题组[i] ) 答对数=答对数+1 计次循环尾() 题组=分割文本(错答信息) 计次循环首(取成员数(题组) i) ,

    跳到(题组[i] ) 答错数=答错数+1 计次循环尾() 打开文件(”data\math900.ini”) 题库修改时间=当前时间()

    //提示用户及时升级题库

    当维护教师打开文件 math900.ini 时,如果有新的问题出现,就将重新核实题库中该题,并作出解答。如 果题目的确出现了错误,通常的错误有:答案输入错误、答案位置错误、题目输入错误、题目与答案不符等, 教师即进行更正,并更新题库。更新题库的过程由教师进行,更新工具:数据库编辑.exe,这个程序比较简 单,只有三行代码。

    打开(通用对话框.文件名) //打开要修改的数据库 编辑(,) , //编辑数

page 6

,

据库 关闭() //关闭被修改的数据库

    ③ 题库系统的升级 题库发生了变化, “据入库.exe”将题库最新日期记录在 math900.ini 中,因此,客户端程序只要将本机上 的 math900.ini 与服务器端的 math900.ini 进行比较, 就可以发现是否升级。 这个过程在客户端程序 math900.exe 中实现,由模块“自动升级”完成。升级的基本方法是一个一个题库进行比较,发现有更新则下载最新题库, 替换原来的题库。这个过程的原理比较简单,但具体的实现却比较复杂,我们这里就不把代码罗列了。 ⑶ 考试系统 考试系统完成四个功能:组卷、考试、判卷、评卷。由程序 math900.exe 完成,这个程序是整个系统中 代码最多,体积最大的程序。 ① 组卷 组卷的功能由模块“初始化”完成,流程比较简单。

    随机取 20 道题 计次循环首(20,题号) 随机重排选择支 记录参考答案所在位置 计次循环尾()

    这里有两处涉及随机算法,随机抽取题目过程,在单机版程序中采用了“抽牌算法” ,而在网络版则直接 采取“验证算法” 。 抽牌算法 我们用一副扑克来模拟随机抽牌,可以这样操作。将一副牌放好,从中随机抽取一张,把它取出,然后 再重新抽一张,……如此即可保证抽取随机而且不重复。 .计次循环首 (总题量, i)

    加入成员 (题目列表, i) .计次循环尾 () .计次循环首 (20, i) t = 取随机数 (1, 总题量 - i + 1) 输出 (题目列表 [t]) 题目列表 [t] = 题目列表 [总题量 - i + 1] .计次循环尾 ()

    这个算法的优势是速度快,不重复,而且速度很稳定,算法复杂度为 O(n),实现的代码也比较简单。我 们的《高中数学自动化测试系统》采用的就是这个算法。算法的缺点是需要一定的空间来储存数组,如果数 组很大,可能造成“溢出”错误。 验证算法 每取出一个数,就让它与已取出的数进行比较,如果相同,则舍弃这个数重新取。 .题号 = 1

    .判断循环首 (题号 < 21) t = 取随机数 (1, 总题量)

    不重复 = 真 .计次循环首 (题号, j) .如果真 (t = 题目列表 [j]) 不重复 = 假 .如果真结束 .计次循环尾 () .如果真 (不重复) 题目列表 [题号] = t 题号 = 题号 + 1 .如果真结束 .判断循环尾 ()

    这个算法效率一般,但实现比较简单,是个比较不错的算法。从理论上说,比较的次数多,尤其是总体 数和样本数差不多时,在最后几个数,速度会越来越慢,不过经过尝试,20 道题的目标和超过 200 道题的总 体,速度可以接受。由于这个算法对于终端的内存要求较低,符合“瘦终端”的要求,我们在网络版就选择 了这个算法。 其他的随机算法请阅读附录的《出牌的随机算法研究》一文,在此不赘述。 ② 考试 考试的功能涉及模块主要有“显示题目”“用户作答”“时间控制”等,此外,在考试功能中还设计了 、 、 试卷打印模块。 a.显示题目 . 显示题目要求系统能按顺序呈现题目,能按用户需要呈现某一题目,呈现题目时要考虑如果本题已被做 过,要显示出用户原来作答的答案。为了实现这样的功能,我们设计了五个图片框,分别显示题干和选择支, 用户原来作答的答案设计为粉红色背景。该模块采用面对对象设计,事件触发机制,没有清晰的流程。 b.用户作答 . 用户可以在显示的 ABCD 四个选项中作出一个选择, “用户作答”的任务是记录下用户的答案,把这个 答案发送到答题框中,同时显示下一题题目(如果已经是最后一题,则显示第一题题目) 。 c.时间控制 . 时间控制模块分成三个部分。第一部分在开始,当用户开始考试,就将时钟周期设置为 60 分钟,然后 将控制权交出给系统;第二部分在考试中,每隔一秒将考试时间提示框的内容更新一次,以提示学生;第三 部分在考试后,如果用户中途提前交卷则时间控制模块停止工作,如果用户到 60 分钟仍未交卷则强制交卷, 并将时钟周期设置为 0,自动转入判卷模块。 ③ 判卷 考生考试结束,提交试卷,或者当考试时间到,考试结束,都将自动转入判卷阶段。判卷过程主要对每 个题的判断、计分、统计答对信息和答错信息、提交成绩等四项工作。 主程序:

    成绩=0 答错信息=“” 答对信息=“” 计次循环首(20,题号) 如果(用户选择[题号]=参考答案[题号] ) 成绩=成绩+5 答对信息=答对信息+题目列表[题号] 否则 答错信息=答错信息+题目列表[题号]

    //初始化某些数据 //一共 20 道题,一题一题判 //答对的处理

page 7

,

    //答错的处理

    计次循环尾() 成绩框.标题=“考试成绩: +成绩 ” 提交成绩(成绩,答错信息,答对信息)

    //显示成绩 //向服务器提交成绩

    模块——提交成绩: 如果(姓名=“测试” 返回() ) //专用测试帐号,不提交成绩 提交数据=姓名+成绩+单元名称+答错信息+答对信息 //文本格式 返 回 数 据 = 访 问 网 页 ( “ http://math900.meibu.com/cgi-bin/cgifrm.exe? ” , “ POST ” 提 交 数 据 ) , //服务器接收数据的程序就是 cgifirm.exe,方式为 Post 如果(返回数据≠“成功” ) 返回() //表示发送数据失败 启动线程(&统计排名) //从服务器得到用户的当前名次,使用多线程,已防假死

    ④ 评卷 从数学教学的理论上而言,最好的评卷应该是面批,学生与老师面对面分析试卷,找出考试中发现的问 题。但在自动化测试里不可能实现,自动化测试自有其特点和优势:速度快、即时反馈、可重复操作。用户 完成一次测试后,不需要等待,立即就可以进行试卷分析,尤其是错题分析。在系统的操作界面上有一个“请 求答疑”的按钮,当用户点击这个按钮,就会得到软件背后的教师团队的支持。具体流程如下(参数:系统 题号) :如果该问题曾经得到过解答,则系统自动调取解答文件,如果没有,可以通过 Email、QQ、留言本、 论坛等方式与教师交流。

    如果(本地盘存在解答文件) 载入 Word 并加载解答文件 否则 答疑文本=HTTP 读文件(系统题号) 如果(答疑文本≠空) 写(解答文件,答疑文本) 载入 Word 并加载解答文件

    否则 载入(答疑窗口)

    模块——答疑窗口:该窗口很简单,有四个选项:论坛、留言本、QQ、Email    判断(论坛.被选中) 打开网站(http://www.novoasoft.com/bbs/ShowForum.aspx?ForumID=24) 判断(留言本.被选中) 打开网站(http://guestbook.activepower.net/script/user/list.asp?userid=85465) 判断(QQ.被选中) 打开网站(tencent://message/?uin=395880693&Site=math900.meibu.com&Menu=yes) 判断(Email.被选中) //选择 Email,需要填写 Email 地址 连接发信服务器() 发送邮件() 断开发信服务器()

    ⑤ 其他功能 a.注册 . 注册的功能在两个地方可能出现,一是软件开始使用之前,提示用户(如果尚未注册)本软件支持注册, 但不收费,二是考试取得 60 分以上成绩,系统跳出提示,告之注册码。本课题采用的注册是全免费、捆绑硬 盘的方式,注册码其实就是硬盘特征码。 特征码是计算机硬件的身份标志,一般用户是不会理会的,但对于需要注册和加密的系统而言,特征码 就成为判断计算机的一种唯一代码。在计算机中,CPU、BIOS、硬盘都有自己的唯一编码,我们考虑到用户

    计算机的 CPU 和其他硬件都是有可能更换的,而硬盘如果更换则必须重装软件,因此,课题组选择了硬盘特 征码作为注册的唯一标识。 其实说是注册,用户完全没有必要去破解。因为第一,软件是免费使用的;第二,获得注册码的唯一手 段就是认真完成一套试卷,成绩及格就能获得注册码。 b.选择章节 . 通常的计算机辅助教学软件,着力点是知识的学习和复习,依托于此的设计流程必然是“呈现信息 接 受信息 反馈 重新呈现或呈现下一信息” 。在这个过程中,使用者没有完成当前的任务,是不能进入下一章 节的学习。而《高中数学自动化测试系统》是学生在完成课堂学习任务的前提下进行的解题训练,因此,应 该允许学生自主选择任何一个单元进行练习。 选择章节的任务,由“选择章节”菜单完成,在菜单体系中,有必修一到必修五,包括文科、理科选修 以及专题选讲的全部单元,每一个单元对应一个数据库。因此,触发菜单所对应的程序实际上非常简单:打 开数据库(单元名称) 。简单的代码完成重要的功能! c.排行榜显示 . 为了增加软件的趣味性,课题组还设计了积分体系,积分的计算在服务去器上由成绩收集系统完成。考 试系统只负责显示当前用户的积分和排行情况。

    下载(http://math900.meibu.com/排序.edb) 打开(排序) 如果(查找( “姓名” =姓名) ) 当前积分.标题=“当前积分: +读(积分) ” 当前排名.标题=“当前排名: +取记录号() ” 关闭()

    版权、帮助系统、登录主页、关于。此处内容与一般软件无异,不赘述。 ⑷ 服

page 8

,

务系统 ① 服务器 本课题采取了两种网络服务模式(Client/Server 模式和 Browser/Server 模式) ,在网络版测试系统中采用 的是 Browser/Server 模式,而在单机版测试系统中采用的是 Client/Server 模式。不论哪一种模式,都需要一 个服务器和一套伺服软件,我们的服务器采取简单的《宽带 Web 服务器 V1.2》 ,提供静态的网页服务和数据 收集工作,伺服软件主要是自主编写的“数据入库.exe”“数据库编辑.exe”两个文件。 、 ② 成绩收集系统 成绩收集系统由服务器和“数据入库.exe”共同完成。其中,服务器采用 CGI 技术,用 POST 手段收集 用户上传的考试数据,每组数据保存在一个 txt 文件中,文件名为上传时间+IP 地址。而“数据入库.exe”则 通过时钟控制,监督数据文件的生成,一旦数据上传,立即启动下面的工作。    读取数据(数据文件,日期,姓名,成绩,单元) 积分入库(日期,姓名,成绩) 删除负分() 排序输出()

    模块——读取数据

    //从数据文件中读取相关数据

    文件号=打开文件(数据文件) 日期=到时间(读入一行(文件号) ) 姓名=读入一行(文件号) 成绩=读入一行(文件号) 单元=读入一行(文件号) 错题信息=读入一行(文件号) 正答信息=读入一行(文件号) 关闭文件(文件号) 删除文件(数据文件)

    如果(姓名=“” ) 返回() 如果(成绩<0) 返回() 如果(成绩>100) 返回() 如果(成绩>40) 修改难度系数(单元,正答信息,错题信息) //成绩超过 40 分,可以认为不是胡乱选择 如果(成绩>60) 写配置项 (“e:\math900\错题记录.ini”, 到文本 (取现行时间 ()), 单元, 错题信息) //成绩超过 60,可以认为其答错题有讲评价值,需要作出解答

    模块——积分入库

    打开( “排行榜” ) 到首记录() 如果(查找(读( “姓名” = 姓名) ) 成绩=成绩+读( “积分” -20 ) 写( “积分” ,成绩) 写( “最近登录时间” ,日期) 否则 加记录(姓名,成绩-20,日期) 关闭( “排行榜” )    模块——删除负分

    //答题者姓名已知数据库中 //积分计算时扣除随机得分 //将积分重新更新    //有两种情况用户名将被删除: //1、积分为负,直接删除,实际相当于清零 //2、最近半年没有使用系统进行考试

    打开( “排行榜” ) 删除(读( “积分”≤0) 删除(取时间间隔(取现行时间() ,读( “最近登录时间”,#日)>183) ) 关闭()

    模块——排序输出 ⑸ 答疑系统 答疑系统由客户端提出问题、服务器端提供解题参考、教师解答、修正题库四个部分组成。 //排序的算法很多资料都有介绍,这里略过。

    用户提出问题

    服务器(历史 答疑记录) 不存在解答

    已经存在解答 提供解答

    教师答疑

    题库(一个单 元一个数据 库)

    发现题目有错,修改题库

    用户 组使 用 测试 系统 时, 可能 出现 某 些题 不会 ,或 者对 答案 有 怀疑 ,可 以通 过客 户端 界 面上 的 按钮提交问题。服务器对提交的问题进行分解,若已存在解答则直接解答,否则转给教师。教 师解答问题后将解答反馈给使用者,若属题目问题则修正题库。

    提交问题 如果(问题解答曾经被下载) 直接打开解答文件 如果(服务器存在问题解答) 下载并打开文件 否则 跳出答疑窗口,有“QQ”“Email”“留言本”“论坛”可供选择。 、 、 、 教师定期查看解答疑问 修正题库

    模块——修正题库

    打开(单元) 编辑() 关闭()

    2、二次开发实践研究 、

page 9

,

    //一个单元对应一个数据库 //数据库编辑器,由易语言本身提供

    实践应用之一: 《2008 高考能力测试》 高考能力测试》 ⑴ 实践应用之一: 《 ① 配置系统 首先,必须研究清楚数学高考的考察范围。自动化测试的组建表面上看是程序开发问题,实际上更应该 研究是试卷内部的结构。我们以 2007 年高考为蓝本进行分析,将 2007 年全国各地高考试卷进行分析,分别 统计出文科、理科的各单元比例。结果如下: 文科单元 集合 函数 指对数 立体几何 直线与圆 算法 统计初步 概率 三角函数 平面向量 三角变换 解三角形 数列 不等式 逻辑 频率 3.14% 10.23% 3.42% 14.60% 3.14% 0.14% 1.80% 9.46% 4.05% 4.05% 4.56% 3.14% 10.15% 5.36% 1.51% 累计频率 3.14 13.37% 16.79% 31.39% 34.52% 34.66% 36.46% 45.92% 49.97% 54.02% 58.58% 61.72% 71.86% 77.22% 78.73% 理科单元 集合 函数 指对数 立体几何 直线与圆 算法 统计初步 概率 三角函数 平面向量 三角变换 解三角形 数列 不等式 逻辑 频率 2.90% 5.79% 3.12% 13.84% 4.23% 0.14% 0.81% 9.72% 3.68% 4.09% 3.68% 4.57% 11.45% 4.90% 0.97% 累计频率 2.90% 8.69% 11.81% 25.65% 29.89% 30.03% 30.84% 40.56% 44.23% 48.33% 52.01% 56.57% 68.02% 72.92% 73.90%

    圆锥曲线 导数 统计框图 复数

    12.83% 7.47% 0.68% 0.29%

    91.56% 99.03% 99.71% 100%

    圆锥曲线 导数 统计框图 复数 概率与统计

    11.45% 9.00% 0.67% 3.29% 1.70%

    85.35% 94.35% 95.01% 98.30% 100.00%

    注:1、直线与圆实际上就是必修中的解析几何部分;2、统计初步主要涉及的是平均数、方差、期望 等;3、统计框图包括了统计案例和框图两个章节;概率与统计主要涉及二项式定理。 这个比例是我个人的一个分析结果。 一百位数学老师, 对一份数学试卷的分析将会有一百个不同的分析, 不要求大家都一样。 然后, 制作一个配置文件。 配置文件是一个文本文件, 直接用记事本编辑就可以了, 文件名存为 “文科.ini” 或者“理科.ini” 。其中必须而且只能包括这几行: 第一行 第二行 全角) 第三行 第四行 第五行 第一个单元名称 概率区间起点 概率区间终点 内容是上一单元的累计频率 内容是本单元的累计频率 试卷标题 单元总数 这个标题将显示在界面上 本份试卷将考查的单元数量,是一个整数。 (注意:19 不要写成19,是半角不是

    在这以后,都是每三行一个单元,如果单元总数是 20,就应该有 60 行内容。 例如,在本文所设计的文科试卷,其配置文件如下:文件名“文科.ini”或者“理科.ini” ,存放位置是系 统的 data 目录。 2008 年高考数学(文)考试能力测试 19

    集合

    0 0.0314

    函数

    0.0314 0.1337

    指对数

    0.1337 0.1679

    立体几何

    0.1679 0.3139

    解析几何

    0.3139 0.3452

    算法

    0.3452 0.3466

    统计

    0.3466 0.3646

    排列组合

    0.3646 0.4592

    三角函数

page 10

标签: