基于混合模式的在线评教系统问卷模板设计与实现
2014-09-15廖明梅舒清录姜克芬
廖明梅,舒清录,姜克芬
(临沧师范高等专科学校信息科学与技术系,云南 临沧 677000)
学生评教是指学生对任课教师的课堂教学活动及教学效果等方面的评教活动,具体包括对教师的教学态度、教学组织、教学方法、教学水平、教学效果、作业批改情况等多方面进行的评教。学生评教是提高教师教学质量的一种重要手段,因为学生参与了教师教学的全过程,对教师的教学有着最直接、最真切的感受,所以是验证教学质量最有利的手段,也是实现教学质量控制的重要环节。学生评教的主要目的是通过评教,促进教师改进教学,通过评教让教师及时掌握自己在教学过程中存在的问题,从而促进教师根据评教结果,有针对性地改进教学,提高教学质量。而学生评教最关键的问卷模板的设计,问卷模板的构建是否科学、合理,直接影响到学生评教的结果和教师教学的积极性。
1 体系结构及开发工具选择
1.1 体系结构
在线评教系统主要应用于学生对教师的评教活动中,设计的对象主要是学校的教师 (包括任课教师和教学管理人员)和学生。教学管理人员主要是组织、控制整个评教过程进行,包括基础数据的处理、设置评教的开关、样本的抽样等较为复杂的功能,因涉及的人员较少且出于对敏感数据处理 (安全性方面考虑),所以可以考虑使用C/S结构。学生主要完成对自己所学课程 (教师)进行评教,由于学生分布位置离散,且所需功能较为单一,考虑采用B/S结构较为合适,能充分发挥此结构在时空限制上的优势。教师主要完成查看自己的被评教结果,也比较适合采用B/S结构[1]。
总的来说,评教管理端的所有功能 (如基础数据导入、评教开始开关、评教时间段设定、样本选取方式和数量选择、评教模板的生产与管理、评教数据导出等)在C/S端完成。B/S端主要完成学生评教身份验证、修改学生信息、匿名投票、查看自己投票、教师查看自己所教课程的投票情况等功能。笔者主要研究该系统中的问卷模板设计及管理。
1.2 开发工具选择
为了较好地支撑该系统架构,采用了微软技术路线,具体为.NET+SQL Server+IIS。系统建模采用开源软件Star UML。因.NET平台既可以用于开发网站,又可以用于开发Windows应用程序,B/S评教端可采用.NET平台下提供的ASP.NET来设计,C/S端可采用C#进行开发。此外,.NET平台下的ADO.NET可与数据库SQL Server 2005进行连接[2]。
2 评教问卷内容的设计
如何构建一套科学合理的问卷模板,是在线评教系统设计成功与否的关键所在[3-4]。但由于评教问卷所涉及的评教项目众多,用单一的列表方式已经没有办法将所有的评教项目完整呈现,可考虑对其进行细化分解,主要是从教师教学的角度出发,根据教学过程中影响课堂教学质量的因素,将其细化分解为3个以上的大项,然后再将每个大项继续分解为若干个小项,采用细化分解方法具有操作性简单,容易量化且易被广泛接受等优点。笔者采用结构可变、可动态生成模板的方法进行问卷模板设计。
根据不同的教学对象,采用不同的调查问卷模板,及时有效地反馈教学和学生反映,是问卷系统应具有的基本功能。该系统中,用户可以根据自己的调查对象定义不同的问卷模板,把不同模板的数据存入表中,系统通过存储过程、动态构造SQL语句 (实现由图1到图2的转换SQL语句字符串)等技术,自动把模板转换为有利于投票数据存储的物理表 (类似图3的结构),最后通过ADO.NET和VBA等技术控制Excel在客户端自动生成复杂的中国式统计报表 (类似图3的Excel电子表格)。
具体的设计方法:建立如图1所示的评教模板表,图中第1列存放的是评教的大项,第2列存放的是评教大项下的各小项 (问卷答案项),项与项之间使用#分隔开。例如 “AA”取值为 “教师课堂辅导情况”,“1#2#3”取值为 “经常#一般#偶尔”,则表示客户端评教时,在教师课堂辅导情况这个问卷项下有 “经常”、“一般”、“偶尔”3个可选项供学生选择。“BB”项,说明可以有4个选项供学生选择。采用这种方法,可以有效的控制评教内容与评教选项数的可变性,提高系统的实用性。
图1 评教模板表
图2 评教结果统计表
为了更加直观、清晰地显示问卷的结果,导出的评教结果 (生成的Excel数据)采用中国式报表格式,如图3问卷生成样式。先从图1、图2分别读取数据当前评教模板数据和评教内容,最后通过调用MS Excel模型的Application、Workbook、Worksheet、Range等类及其属性,一行一行、一个单元格一个单元格地填充Excel对象的数据。
图3 问卷生成样式
3 问卷模板的具体实现
该系统采用动态模板自动生成评教指标的方法,解决了一般系统静态评教指标或虽然能动态输入但回答选项静态的问题,很好地解决了评教内容的多变性需求。
在模板下拉列表框中选择系统已经存在的模板,点击 “显示模板内容”按钮,系统通过查询相应的数据库表并把数据显示到DataGrid中。如果某个模板已经被用于投票 (数据库中已经存在相应模板的评教数据),则不能对该模板的项目进行添加和删除 (此时2个功能按钮不能被使用)。在模板下拉列表框中选择系统已经存在的模板,点击 “设为默认模板”按钮,系统自动把此模板作为当前评教的评教模板,接受学生在线评教的数据。如果需要创建新的模板,则在项目操作区域填写模板名称和相应的评教项目以及评教选项即可。
3.1 删除指定模板
为了能对系统中的评教模板进行有效地管理,设计删除无效的模板的功能是有必要的。删除指定模板流程图如图4所示,其实现思路如下:构造SQL语句,通过数据库连接类的GetDataTableBySql()方法返回一个结果集合DT。如果DT对象不为空,说明指定表已经存在,不能进行删除,并进行相应的提示;否则此模板没有转换为相应的数据表,可以删除,构造从问卷模板表中删除某模板数据的delete SQL语句,再此调用数据库连接类的GetEffectRowCountBySql()方法返回数据库执行SQL语句的影响数,如果受影响数大于0,说明删除成功,否则删除失败,并都进行相应的提示信息。
3.2 生成模板对应的数据表
模板创建好了之后,并不能马上进行投票,必须把其转换为规定的数据表,才能实现数据的持久存储,并实现学生在线投票数据库的存储。利用模板生成对应数据表的流程图如图5所示,其实现思路说明如下:
通过CheckedListBox控件的Checke dIndices.Count属性,取得用户选择要产生数据库表的模板名称数量rows;判断rows的取值情况,如果rows小于等于0,则说明没有选择要生成数据表的模板名称,给出相应的提示信息,程序结束;否则逐个遍历CheckedListBox的CheckedItem,并对其内容进行处理。
取出模板名称对应编号的前4个字符,构造查询问卷内容表中此模板编号的SQL语言,并调用数据访问类的GetDataTable-BySql()方法,并返回DataTable类型的记录集DT;如果DT不为空且其包含的记录数不为零,说明此模板存在,否则程序结束;
逐行取出模板项目并分解 (项目的评教项使用#作为分隔符),然后把项目与此项目的评教项组合,组成 “项目_评教项”以及规定数据类型 (int)和默认值 (值为0),直到所有行被处理完成,生成一串临时字符串temp;在temp的前面加上字符串create table,在temp的画后面加入系部名称varchar(30)、班级编号、班级名称、学期、教师编号、教师姓名、课程编、回收问卷、回收率等需要记录的重要信息。
调用数据库类的RunProcedureExecuteReader()方法,执行带参数的存储过程sp_createTagtable,通过存储过程返回状态值,给出执行成功或失败的提示信息。实现效果如图6所示。
3.3 管理模板实现效果管理模板实现效果如图7所示。
1)显示模板内容 就是把当前选中的评价模板内容显示出来,供浏览、修改等后期工作。
图4 删除指定模板流程图
图5 利用模板生成数据表的流程图
2)设为默认模板 就是把当前选中的模板作为学生评教操作的模板。
3)创建新的模板 可以根据评价体系的需求,创建新的模板,用于当前或以后客户端评教。
4)删除选择模板 把不需要的模板删除。
图7 模板管理效果图
4 结语
基于B/S和C/S的在线评教系统的大部分功能已实现,现已投入试运行,由教务管理人员、学生和教师进行了测试和使用,运行的结果得到了学生和教务管理人员的认可。分析反馈回来的信息,认为该系统还存在如下的问题,比如系统评教维数不够,也就是问卷模板设计的不够丰富以及报表导出的格式较为单一,这有待进一步完善。
[1]舒清录,廖明梅 .基于B/S和C/S架构的多层在线评教系统设计 [J].鸡西大学学报,2012(10):67-68.
[2]舒清录,廖明梅 .基于.NET平台的Excel报表研究与实现 [J].大理学院学报,2012(4):18-21.
[3]杜双 .我国高校学生评教指标体系研究 [D].大连:大连理工大学,2011.
[4]舒清录,廖明梅 .在线评教系统设计中若干关键问题探讨 [J].中国科技创新,2011(2):46-48.