基于WAMP 技术和MVC 框架模式的高职评教系统设计
2022-07-11韦敏玉
韦敏玉
(梧州职业学院 广西壮族自治区梧州市 543000)
评教的结果对于完善教学监控体制、提升任课教师教学水平起到极其重要的作用,有效的评教对教学质量有积极地导向、促进和调控的作用。很大一部分高等职业院校直接采用系统开发商提供现成的评教系统,将系统中的评教问卷生搬硬套的运用于学校自身的评教工作中,根本没有针对职业院校的办学特点、办学定位、师资队伍的现状和发展计划对评教指标体系和评教问卷进行科学、合理的修改、设置,导致评教结果无法有效的发现问题、反馈问题,大大削弱评教结果对教学质量积极地导向、促进和调控的作用。
采用WAMP 技术和MVC 框架模式的解决方案,可实现快速、便捷地制作出多份、不同的、有针对性的个性化问卷的评教系统,能有目的地引导学生客观评价教师的教学质量,评教的结果也能更真实的反映教师的教学质量。
1 需求分析
作者通过问卷调查或实地调研的方式,对多个高职院校的评教工作进行了调查,加上作者在本职岗位上的经验,总结出,为满足高职院校评教教工作实际需求,整理出本系统应具备以下功能:
(1)平台各功能模块的设计要合理、考虑使用者的舒适感。
(2)网站分为前台和后台,其中,前台主要运用于评教和查看评教结果分析,而后台主要运用于管理系统中的各类数据和设置个性化的问卷。
(3)网站后台具有管理员登录、退出功能。
(4)管理员能够对教师、学生、课程等信息进行管理(修改、添加、删除),支持批量上传功能。
(5)管理员能够根据需要设置个性化的问卷。
(6)学生可以对当前进行的问卷调查进行评教。
(7)学生评教工作完毕后,教师、系部管理员、系统管理员和领导可在线查询对应其权限的评教结果。
(8)系统管理员、系部管理员可以查看评教的进度数据。
2 系统分析
2.1 系统功能结构
根据实际教学管理过程中的工作流程及工作岗位的设置情况,本系统的总体结构如图1 所示。
图1:高职评教系统总体结构图
其中系统管理员:这是系统核心的角色,发挥着保障系统正常运转的一个重要作用和桥梁作用。它的主要功能有问卷管理、设置权限、查看评教进度、查看和下载本校评教数据以及数据分析、管理自己的用户密码五个功能。其中四个功能模块的详细介绍如下:
(1)问卷管理:该模块是该系统核心部分,也是数据挖掘结果的主要应用部分。管理员充分利用数据挖掘的成果。在此模块可以制作出个性化的调查问卷。例如,根据评教结果,可将对评教结果关联性强的因素纳入调查项目,设置项目与项目之间的逻辑关系,使得问卷更灵活、更实用。在该模块,可以对问卷进行全新的设计、对使用过的问卷模板进行编辑、发布问卷(在规定的时间段内发布有效)等重要操作。
(2)设置权限:该模块主要是通过逐条设置或批量设置两种方式设置用户以任课教师或学生或系部管理员或领导或系统管理员的身份登录系统,确保不同的用户身份登录到不同的操作界面,使用户拥有对应的用户功能。同时,可以对已有用户进行删除、修改、删除等操作。
(3)数据管理:该模块主要是通过逐条添加或批量添加两种方式添加任课教师或学生或系部管理员或领导或系统管理员信息,确保不同的用户身份登录到不同的操作界面,使用户拥有对应的用户功能。同时,可以对已有用户进行逐条删除、修改操作。同时,该模块还对授课数据进行逐条添加或批量添加,也进行逐条删除、修改操作。数据管理模块功能图如图2 所示。
图2:数据管理模块功能图
(4)查看评教进度:在问卷发布之后,系统管理还要关注评教工作开展的情况,督促或提醒工作进展比较慢或未按时开展此项工作的系部,保障评教工作的正常开展。
(5)查看和下载本校评教数据以及数据分析:系统管理员可以在查看评教查看和下载本校、本系部评教数据的分析结果,该分析结果是指从教学态度、教学方法、教学组织安排、教学效果和教师的专业实操技能的掌握情况等五个能力方面去分析。
2.2 系统开发环境
WAMP 由Windows、Apache、MySQL 和PHP 组合而成,经常被用来搭建动态网站。这几个组成部分本身各自独立,各有特长,在各自的同类中都属于翘首。由于经常被组合在一起使用,犹如强强联合,共同组成了一个功能强大的开发平台。
在Windows 服务器上安装Apache 服务器、MySQL 数据库软件和PHP 编程软件,我们称这样的一个开发环境就是WAMP,提供配置Web 服务器、搭建动态网站等一站式服务,快速是它的突出特点。AMP 拥有良好的兼容度,配置环境友好,搭建测试环境方便,集成使用可组建起强大的Web 应用程序平台。PHP 集多种开发语言的特点于一身,加上自身独特的语法,更为灵活,它既可方便地嵌套于HTML 文档中执行,同时,它还支持绝大多数的数据库和操作系统。MySQL 数据库采用完全多线程化线程,可移植性能好,高速运转。
本系统的结构是建立在B/S 架构的模式下,依托了WAMP 平台而设计的。它可用两种结构实现,一种是,数据库和WEB 分别搭建在不同的服务器上,另外一种是,数据库和WEB 搭建在同一个服务器上。图3 为高职评教系统结构示意图。
图3:高职评教系统结构示意图
通过WAMP 技术(Windows+Apache+MySQL+PHP)建立评教系统,实现评教过程智能化,更重要是使数据挖掘的多维化评教结果更高效的展示,提高评教结果在教学管理中的价值,使评教结果更有效地为教学管理者的决策服务。
3 MVC框架模式
完成以上需求分析和系统分析之后,确定一个合适的开发模式尤为重要。经过认真比较,作者选择MVC 框架模式来执行项目的开发。选择MVC 的主要原因是:目前,MVC是一种流行的软件开发模式。它可以将程序分为功能实现、数据处理和界面显示三大部分,使开发人员在开发复杂的项目时,可以专注于某一个方面,从而进一步提高开发效率和项目质量。
MVC 这个名字是由Model(模型)、View(视图)、Controller(控制器)这3 个单词的首字母组成的,它表示将软件系统分成3 个核心部件,这三个核心部件能处理各自的任务。
3.1 MVC的工作流程
在Web 应用开发中,MVC 的作用是将开发的内容分为三部分,分别是专门处理数据的模型部分,专门处理交互程序的控制器和专门处理网页的部分,这三部分分别开发,极大的降低开发的复杂度,大大提高开发的速度。工程流程如图4 所示。
图4:MVC 的工作流程
3.2 MVC框架
框架在软件系统中是一个代码骨架,其作用是通过设计一个所有项目通用的底层代码,来提高项目的开发效率。以盖房子来说,框架相当于已经盖好的房子,但是内部没有装修,当需要开一个水果店时,可以把这个房子装修成水果店,而不需要重新盖一个房子。
MVC 由处理当前业务逻辑的应用(Application)和封装底层代码的框架(Framework)两部分组成。MVC 框架大致包括如下几个重要的内容。
3.2.1 项目结构
在上一节MVC 的工作流程中提到的了Model(模型)、View(视图)、Controller(控制器),创建好这些文件后,不能将他们保存到同一个目录中,而是要根据功能的不同,分别放置到相应的目录下去,便于管理和开发系统。
3.2.2 框架基础类
框架基础类就是用来封装载入类库、请求分发等操作。一般是在项目的初始化阶段完成框架基础类的封装。
图5 所示,在包括了前台和后台的软件系统与入口文件与的中间隔着框架基础类。
图5:框架基础类工作流程
4 数据库的设计
应用管理系统都是由强大的数据库和可视化的功能模块两部分组成的。因此,数据库是应用管理系统不可替代的组成部分,是应管理系统的好坏的关键,它将直接影响到管理系统的功能性和可扩展性。
MySQL 的具备可移植性好、具有强大的数据保护功能、提供多种存储引擎、功能强大、支持大型数据库和运行速度快等主要特点,被广泛地应用在Internet 的中小型网站上。
4.1 系统面向的用户群体
根据需求分析得知,该评教系统是面向高等职业院校的学生、任课教师、系统管理员、系部管理员和领导五类用户。
4.2 系统分析
前台用户评教、查看评教结果主要包括学生进行问卷调查模块、评教结果的展示模块。
后台信息管理主要包括维护管理员信息模块、维护学生信息、维护教师信息、维护课程信息、设置用户的权限、维护问卷信息等6 个模块。
4.3 建立系统数据模型
对软件的操作,实际上最终实际功能是对数据的操作。因此,在实现功能模板前,必须先对数据进行分析、设计和实现。关系数据模型优点特别突出,受到很多开发者的青睐。
关系模型优点:
(1)关系模型和非关系模型不同,它是建立在严格的数学概念的基础上的。
(2)关系模型的概念单一。无论实体还是实体之间的联系都用关系来表示。对数据库的检索和更新结果也是关系(即表)。所以其数据结构简单、清晰,用户易懂易用。
(3)数据的存取路径对用户透明,简化了程序员的工作和数据库开发工作。
4.3.1 E-R 图
根据前文的需求分析和系统分析,找出需要保存的信息数据即实体,并将其转化为原始数据(属性类型)形式。E-R图,也称实体-联系图(Entity Relationship Diagram),是一种可展示出实体、实体属性和之间的联系的方法,它属于概念模型。本系统E-R 图如图6 所示。
图6:项目中各实体的联系图
4.3.2 数据库和数据表
搭建好MySQL 服务器后,运用Navicat Premium 数据库管理工具创建一个名为“pingjiao”的数据库。并根据E-R图设计表本系统所需的基本数据表包括班级表、学生表、系部表、系部管理员表、教师表、课程表、评教结果表和管理员共8 个表。
5 公共文件的实现
我们将系统在运行过程中,被多个页面使用到的代码统一编写到一个单独的文件里,该文件就是公共文件。其他页面只需要通过require 或者include 语句将该文件包含进来,就可以轻松实现指定的功能,如此一来,即减轻了编程人员的工作量,又大大降低编程过程中的错误。
本系主要建立了数据库链接和管理类文件、分页类文件、执行类的实例化文件、CSS 样式表文件和JS 脚本文件等。现就主要的几个公共文件进行介绍。
5.1 数据库链接和管理类文件
在数据库链接、管理类文件中定义了ConDB 数据库链接类和AdminDB 数据库管理类两个类,它们的功能分别是,ConDB 数据库链接类实现了通过PDO 链接本系统MySQL数据库pingjiao;AdminDB 数据库管理类实现了使用PDO类库中的方法执行对数据库中的数据的查询、添加、更新和删除操作。
5.2 分页类文件
在管理类文件里定义了SepPage 分页类,它的功能是分页输出各项查询结果。
5.3 执行类的实例化文件
在此文件中,可通过require 语句将数据库链接和管理类文件、分页类文件包含进来,具体执行的是实例化的操作,同时定义返回对象。在完成数据库链接类的实例化后,可通过调用其中的GetConnId 方法来链接数据库。
5.4 CSS样式表文件
在进行系统页面设计的时候,如恰当的运用CSS 样式,可使页面统一风格、精简代码、大大提高了开发的整体速度和网站访问的速度。
5.5 JavaScript脚本文件
我们在处理用户提交的信息并动态地向浏览器返回处理结果,选择运用JavaScript 脚本语言来实现。例如,为了避免用户操作不当,误删除数据库信息,当用户点击了删除按钮时,则先调用JavaScript 脚本文件中的delete()函数,当用户再次确认删除该记录时,再执行从数据库中删除相应记录的操作。
6 用户登录状态的监控的实现
为了避免出现用户跳过登录页面,未进行身份验证,而直接进入到系统的某个页面进行操作的漏洞,本系统专门设计了用户登录状态的监控文件,每个文件都将此类文件包include 进来即可。
7 前端WEB层设计
前端WEB 层主要是面向用户的,它提供了人机交互的平台,是系统不可分割的一部分。而且,前端WEB 层设计的好坏会直接影响到系统性能。接下来介绍本系统前面WEB 层设计中的几个重要设计与实现。
7.1 登录界面的设计
本系统的用户分为前台用户和后台用户,其中前台用户包括学生、教师、系部管理员和领导;后台用户就是系统管理员。不论是前台用户还是后台用户,都是通过同一个登录界面进入系统的。
实现这部分的重要功能是接收用户的登录信息,并判断用户的权限,根据权限登录到对应权限的主页面。
MD5[]的全称是Message-Digest Algorithm 5(信息-摘要算法),很受青睐的密码散列函数,为了传输的信息的一个完整和一致性,运用MD5[]生成一组128 位的散列值来对传输的数据进行加密和解密操作。
本系统考虑到用户登录信息的安全性、合法性,专门在添加用户信息时运用MD5[]对用户登录密码进行了加密处理,之后再将加密后的用户信息放进数据库。而在用户登录的时候,系统会对登录表单提交的密码再进行一次MD5[]处理,然后再将用户名和用户登录密码和数据库中存储的信息比较进行比较,如果两者一致,才能登陆。
7.2 前台WEB页面的设计
系统的前台主要实现的功能是学生评教、系部管理员查看评教结果和评教进度、教师和领导查看评教结果,以及每个用户修改自己的登录密码。其中,系部管理员查看评教结果和评教进度、教师和领导查看评教结果的具体实现方法与后文“后台WEB 页面的设计与实现”非常相似,故,此部分内容参照后文。
在评教操作模块,学生可以看到管理员发布的当前问卷,点击对应教师即可到达上图页面对该教师进行评教。提交评教结果后,评教结果数据实时上传到数据库中。
7.3 后台WEB页面的设计
系统后台主要实现的功能是系统管理对基础数据的管理(包括添加或批量添加、修改、删除)、查看评教进度、查看评教结果。主要包括以下模块:
7.3.1 数据管理模块
数据管理模块主要实现了对系统的基础数据进行基本的管理,包括添加或批量添加、修改、删除用户信息等操作。
7.3.2 问卷管理模块
该模块是本系统的核心、特色模块。它能较好的帮助教学管理者制作出有个性化、导向性强的评教问卷。这一模块的核心的内容是它解决问题的思维。
一般情况下,评教问卷需要一个顶层架构的,即,评教指标体系。在评教指标体系的基础上,再将问卷进行具体化的。所以,这七个步骤可以理解为两个部分组成:
(1)构建评教指标体系;
(2)问卷的具体实现。
评教标准、评教指标和权重是一套完整的评价指标体系的三大构成。故,构建评教指标体系包括了设置指标模板、指标等级、质量等级、一级指标和指标体系这五个步骤。
设置指标模板步骤主要是生成一个指标模板的名称,为后续操作做准备。设置指标等级步骤主要是为前一步设置好的指标模板设置指标等级。由于学生评价时,可以以分数的形式或等级的形式作为评价结果存储到数据库的。在设置质量等级步骤中可以将分数的形式评价结果划分到上一步设置的五个指标等级中。
我们常见的评教的基本结构包括教学方法、教学态度、教学效果和教学组织安排,我们称之为一级指标,它将作为二级指标或评教问卷题目的框架。教学管理者可以根据实际情况在设置一级指标步骤中设置适合学校需要的一级指标。
设置问卷模板步骤中主要是综合构造一个指标体系,它包括选择指标模板、评价方式(分为分数方式和等级方式两种)、选择一级指标、设置二级指标(即一级指标下的下一级指标)和权重的设置几个方面。权重的作用是:评教得分=等级分值*权重。
问卷的具体实现包括了设置问卷模板和设置问卷题目两个步骤。
设置问卷模板步骤主要完成评教问卷的命名,起到承上启下的作用,将上一步骤中构造好的指标体系继承下来,同时,为下一步设置问卷题目做好准备工作。
设置问卷题目就是引用上一步的问卷模板,设置具体实施的问卷题目。本系统目前实现了单选题、多选题、填空题三种题型。
当问卷的所有设置都确认无误后,可以向学生用户发布问卷调查了。
7.3.3 评教数据分析模块
该模块主要实现了将与评教结果相关的主要信息运用饼图的样式展示出来。对评教结果的分析主要包括参与评教的学生人数及所占比例、被评教教师的人数以及各等级的分布情况。同时,用管理员户可以打印出该结果,同时,还可以点击查看评教的详细信息。本系统是运用加载、调用GD 库实现该功能的。
7.3.4 评教进度模块
此模块主要是实现对评教过程的跟踪,让系统管理员或系部管理员能及时的了解工作的开展进度。当用户点击系部名称时,还可以进一步查看该系部管辖的学生是否完成评教,哪些没有完成。这样使工作更有目标性。实现这一模块功能的方法与评教数据分析模块基本一致。
8 结论
按照系统开发的流程,本文将需求分析和系统分析进行较全面的介绍,重点介绍了如何运用Windows+Apache+MySQL+PHP 技术结合MVC 框架模式的进行系统架构设计,就公共文件的实现、用户登录状态的监控的实现、前端WEB 层设计与实现进行了较为全面的介绍,其中,特别重点的介绍了后台WEB 页面的设计与实现,为实现评教系统快速、便捷地制作出多份、有针对性的个性化评教问卷提供了可行性的方案。