大学化学, 2016, 31(1): 11-17 doi: 10.3866/pku.DXHX20160111

教学研究与改革

有机化学网上考试系统的开发和实践

刘军,1, 田斌2, 吴正刚3

Development and Practice of Organic Chemistry for Online-Examination System

LIU Jun,1, TIAN Bin2, WU Zheng-Gang3

通讯作者: 刘军, Email: 510635646@QQ.com

摘要

以微软公司SharePoint应用软件为开发平台,研究开发了有机化学网上考试系统。系统题库涵盖了有机化学的基本知识点,题型分类齐全,使用者还可以根据各自不同的需求,对题库进行添加和修改。可直接网上答题考试,即时可见考试结果。不仅可满足学生自主性学习的考试需求,同时也方便教师对学生自主性学习的管理和监督。

关键词: 有机化学 ; 自主性学习 ; 网上考试 ; SharePoint软件

Abstract

Based on Microsoft SharePoint application development platform, we developed the online-examination system for organic chemistry.Questions, covering the basic knowledge of organic chemistry, are given in a variety of forms.Users are allowed to modify the question bank according to their needs, and online testing is also available.This system can not only meet the students' needs of independent learning but also is convenient for teachers to manage and supervise students' learning conditions.

Keywords: Organic chemistry ; Independent learning ; Online-examination ; SharePoint software

