计算机基础课程考试系统的开发与应用

时间:2022-08-14 04:59:49

计算机基础课程考试系统的开发与应用

摘要:针对大一新生计算机应用能力基础不同的情况,设计一套计算机文化能力测试系统。本系统不仅用于新生的分班考试,还可用于课程结课考试。系统实现了题库管理、在线考试、试卷管理、自动阅卷评分等功能,经过初步运行测试,基本实现预期功能。

关键词:考试系统;计算机基础;SQL

信息社会对人才提出了更高的要求,熟练掌握和使用计算机已经成为信息社会的基本技能。为了培养新时期的合格人才,高职院校开设计算机基础课程,最直接的目的是培养学生应用计算机进行事务处理的能力,这也是最基本的教学要求。除此之外,计算机基础教学还承担着全面提高学生信息素质的任务,以适应社会越来越高的用人要求[1-2]。本文针对上述问题,采用Visual C#和SQL Server开发,该考试系统既可以作为大学一年级分班考试的无纸化测试系统,又可以应用于这门课程的期末考试。

1系统总体设计

1.1系统概述

本系统包括考生网络综合考试系统和模拟自测

试系统。网络综合考试系统的功能主要包括:考生信息维护、登陆、在线考试、考场信息管理、教师组卷、教师手动判卷、系统自动判卷、考生成绩管理等(如图1所示)。考生利用学号、姓名等信息登陆系统,开始考试。在规定时间内完成考试后可提交试卷,系统可以自动对试卷判分。另外,为帮助学生自我测试和学习,专门设计了单机版的考生模拟自测试系统,该系统可随机组卷,自动判分,并能将各考核点的得分情况反馈给学生,方便学生学习。本文重点介绍网络综合考试系统的设计,单机版的实现类似。计算机基础课程考试题型包括传统的选择题、判断题和打字题,另外还包括Word、Excel操作题,本系统开发使用C#语言、SQL Server数据库,采用C/S模式实现。

图1网络综合考试系统功能结构

1.2系统功能模块设计

1.2.1信息维护

考生信息:包含学生信息输入、修改、删除、导入等功能。学生基本信息可以通过系统录入,也可以通过从学校学生基本情况表中导入。学生基本信息录入后,可以由管理员用户对学生基本信息中的数据进行修改。

教师信息:包括评卷教师和监考教师的基本信息。在教师参加评阅试卷前,教师可登陆系统并被系统授予阅卷和查询成绩、分析试卷等权限。教师基本信息包含教师姓名、教师编号、性别、任教科目等。

考场信息:包括考场的人数、数量、计算机编号、A\B卷考生分配等信息。

1.2.2考试过程管理

考生登录:当考生登录到考试系统界面时,根据输入的学号和密码进行身份验证,验证通过后开始考试,否则给出错误提示信息。

考试过程:实现试卷提取、考试答案暂存、时间管理等功能。

交卷管理:实现试卷答案保存、计算机锁定、特殊情况处理。

1.2.3试卷管理

组卷与发卷:教师可以从课程难度级别,各种题型的数量等对某份试卷提出一定的要求后由系统自动生成试卷也可由教师指定出卷。同时,教师还可以对库中已有的试卷进行修改和删除,添加新试卷等。组卷完成后,在考试开始前按如下规则为每位考生生成试卷:随机生成试卷、指定单一试卷和A\B卷;

手动判卷:教师在登录后,选择自己所授的课程来阅卷,阅卷时应该挑选出未阅的试卷和试题,点击学生试卷编号或者点击已经选择的考生的某题目后显示题面和考生的答案以及该题目的标准得分,评阅后给出该题分数后再进行提交;

自动判卷:系统根据考生答案及标准答案,自动判卷并生成成绩。

1.2.4成绩管理

成绩统计:按班级或考场等选定方式统计成绩分布情况、各题得分情况。

成绩查询:按考生姓名、学号、班级等信息查询成绩。

