APP下载

基于PHP+MySQL的教学质量保证和诊改信息化系统设计与实现

2018-03-10曾珍珍刘海

软件导刊 2018年2期
关键词:过程性评价数据分析教学质量

曾珍珍+刘海

摘 要:为促使高等院校在学校、专业、课程、教师和学生不同层面建立完整且相对独立的自我质量保证机制,强化各层级质量管理系统的依存关系,形成全要素网络化的内部质量保证体系,设计并实现了教学质量保证和持续诊断改进系统。采用MySQL5.0+PHP相结合方式开发,使系统更贴近教学实际,突显学生能力培养,以课程教学过程的标准化促进教学质量的提升,增强了教学的过程性评价和数据分析在教学质量评价中的地位。

关键词:教学质量;诊改信息;过程性评价;数据分析

DOIDOI:10.11907/rjdk.172196

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2018)002-0108-06

0 引言

在高等院校课堂教学中掌握学习进度是关键,作业是学生接受知识进度的最好体现。教师在进行作业批改与分析中往往会占用很多时间,难以把握学生的知识进度,导致教学上时间不够分配。教学质量保证和诊改信息化系统为教师节省了批改及分析作业的时间,能准确掌握学生接受知识的进度,大大提高课堂的教学效率。

1 系统需求分析

借助教学质量保证和持续诊改信息化平台,通过统一课程标准、教学资源、教学过程以及对教学过程进行有效监控和数据分析,实现教学质量的稳步提升以及持续的诊断和改进。系统主要模块如图1所示。

1.1 系统逻辑模块

(1)基础数据模块:完成学生、课程、教师基础数据的增删改查等功能。

(2)课程资源模块:把课程项目资源分解成任务,完成所有任务资源的整合和管理。

(3)“教学做一体化”过程设置模块:把课程教学分为不同单元,把项目任务分解到不同的单元中。

(4)評价指标设置模块:针对大一、大二、大三不同课程分类设置评价指标,如教学方法、教学进度、内容难易程度、项目步骤是否合理等。

(5)课堂数据采集模块:在“教学做一体化”过程中收集学生对每个项目任务的练习、建议、评价,提交数据,收集教师批改练习的数据。

(6)数据统计和分析模块:根据收集的数据,分析每个任务的完成率、完成时间、完成效果;分析每个单元的完成率、完成时间和完成效果;分析学生对任务的评价,如教学方法、任务内容难度、任务步骤清晰度等;统计学生平时成绩。

(7)持续诊改模块:提出诊断信息,包括任务完成时间是否合理、完成率、完成效果是否达到要求、任务内容是否应该修改、每个单元任务设置是否合理、对课程资源设置是否合理。

(8)诊改数据库模块:把专业课程诊改数据对接(导入)学校诊改数据库平台。

2 系统设计

按照需求功能要求,将系统分解为多个子系统,根据每个子系统的功能不同,分别完成需求分析中的不同要求。总体结构如图2所示。

2.1 功能分配

系统各功能需求与程序模块(组件)之间的关系如表1所示。

2.2 数据库设计

服务器端程序通过PDO(数据访问对象)应用程序编程接口(API)访问MySQL数据库。

使用MySQL的备份命令对数据进行保存。在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。

2.3 外部接口

①教师信息管理模块:提供对课程的查询接口;②学生信息管理模块:提供对学生信息查询的接口,包括按学号查询、按姓名查询和按班级查询3种;③课程管理模块:提供对课程信息查询的接口,包括按课程名查询等,见图3、图4。

3 系统实现

学生前台程序见图5。

3.1 学生前台核心代码

实现学生前台核心代码如下:

public function submitList()

