冯重
高校学生素质综合考评(以下简称综合考评)是笔者所在学院对学生实行科学管理和教育的一项重要手段。它通过对学生的思想政治素质、专业素质、文化素质、以及身心素质诸方面的考评,综合分析学生在校表现和各种素质,为学生发展提供数量基础。同时,综合考评也是评定学生奖学金、授予荣誉称号和推荐毕业生就业等工作的重要依据。
综合考评的积分计算是一项繁琐的工作,要求工作人员细致、耐心。在每年做综合考评时,各班负责综合考评的同学和老师,一般都使用计算器或Excel办公软件,花费大量的时间计算。而且,在使用这些工具的过程中存在着较多的手工操作,因此数据的准确性往往不尽如人意。另外,如果操作过程中需要对已输入的数据进行修改,考评工作更显麻烦。
为此,笔者按照要求用数据库开发了一个综合考评信息系统。该信息系统能够实现以下要求:相应的数据只输入一次、检查所输入的数据是否在有效范围内、可修改已输入的数据、浏览输出的数据、预览和打印符合要求的各种报表。
综合考评指标分为4个一级指标和约30个二级指标,旨在对学生各方面素质进行全面考查。综合考评结果以积分体现,总积分由占不同比例的思想政治素质积分、专业素质积分、文化素质积分和身心素质积分构成。
思想政治素质分别由基本表现、社会实践、社会工作和奖惩记载等指标组成,各指标有规定的分值分布;其中基本表现的分数由学生互评、班级代表评议和班主任评议三部分组成,各部分分别占有不同的权重。
学生互评由思想觉悟、学习态度、劳动态度、社会实践等若干指标组成,班级中每个学生都要给其他同学评价;同时,还要求在计算分数时,能够去掉N个最高分和N个最低分,其中N<15%班级学生人数。该指标数据较多,实现起来相对复杂。
专业素质由课程考核成绩、大学英语水平、计算机应用水平、学科竞赛获奖等指标组成。各指标分别采用分值加权或直接加分的方式计入专业素质总分。
文化素质和身心素质分别由一些具体指标构成,这些指标的分数来自体育课成绩、学生互评中的某些指标、以及参加各种活动的情况等。
班级综合考评要求在报表中列出班级每个学生的思想政治素质积分、专业素质积分、文化素质积分、身心素质积分和综合素质积分,同时还要在报表中列出学生在各项积分中的排名情况。
本信息系统的开发采用面向对象方法。系统虽小,但在系统分析中也体现出了统一过程的开发方法,如用例驱动、迭代和增量。系统建模采用统一建模语言UML,并结合了统一过程中所介绍的一些建模表示法。
综合考评信息系统的主要用例的用例图如图1所示。
图1 综合考评信息系统的主要用例的用例图
图2是在分析工作中得到的系统初始类图。
图2 初始类图
图3是在对“输入学生互评分数”用例进行用例实现时得到的顺序图。图4是在对“输出综合素质”用例进行用例实现时得到的顺序图。
图3 输入学生互评分数用例的顺序图
由于综合考评工作以班级为单位进行,所以开发单机版的程序就可以满足要求。首先,由于最终只需上报班级综合素质考评表,不需要信息系统中的数据共享,因此采用单机版不存在数据的共享问题和安全问题。其次,如果采用客户机/服务器(C/S)或浏览器/服务器(B/S)结构,需要有专门人员对服务器端数据库进行维护,如在设置数据的访问权限上。第三,如需汇总全院的数据,可采用班级报盘的方式解决问题。
在选择数据库管理系统方面,笔者选择了Visual FoxPro 6.0。该软件是一个比较有特点的开发工具。它既继承了dBASE的简单、易学、易用的传统,又具有Visual的面向对象、功能性强、界面设计直观易用的优点。用它开发的程序功能强大而灵活,开发周期短,比较容易达到目的。另外,它还可以对自身开发的程序进行加密,确保安全。
图4 输出综合素质用例的顺序图
输入数据模块是综合考评系统的主要模块之一,它承担着接收用户将各种数据输入系统的任务。它的第一个窗口是选择班级和所要输入的数据,如图5所示。
图6是输入学生互评分数的窗口。该窗口根据班级学生人数管理着输入学生互评表的页数,窗口上的控件显示与输入页数有关的信息。另外,该窗口还提供修正已输入的分数的功能。输入课程成绩的窗口如图7所示,它既可以输入新的成绩,又可以修改已输入的成绩。
输出数据模块是综合考评系统的另一主要模块,它用于根据用户的选择输出各种积分。它的第一个窗口是选择班级和所要输出的积分,如图8所示。系统根据所选班级的人数,按班级学生总人数的15%计算最大的N值,供用户在此范围内进行选择,如图9所示。
图10是浏览综合素质积分的窗口。用户可以在此界面浏览学生的各项积分和排名情况。当焦点落在表格控件的某单元格上时,在窗口的姓名控件位置显示其对应的学生姓名,以方便查看数据。该窗口还有几个命令按钮,用于预览打印报表、打印报表、以及将数据以多种格式进行导出。
图5 输入数据选择窗口
图6 输入学生互评分数窗口
图7 输入课程成绩窗口
图8 输出数据选择窗口
图9 选择N值窗口
图10 浏览综合素质积分窗口
图11是班级综合素质考评表的打印预览。该报表显示了学生的各项积分和排名情况。从该报表可以看到,在同一种积分中,有些学生的分数是相同的,因此名次也是相同的。该报表还给出了N值的选择情况及报表的打印时间,以方便了解报表的生成情况。
下面是确定学生的某项积分的排名算法:
(1)将数据库表中某项未排名次的积分的字段值复制到程序的某个数组中。
(2)对该数组中的数据进行降序排序。
(3)取出数组中第一个元素存放的数据(最大的积分值),查询表中该值所在的记录,找到该记录后,将名次计数器的值(此时为1)写入名次字段。
(4)取出数组中下一个元素存放的数据,查询表中该值所在的记录,找到该记录后分两种情况进行处理:第一种情况,即记录的名次字段为空,说明该积分值还没有对应的名次,此时先将名次计数器的值加1,再将名次计数器的值写入该字段;第二种情况,即记录的名次字段不为空,说明该积分值已有对应的名次了(出现名次并列情况),此时继续查找该积分值所对应的下一条记录的名次字段,如果还不为空,则继续找下去,直到找到名次字段为空的记录,将名次计数器的值写入该字段。
(5)继续取出数组中的下一个元素的值,按(4)所述的方法进行处理,直到数组中所有数据遍历完毕。
近年,随着综合考评信息系统的投入使用,学院综合考评工作得到了明显改善,从以下结果可以说明。第一,省时。据统计,一个班级的综合考评,从输入各项分数,到最终报表打印完成,只用一天时间。第二,报表格式统一,数据清楚、准确。第三,信度提高。各班级综合考评标准一致,计算方法一致,为后续的各项评价工作打下了良好的基础。
图11 综合素质考评表的打印预览
接下来,笔者将进一步思考如何以各个班级综合考评数据为基础,用数据仓库和数据挖掘等工具对全院各个班级历年的综合考评数据进行分析,为管理促进学生发展提供有价值的信息,这将是一项有意义的工作。
综合考评是人力资源管理中具有实际意义的管理技术之一。本系统开发简便,成本低、效率高,不但可以在学生管理中使用,而且可以迁移到各类人力资源管理中。该系统既克服了手工统计分析的烦琐、不准确、不及时及无法实现对大量数据设置选择条件(如权重限制、剔除无效数据、去掉一定比例最高分和最低分限制)等不足,又可以克服大型系统管理复杂且仅使用其中少部分功能造成的投资浪费,是具有价值和发展潜力的研究项目。
[1] Stephen R.Schach.陈宗斌,译.面向对象分析与设计导论——使用UML和统一过程[M].北京:高等教育出版社.2006.
[2] Craig Larman.UML和模式应用(原书第3版)[M].李洋,郑,等,译.北京:机械工业出版社.2006.
[3] Patrick Grassle,Henriette Baumann,Philippe Baumann.徐锋,译.UML 2.0实战——项目开发指南[M].北京:人民邮电出版社.2007.
[4] Russ Miles,Kim Hamilton.汪青青,译.UML 2.0学习指南[M].北京:清华大学出版社.2007.
[5] Ivar Jacobson,Grady Booch,James Rumbaugh.统一软件开发过程(影印版)[M].北京:清华大学出版社.2005.
[6] 刘瑞新,文成林,汪远征.Visual FoxPro程序设计教程[M].北京:机械工业出版社.2001.
[7] 王珊,陈红.数据库系统原理教程[M].北京:清华大学出版社.1998.