1.3数据库设计

数据库设计需要从用户需求、数据库性能、对现实世界的模拟程度、开发应用的速度与质量等方面多加以考虑。设计一个合理的数据库,可为日后数据库的管理和维护带来便利,并能缩短系统的开发时间,减少开发成本。本系统主要数据库表的设计如下。

1)tb_questions:用于存放题目信息,包括字段qID(试题编号)、catID(类型编号)、KnowledgePoints(知识点)、ChapterID(章节编号)、qText(题目)、havePic(是否有图片)、qPicture(图片)等。

2)tb_answers:用于存放单选、多选和判断题的标准答案,包括字段qID(试题编号)、selectNum(选项号)、selectText(选项内容)、isRight(正确选项号)。

3)tb_Student:用于存放学生基本信息,包括字段stuID(学号)、stuName(姓名)、Password(登陆密码)、stuClass(学生班级)、stuColl(学生所在学院)。

4)tb_room:用于存放考场信息,包括字段roomID(考场编号)、roomName(考场名称)、teacher1(监考教师1)、teacher2(监考教师2)、teacher3(监考教师3)、Capacity(考场容量)。

5)tb_PaperSel:用于存放已出试卷,供学生抽卷使用,包括字段PaperID(试卷编号)、PaperName(试卷名称)、Danxuan1(单选1ID号),以及各题的ID号。

6)tb_ExamineeList:用于存放考生的考试情况,包括该考生的试卷信息、登陆信息、考场信息等。

2系统实现

2.1数据库相关技术

系统采用ADO技术实现C#与SQL Server的连接[3-4],采用SqlConnection类实现。

public static SqlConnection sqlconn = new; SqlConnection("server=ibm\\weapon;Uid=sa;pwd=;DataBase=DJKS");

sqlconn.Open();

数据库的查询、编辑等操作主要通过SqlDataAdapter和DataSet类实现,如:

//获得单选题目

SqlDataAdapter dataadapter = new SqlDataAdapter("select qID,qText from tb_questions where qID=" + tihao, sqlconn);

DataSet dataset = new DataSet();

dataadapter.Fill(dataset, "题目");

Question = (string)dataset.Tables["题目"].Rows[0]["qText"];

qID = Convert.ToString(dataset.Tables ["题目"].Rows[0]["qID"]);

2.2系统判分功能的设计

计算机基础课程试卷的题目有客观题和主观题。客观题包括单项选择题、多项选择题、判断题和打字题,主观题包括Word、Excel操作题。我们为每种题型设计了相应的类,以单选题为例,单选题类封装了单选题号、题目、选项、正确答案和用户答案等字段,封装了单选题初始化、单选题判分等方法。对于单选题的判分比较简单,只要将单选题的正确答案和用户的答案作比较即可(进行字符串的比较)。多选题与判断题的判分与单选题基本相同。

打字题的设计和判分与上者稍有不同,在设计时主要考虑以下问题:

1) 提示考生当前的打字位置;

2) 已完成的输入应能判别出正确的字符和错误的字符,并以不同的颜色显示;

3) 关闭控件的复制粘贴功能,防止考生通过复制粘贴完成打字题;

4) 根据考生答题正确率给分。

系统使用两个 RichTextBox控件分别用来显示打字题目和接受考生输入。前两个问题通过RichTextBox控件的TextChanged事件编程解决。在TextChanged事件中,首先利用RichTextBox. SelectionStart属性获得考生输入点,在显示题目的RichTextBox控件中使用RichTextBox. Select()方法选中对应字符,然后修改RichTextBox.SelectionBackColor属性,

改变打字题目中待打字符的颜色,以提示考生当前的打字位置。在TextChanged事件中,以字符为单位依次比较两个控件中对应字符是否相等,利用RichTextBox.Selection- Color属性,在接受考生输入的RichTextBox中修改正确和错误字符的颜色。将RichTextBox的ShortCutsEnable属性设为False,可关闭控件的快捷方式菜单,防止学生利用复制粘贴功能答题。最后将考生答案字符串和打字题目字符串进行比较,按正确率给出分数。