{

MYMthis->load->model('tea_information_model', 'getALL');

MYMtas_id = isset(MYM_GET['tas_id']) ? intval(MYM_GET['tas_id']) : 0;

MYMlist = MYMthis->getALL->getStuTas(MYMtas_id, MYM_SESSION['stu_user']->cla_id);

echo '

foreach (MYMlist as MYMkey => MYMitem) {

MYMcolor = 'Black';

MYMbig = '';

if (MYMkey < 3) {

MYMbig = 'font-weight:bold;';

MYMcolor = 'Red';

} else if (MYMkey >= 3 & MYMkey < 6) {

MYMbig = 'font-weight:bold;';

MYMcolor = 'DarkOrange';

} else if (MYMkey >= 6 & MYMkey < 10) {

MYMbig = 'font-weight:bold;';

MYMcolor = 'Gold';

综述
在线评论情感分析研究综述
游戏引擎研究与分析
基于Hammerstein的非线性信道辨识算法综述
人工智能
语音识别在旅游领域问句识别中的应用
改进的PCA人脸识别算法研究
数据仓库下基于学习的并行实体解析算法研究
基于混沌时间序列的模糊神经网络预测研究
基于Kinect传感器和HOG特征的静态手势识别
基于用户模糊聚类的个性化推荐研究
人工智能技术及其应用探究
软件理论与方法
基于MVC的IFML建模方法研究
一种网络访问控制语义相容性推理规则自动生成技术
一种ABCSAT算法的启发式初始解策略
基于社区的混合型WMN信任模型研究
基于Android的内存泄漏与溢出研究
算法与语言
视频前景提取算法研究
基于改进蚁群算法的TSP问题研究
基于拟合的亚像素边缘检测的算法比较
一种基于节点相似度的标签传播算法
污水处理系统溶解氧的BP—PID控制算法
一种基于MapReduce的改进人工蜂群算法
群目标重心跟踪过程中的群合并算法研究
基于不均匀数据的密度偏差抽样改进算法
基于多宽度高斯核的支持向量机特征选取算法研究
软件设计与开发
基于CAN总线的无线温湿度测量仪
反应堆压力容器老化管理信息系统设计与实现
蓄电池无线监测系统设计
基于B/S模式的3D服装定制系统设计与实现
基于B/S模式的智能家居管理系统设计
基于工作流的灾难事件处理系统设计与实现
基于ZigBee和RSSI测距算法的室内定位系统设计
基于PHP+MySQL的教学质量保证和诊改信息化系统设计与实现
基于树莓派的行人检测小车设计
一种面向高校招投标公告主题爬虫的设计
基于智能移动终端的无线投票教学系统设计开发
一种新型轻型机械臂示教软件架构设计
应用技术与研究
基于Comsol Multiphysics的微沟道式细胞分选仪研究
基于GV—LDA的微博话题检测研究
基于流形学习的客户价值分析研究
基于FPGA的PID控制在液浮陀螺回路中的应用
智能立体仓储设备WCS系统研发
基于Open Inventor的储层三维雕刻技术研究及实现
Simhash算法在试题查重中的应用
基于FLUENT软件的pVTt法标准容器流场仿真研究
基于Solidworks Composer的多轴滑台斜拉机构装配可视化研究
虚拟现实技术在民航模拟飞行训练中的应用
机载网络数据总线仿真技术研究
数据库与信息处理
基于4G网络的水质监测分布式数据传输架构研究
多MRL标准下的全国农残数据对比可视化方法
基于PC—Simple算法的医院病案首页数据挖掘
网络、通信与安全
工业以太网EtherCAT的实时性研究
基于PKI技术的可搜索云加密存储系统
基于可信第三方的多提供商安全云存储系统设计
智能电网信息安全威胁分析及防御研究
网络延时测试实验及分析
图形图像与辅助设计
图像处理在护照缝纫装订中的应用
基于双目立体视觉的目标物定位研究
采砂坑与采矿坑的高分一号影像对比分析研究
基于VC的太阳光斑图像识别跟踪系统设计与实现
GIS支持下的迪庆州少数民族人口分布与地形分异研究
基于图像熵的全局和局部混合方法的关键帧提取
基于图像处理的高精度耳蜗三维重建系统
一种自适应超分辨率图像重建方法研究
计算机与网络教学
新建构主义在ASP.NET MVC Web程序设计课程中的应用
公司地址: 北京市西城区德外大街83号德胜国际中心B-11

客服热线:400-656-5456  客服专线:010-56265043  电子邮箱:longyuankf@126.com

电信与信息服务业务经营许可证:京icp证060024号

Dragonsource.com Inc. All Rights Reserved

icp

}

echo '

' . (MYMkey + 1) . ' | ' . MYMitem->stu_number . '

' . MYMitem->stu_name . '

';

if (isset(MYMitem->s_t_usetime))

echo MYMitem->s_t_usetime . '分钟';

else

echo 0;

echo '

';

if (isset(MYMitem->s_t_url))

echo '完成';

else

echo '只提交问题或建议';

if (isset(MYMitem->s_t_score))

echo "({MYMitem->s_t_score}分)";

else

echo '(待批改)';

echo '';

}

echo '';

}