PDF (3090KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

刘军, 田斌, 吴正刚. 有机化学网上考试系统的开发和实践. 大学化学[J], 2016, 31(1): 11-17 doi:10.3866/pku.DXHX20160111

LIU Jun, TIAN Bin, WU Zheng-Gang. Development and Practice of Organic Chemistry for Online-Examination System. University Chemistry[J], 2016, 31(1): 11-17 doi:10.3866/pku.DXHX20160111

现代教育理论强调学习过程中学生的主体作用,这种新的教育模式已成为我国教育改革的主流[1]。在这种教育理念的指导下,近年来,有机化学基础课的教学方法也发生很大的改变,课堂教学时数大大减少,许多的知识内容改由学生的自主性学习来完成。为了满足学生自主性学习的考核,同时方便教师对学生学习的管理,我们研究开发了有机化学网上考试系统。

1 网上考试系统的结构与功能

有机化学课程网上考试系统是由“课程管理员”、“教师空间”、“学生空间”3个不同功能的子站组成的网站集。与之对应配置了3个用户组:有机化学教师组,有机化学学生组,有机化学课程管理员。

1.1 课程管理员

课程管理员负责对系统网站的基础数据维护,如题库管理、试卷库管理和任课教师信息维护等。

1.1.1 题库的建立
1.1.1.1 题目类型及答题方式

根据大纲的要求,将知识点编写成各种类型的测试题作为系统题库。题库根据教材[2]内容分为14章,每章约有50道左右测试题,包含以下主要知识点题型分类:(1)有机化学基本概念;(2)有机化合物的命名;(3)有机化合物理化性质的比较;(4)有机化合物的鉴别;(5)完成有机反应式;(6)有机化合物的结构推导等。根据用户需要,可添加章节及题型分类。

全部测试题为客观题,设A、B、C、D共4个答案,其中之一为正确答案。在答案的设置上,主要针对学生学习中最容易出错的几个方面来进行设置,以达到准确考查学生对知识点掌握程度的目的。例如,下列化合物命名:

设置的4个可选择答案为:

A. 1-溴-2, 2, 3, 3-四甲基己烷;        B. 2, 2, 3, 3-四甲基-1-溴己烷;

C. 2, 2, 3-三甲基-3-丙基-1-溴丁烷;    D. 2, 2, 3, 3-四甲基-1-溴-己烷

正确答案为B,另外3个答案A、C和D均是学生较典型的错误的命名。

1.1.1.2 题库结构

题库按章节形成的纵向层次对试题进行归档管理,同时支持按题型进行横向归类(图1)。

图1

图1   题库的结构


1.1.1.3 题库编辑

系统试题以图片方式存储,先将每道试题制作成jpg格式图片,由课程管理员上传到题库中。为保证页面美观,每张图片的大小应基本一致,这样上传的图片中的文字大小基本相同。管理员可在“分类索引”列表选项中勾选,将试题按题型进行专项归类。试题属于“完成反应式”的题型分类,在编辑题库时,将其在分类索引中的“完成反应式”项目栏中勾选,如图2所示。将试题进行题型归类后,可在生成试卷时按题型分类来进行。

图2

图2   题库的编辑


目前系统中试题数量约1000题左右,可基本满足学生的学习测试。题库中的试题可进行删除、修改、添加等编辑操作,以不断满足新的学习要求。

1.1.2 试卷管理

课程管理员可按教学内容和考试要求生成静态或动态试卷,以“试卷库列表”形式供任课教师选用。

1.1.2.1 静态试卷模板

静态试卷模板为题目固定的试卷,课程管理员可按章节分类或题型分类选择若干试题生成试卷。学生选择静态试卷后,每人所见的试卷是相同的。静态试卷主要用于教师对学生的阶段性考试,如单元、期中及期末考试等。

1.1.2.2 动态试卷模板

课程管理员可按章节分类或题型分类选择试题组成动态试卷模板。选择这种模式时,系统将自动从题库中随机抽取相应试题生成试卷。学生选择动态试卷进行测试时,每人所见的试卷是不相同的。动态试卷适用于学生的自我测试,如进行单元测试;或针对某一类型的知识点的测试,如有机化合物的命名、有机化合物的合成等。

1.1.3 任课教师信息维护

课程管理员可对任课教师信息进行维护,为任课老师创建用户账号。创建成功后,系统会将其加入到有机化学教师组中,任课教师具有访问“教师空间”的权限。

1.2 教师空间

任课教师登录进入“教师空间”后,可进行学生管理(如执行学生名单导入)和教学管理。

1.2.1 学生名单导入

任课教师根据教学任务书,首先创建课头索引,创建成功后可导入学生名单的Excel文件。系统将学生名单读入后,会为学生创建账号,加入到有机化学学生组,并与任课教师绑定,学生登录后具有访问“学生空间”的权限。

1.2.2 教学管理

课程考试计划具有生成试卷和查询学生作业功能。任课教师可浏览由课程管理员生成的“试卷库列表”,从“试卷库列表”中勾取试卷,然后点击“添加”,所选择的试卷就可加入到个人“课程试卷索引”中。与该任课教师绑定的学生将可以看到教师的个人试卷列表中的试卷,不同的任课教师可根据自己的要求来选择试卷。任课教师可为试卷设置截止日期,作为学生答题的最后期限,超过时间后,试卷对学生将不可见。

系统具有查询学生作业功能,任课教师可随时浏览查询学生考试情况,并可导出学生考试成绩统计的电子表格,作为综合评分依据。

1.3 学生空间

学生登录网站并进行课程注册后,可进入“学生空间”。进入“学生空间”后,可看到由任课教师发布的试卷;选择试卷后可进行网上答题。在结束答题时,如选择以“草稿”方式保存,下次可重新答题或修改答案,以方便学生反复进行练习;若选择“提交”,则表示完成测试,不能再修改,这时页面会出现考试结果,学生可即时了解到自己的学习情况(图3)。当点击做错的题目时,会出现该题目的正确答案及简要解答过程,以帮助学生改正错误。

图3

图3   网上考试及考试结果


2 测试系统的开发技术

本系统基于B/S多层架构体系开发,开发环境是微软公司的Microsoft VisualStudio.NET 2012,服务器操作系统采用Microsoft Windows Server 2012,采用.NET Framework 4.0搭建客户端,采用.NET Framework 3.5构建服务端组件。系统在扩展性、安全性、稳定性、重用性等方面具有得天独厚的优势,并可通过Microsoft Office SharePoint Server 2013发布数据。

Microsoft Office SharePoint Server 2013是一个基于Windows SharePoint Services 3.0(WSS)技术的新型服务器应用程序[3]。SharePoint门户构建在Web应用程序的基础上,对应于一个独立的网站集。Web应用程序构建在以IIS提供的ASP.NET 4.0为支持的服务器场环境中,并以SQL Server 2012数据库存储数据。网站集由顶级网站及其所属的子网站组成;每个子网站可以包含自己的子网站以及列表和库等内容。SharePoint门户提供了完整的基于角色的访问控制体系,该体系是基于SharePoint门户自身的体系结构和基于角色的访问控制模型,并进行相应的扩展来实现的。SharePoint门户体系为树状结构,具有良好的层次性和逻辑性[4]。用户在各个层次的网站中可以拥有不同的角色,这些角色之间既可以保持相对的独立,也可以存在一定的继承关系。

2.1 用户认证

SharePoint提供两种认证方式:Windows认证和表单认证。Windows认证的用户信息保存在Active Directory中,需要系统管理员以手工方式加入,一般只用于SharePoint网站系统管理;表单认证基于AspNetSqlMembershipProvider实现,适用于大批量用户管理。本系统采用表单认证。

2.1.1 创建认证用户数据库

ASP.NET包括一个名为Aspnet_regsql.exe的工具,该工具用于在SQL Server上创建提供用户认证信息的数据库。Aspnet_regsql.exe工具位于服务器上的\WINDOWS\Microsoft.NET\Framework\版本号文件夹中。运行Aspnet_regsql.exe程序,便可在指定的SQL Server上创建一个名为“aspnetdb”的数据库[5],对应本考试系统的课程网站的所有用户账号信息都保存在该数据库中。

2.1.2 为课程网站配置表单认证

登录运行SharePoint的Windows Server,打开IIS管理器,选择运行课程网站的SharePoint站点,做如下配置操作,便可为课程网站配置表单认证。操作方法如下:

(1)配置“连接字符串”:打开“连接字符串”配置页面,在操作菜单中点击“添加”以创建一个新的用于连接到在上一步新建的用于存储用户凭据的数据库的连接字符串,并将其命名为aspnet。

(2)配置“提供程序”:打开“提供程序”配置页面,为SharePoint站点添加角色提供程序与用户提供程序。在“功能”下拉框中选择“.NET角色”,然后点击操作面板内的“添加”新建一个角色提供程序,将其类型设为“SqlRoleProvider”,然后将“ConnectionStringName”设置为aspnet。在“功能”下拉框中,选择“.NET用户”,然后添加一个用户提供程序,其类型为“SqlMembershipProvider”,并且同样将连接字符串设置为aspnet。

完成上述配置操作后,系统将修改SharePoint站点的web.xml配置文件,使其支持表单认证,并从aspnetdb中读取用户身份信息。

2.2 课程网站的访问控制

学生在SharePoint网站上登录后,只是一般用户,只能浏览网站一般信息,还不能访问相关课程的学生空间子网站进行在线考试。为了方便任课教师对学生的管理及对系统的版权保护,本系统采取了访问控制技术来进行限制,选课学生完成必要的选课步骤并得到任课教师确认后,获得一个唯一授权激活码,通过激活操作,才能加入到相关课程学生组,进入“学生空间”进行考试。

2.2.1 激活码的生成

本系统采用MD5加密生成激活码。MD5是一种单向散列函数算法,可对任意长度字符串进行运算,产生128位散列值。由于MD5算法的复杂性和不可逆性,常用于口令加密和注册保护。

具体算法如下:(1)用随机数生成一定数量(按学生数量)的字符串;(2)用MD5函数对字符串加密,生成加密字串,从中取16位作为激活码。

String s_active_code; //未加密字符串

System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5Crypto ServiceProvider();

//生成加密字符串

byte[] bytes = System.Text.Encoding.UTF8.GetBytes(s_active_code);

bytes = md5.ComputeHash(bytes);

md5.Clear();

//从加密字符串取16位作激活码

sn_code = BitConverter.ToString(bytes).Replace("-", "").Substring(0, 16);

//将激活码写入数据库

a_ sn_code.Insert(jlxh, s_class_id, sn_code, "1");

2.2.2 开发课程激活功能部件

使用开发工具vs2013创建一个可视Web部件(图4)。

图4

图4   课程授权码激活的可视Web部件


2.2.3 特权提升

学生作为一般用户登录SharePoint网站进行激活操作时,没有管理用户组的操作权限,在其提交行为的事件代码中,需要进行特权提升,通过委托方式将当前登录用户添加到学生组中。特权提升是Windows SharePoint Services 3.0中增加的一项功能,使当前用户能够使用更高的特权级别在代码中以编程方式执行操作。相关代码如下:

//获得当前SharePoint网站集

SPSite site = new SPSite("http://192.168.5.12");

//获得当前网站

SPWeb web = site.OpenWeb();

//获得当前登录用户对象

SPUser ss_user = web.CurrentUser;

//获得当前登录用户名

string username = ss_user.LoginName.ToString();

//以代理方式提升操作权限

SPSecurity.RunWithElevatedPrivileges(delegate()

{

SPSite site1 = new SPSite("http://192.168.5.12");

SPWeb web1 = site.OpenWeb();

//假设学生组的ID为57

SPGroup oGroup = web1.SiteGroups.GetByID(57);

//将当前用户加入到学生组

oGroup.AddUser(ss_user.LoginName, ss_user.Email, ss_user.Name, ss_user.Notes);

});

当选课学生完成激活操作后,便成为学生组用户,具有访问学生空间进行网上考试的权限。课程账号激活流程如图5所示。

图5

图5   课程授权激活码的激活流程


3 系统的特点和使用效果

有机化学网上考试系统具有以下特点:

(1)内容丰富。其测试题基本涵盖了基础有机化学的知识点,题型分类齐全,客观性答案设置合理,可以全面考核学生对知识点的掌握情况。

(2)灵活性好。使用者可以根据各自不同的需求,对题库进行添加和修改,因而有更广泛的适用面,方便产品的推广。

(3)操作性好。任课教师只需简单操作,即可进行学生管理、试卷管理和成绩管理。学生可在线网上考试,即时可见考试结果,使用非常方便。

本套系统投入使用后,受到教师和学生的欢迎。许多学生表示,以前自我学习后对一些知识点的认识比较模糊,不知道是不是掌握了,通过网上测试,即时反馈,很方便地了解了自己的学习情况,对学习有很大的帮助;而教师则可以通过系统实现对学生自主性学习的管理和监督。

随着考试系统中素材的不断更新,系统将进一步完善。当题目数量增加到一定程度时,将考虑难度系数的因素。在生成试卷时,既可以根据相关知识点合理分配试题比例,也可以针对不同学习层次的学生,选择合适的难度系数进行有难度梯度的练习。

参考文献

张树永; 王玉枝; 苑世领. 大学化学, 2014, 29 (2), 14.

[本文引用: 1]

刘军. 有机化学, 第2版 武汉: 武汉理工大学出版社, 2014,

[本文引用: 1]

谭茂.程序员, 2010, No. 4, 126.

[本文引用: 1]

吴卫.自动化与信息工程, 2009, No. 4, 38.

[本文引用: 1]

段洪秀,燕剑.电脑编程技巧与维护, 2013, No. 20, 12.

[本文引用: 1]

/