对于主观题的判分是通过VBA技术实现的。以Word操作题为例,.Net将Word操作封装成了类,使用动态链接库文件向用户提供接口[5-6],使用前需添加引用COM组件中的Microsoft Word 11.0 Object Library组件,另外在项目中添加引用Using Word。操作步骤如图2所示。

图2VBA操作步骤

Word应用程序及文档的打开需要实例化Word.Application 类和Word.Document类的两个对象。利用Application.Documents.Open()方法打开Word及应用程序;利用Document对象的子对象实现文件操作;利用Application.Quit()方法实现文档及程序的关闭。文件具体操作都被封装在了Word.Document类以及其子类中,结构图如图3所示。

操作题判分的依据是各得分点,系统将每道题目的得分点记录在该题的对象中。判分时,采用VBA技术读出文档的属性,比较得分点,实现判分。

3题库设计

考试系统中,题库设计是其关键。本系统在题库的设计过程中主要考虑了考试试卷组成时试题的合理性和学生考试中重复抽取题目的情况。具体设计如下:

1) 为了让考试题目能覆盖整个教材,数据库在设计的时候把教材按章节分为很多知识点,数据库中每个题目都具有知识点和章节字段。

2) 专门为知识点建立数据表,教师出题时,可以通过知识点查找试题。

3) 为了将每一个考生的试题单独存档,考生成功登陆后,会自动建立一个以考生学号命名的文件

夹,所有考生的答案均保存在该文件夹下。考试结束后,文件会以二进制流的形式存入SQL Server数据库。

4运行效果

考试系统可以安装在标准的机房(30台机器)。考试系统自动组卷、阅卷可以重复使用。大大减轻了教师的工作量,同时评分和成绩、做试题分析也可很快完成,大大提高了考试效率。另外试卷的保存在性价比低、占地空间小的磁介质上,节省了学校的财力、物力。我校4000多人的学生的计算机信息基础的试卷的保存(包括学生的试卷及其答题内容和评分细节)只需要4张光盘。考试系统还有配套的单机版练习和模拟考试软件方便学生课下练习。系统实施一学期,提高了学生的考试通过率,为计算机基础课程培养学生能力和分班教学提供有利帮助。

参考文献:

[1] 林川. 大学计算机基础课程网络考试系统的开发与应用[J]. 贵州大学学报:自然科学版,2009(26):55-59.

[2] 胡斌. 在线考试系统的设计和实现[J]. 教育信息化,2006(2):43-44.

[3] 明日科技. Visual C# 开发技术大全[M]. 北京:人民邮电出版社,2007:300-302.

[4] 张奇. Visual C# 2005 数据库项目案例导航[M]. 北京:清华大学出版社,2007:150-156.

[5] 李小军. VBA实现EXCEL数据录入有效性检查[J]. 电脑学习,2009(6):44-46.

[6] 刘新伟,王遂缠,杨晓军,等. C#对Surfer及Word的接口及应用[J]. 甘肃科技,2009(23):19-22.

Exploration and Application of Exam System for the Course of University Computer Basis

XIE Li-li, LI Qin, ZHANG Rong-xin, FU Chun

(School of Information and Electronic Engineer, Tianjin Vocational Institute, Tianjin 300410, China)

Abstract: We introduce an exam system base on Freshman different basis of computer application ability. The system not only applies to Split-class teaching of freshmen, and also applies to final exam. The system achieves test library management, online examinations, papers management, marking management, automatic marking, etc. The system has basically realized the target function after a semester test.

Key words: exam system; University Computer Basis; Structured Query Language

上一篇:计算机专业本科毕业论文案例评析及改进样例 下一篇:数据库系统原理课程中性能调优实验的设计与实...