// 判斷是否已开启交叉批改

MYMdate = array(

'tas_id' => MYMtas_id,

'cla_id' => MYMcla_id,

'is_cross_correct' => 1

);

MYMres = MYMthis->db->where(MYMdate)->get('tb_tea_cla_tas');

MYMrow = MYMres->row();

if (!MYMrow) // 未开启时

{

echo '';

MYMthis::goBack();

die();

}

else

{

MYMthis::goBack();

}

MYMrandom_number = MYMrow->random_number;

MYMsql = "SELECT * FROM `tb_stu_tas` WHERE `tas_id`={MYMtas_id} AND

`stu_id` IN (SELECT `stu_id` FROM `tb_student` WHERE `cla_id` ={MYMcla_id})";

MYMres2 = MYMthis->db->query(MYMsql);

MYMlist2 = array();

MYMlist = MYMres2->result();

if (count(MYMlist) <= 1) {

echo '';

MYMthis::goBack();

}

foreach (MYMlist as MYMk => MYMv) {

if (MYMrandom_number + MYMk < count(MYMlist))

MYMlist2[MYMrandom_number + MYMk] = MYMv;

else

MYMlist2[MYMrandom_number + MYMk - count(MYMlist)] = MYMv;

if (MYMv->stu_id == MYMstu_id & MYMv->tas_id == MYMtas_id) {

MYMkey = MYMk;

}

}

ksort(MYMlist2);

MYMcorrect_task = MYMlist2[MYMkey];

private static function changeTimeType(MYMseconds)

{

if (MYMseconds > 3600) {

MYMhours = intval(MYMseconds / 3600);

MYMminutes = MYMseconds / 60;

MYMtime = MYMhours . ":" . gmstrftime('%M:%S', MYMminutes);

} else {

MYMtime = gmstrftime('%H:%M:%S', MYMseconds);

}

return MYMtime;

}

}endprint

3.2 教师前台核心代码

实现教师前台(见图6)核心代码如下:

public function corretTask()

{

MYMres = MYMthis->db->where('tas_id = ', MYMtas_id)->get('tb_stu_tas');

if (isset(MYM_GET['select_student']) & MYMstu_id != 0) {

MYMcheck = array(

'tas_id' => MYMtas_id,

'stu_id' => MYMstu_id

);

MYMres = MYMthis->db->where(MYMcheck)->get('tb_stu_tas');

// 若不存在则返回到课程&班级列表视图

if (!MYMres->row() && MYMstu_id != 0) {

MYMthis::goBack();

}

if (MYMres->row()->s_t_score)

MYMdata['isCorret'] = 1;

} else {

if (!MYMres->row()) {

echo "";

MYMthis::goBack();

}

}

MYMscore = array('s_t_score' => isset(MYM_POST['select_class']) ? MYM_POST['select_class'] : 0);

MYMthis->db->update('tb_stu_tas', MYMscore, MYMcheck);

MYMthis::goBack();

}

MYMthis->load->model('tea_information_model', 'get');

MYMdata['norm'] = MYMthis->get->getNorm(MYMstu_id, MYMtas_id);

MYMdata['word'] = MYMthis->get->getStuTas(MYMtas_id, MYM_SESSION['tea_cla_id']);

MYMdata['corret'] = MYMthis->get->getCorretStuTas(MYMtas_id, MYM_SESSION['tea_cla_id']);

MYMdata['stu'] = MYMthis->get->getStu(MYMtas_id, MYMstu_id);

MYMthis->load->view('tp/task_correct', MYMdata);

}

public function download()

{

MYMtas_id = intval(MYMthis->uri->segment(3));

MYMstu_id = intval(MYMthis->uri->segment(4));

MYMcheck = array(

'tas_id' => MYMtas_id,

'stu_id' => MYMstu_id

);

MYMres = MYMthis->db->where(MYMcheck)->get('tb_stu_tas');

MYMlist = MYMres->row();

if (file_exists(MYMname)) // 存在時

{

force_download(MYMname, NULL);

}

else // 不存在时

{

echo "";

}

MYMthis::goBack();

}

3.3 教师后台核心代码

实现教师后台(见图7)核心代码如下:

//绑定课程&班级&教师

public function bindingCourse()

{

MYMthis->load->model('backstage_model');

MYMdata['teacher'] = MYMthis->backstage_model->getAll('tb_teacher');

MYMdata['class'] = MYMthis->backstage_model->getAll('tb_class');

MYMselect_teacher = (isset(MYM_POST['select_teacher'])) ? intval(MYM_POST['select_teacher']) : 0;

MYMselect_class = (isset(MYM_POST['select_class'])) ? intval(MYM_POST['select_class']) : 0;endprint

MYMdata['tea_id'] = MYMselect_teacher;

MYMdata['cla_id'] = MYMselect_class;

MYMcou_id = intval(MYMthis->uri->segment(3));

MYMres = MYMthis->db->where('cou_id = ', MYMcou_id)->get('tb_course');

MYMlist = MYMres->row();

if (MYMlist) {

MYM_SESSION['cou_id2'] = MYMcou_id;

} else {

MYMthis::goHref('goCouManage');

}

MYMdata['cou_name'] = MYMlist->cou_name;

if (isset(MYM_POST['binding'])) {

if (MYMselect_teacher != '' && MYMselect_class != '') {

MYMdate = array(

'cou_id' => MYMcou_id,

'cla_id' => MYMselect_class

);

MYMbool = 0;

MYMres = MYMthis->db->where(MYMdate)->get('tb_cou_cla_tea');

if (MYMres->row()) {

MYMis_repeat = 0;

echo "";

} else {

MYMis_repeat = 1; }

if (MYMis_repeat == 1) {

MYMdate2 = array(

'cou_id' => MYMcou_id,

'tea_id' => MYMselect_teacher,

'cla_id' => MYMselect_class

);

try {

MYMbool = MYMthis->db->insert('tb_cou_cla_tea', MYMdate2); } catch (Exception MYMe) {

echo "";

}

}

if (MYMbool) {

echo "";

}

}

}

MYMdata['url'] = '';

MYMthis->load->view('tb/cou_binding', MYMdata);

}

public function lookCouClaTea()

{

MYMthis->load->model('backstage_model');

MYMlist = MYMthis->backstage_model->courespaging(20, 'admin/lookCouClaTea'); // 调用login_model模型的分页方法

MYMdata['list'] = MYMlist['list'];

MYMdata['links'] = MYMlist['links']; // 显示分页

MYMdata['total_rows'] = MYMlist['total_rows'];

MYMthis->load->view('tb/cou_cla_tea', MYMdata);

}

public function deleteCouClaTea()

{

MYMcou_id = intval(MYMthis->uri->segment(3));

MYMcla_id = intval(MYMthis->uri->segment(4));

MYMtea_id = intval(MYMthis->uri->segment(5));

MYMdate = array(

'cou_id' => MYMcou_id,

'cla_id' => MYMcla_id,

'tea_id' => MYMtea_id

);

MYMthis->db->delete('tb_cou_cla_tea', MYMdate);

MYMthis::goBack();

}

3.4 系統界面实现

系统主控制平台采用简单、直观的布局,通过菜单实现对系统各个模块的调用和各窗体的显示,见图8。

参考文献:

[1] 潘凯华,刘中华.PHP开发实战1200例[M].北京:清华大学出版社,2011.

[2] LAURATHOMSON.PHP和MySQL Web开发[M].北京:机械工业出版社,2009.

[3] 曾棕根.PHP程序设计[M].北京:北京大学出版社,2012.

[4] 唐汉明,翟振兴,关宝军,等.深入浅出MySQL:数据库开发、优化与管理维护 [M].第2版.北京:人民邮电出版社,2014.

[5] 杨晓军,秦方.MVC Web开发学习实录[M].北京:清华大学出版社,2011.endprint

猜你喜欢

过程性评价数据分析教学质量
提高教学质量,重在科学管理
利用大数据进行学习评估与诊断
浅析大数据时代对企业营销模式的影响
高校 《大学语文》 课程教学模式的探索
提高语文教学质量的几点思考