曾珍珍+劉海
摘 要:為促使高等院校在學(xué)校、專業(yè)、課程、教師和學(xué)生不同層面建立完整且相對獨(dú)立的自我質(zhì)量保證機(jī)制,強(qiáng)化各層級質(zhì)量管理系統(tǒng)的依存關(guān)系,形成全要素網(wǎng)絡(luò)化的內(nèi)部質(zhì)量保證體系,設(shè)計并實(shí)現(xiàn)了教學(xué)質(zhì)量保證和持續(xù)診斷改進(jìn)系統(tǒng)。采用MySQL5.0+PHP相結(jié)合方式開發(fā),使系統(tǒng)更貼近教學(xué)實(shí)際,突顯學(xué)生能力培養(yǎng),以課程教學(xué)過程的標(biāo)準(zhǔn)化促進(jìn)教學(xué)質(zhì)量的提升,增強(qiáng)了教學(xué)的過程性評價和數(shù)據(jù)分析在教學(xué)質(zhì)量評價中的地位。
關(guān)鍵詞:教學(xué)質(zhì)量;診改信息;過程性評價;數(shù)據(jù)分析
DOIDOI:10.11907/rjdk.172196
中圖分類號:TP319
文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2018)002-0108-06
0 引言
在高等院校課堂教學(xué)中掌握學(xué)習(xí)進(jìn)度是關(guān)鍵,作業(yè)是學(xué)生接受知識進(jìn)度的最好體現(xiàn)。教師在進(jìn)行作業(yè)批改與分析中往往會占用很多時間,難以把握學(xué)生的知識進(jìn)度,導(dǎo)致教學(xué)上時間不夠分配。教學(xué)質(zhì)量保證和診改信息化系統(tǒng)為教師節(jié)省了批改及分析作業(yè)的時間,能準(zhǔn)確掌握學(xué)生接受知識的進(jìn)度,大大提高課堂的教學(xué)效率。
1 系統(tǒng)需求分析
借助教學(xué)質(zhì)量保證和持續(xù)診改信息化平臺,通過統(tǒng)一課程標(biāo)準(zhǔn)、教學(xué)資源、教學(xué)過程以及對教學(xué)過程進(jìn)行有效監(jiān)控和數(shù)據(jù)分析,實(shí)現(xiàn)教學(xué)質(zhì)量的穩(wěn)步提升以及持續(xù)的診斷和改進(jìn)。系統(tǒng)主要模塊如圖1所示。
1.1 系統(tǒng)邏輯模塊
(1)基礎(chǔ)數(shù)據(jù)模塊:完成學(xué)生、課程、教師基礎(chǔ)數(shù)據(jù)的增刪改查等功能。
(2)課程資源模塊:把課程項目資源分解成任務(wù),完成所有任務(wù)資源的整合和管理。
(3)“教學(xué)做一體化”過程設(shè)置模塊:把課程教學(xué)分為不同單元,把項目任務(wù)分解到不同的單元中。
(4)評價指標(biāo)設(shè)置模塊:針對大一、大二、大三不同課程分類設(shè)置評價指標(biāo),如教學(xué)方法、教學(xué)進(jìn)度、內(nèi)容難易程度、項目步驟是否合理等。
(5)課堂數(shù)據(jù)采集模塊:在“教學(xué)做一體化”過程中收集學(xué)生對每個項目任務(wù)的練習(xí)、建議、評價,提交數(shù)據(jù),收集教師批改練習(xí)的數(shù)據(jù)。
(6)數(shù)據(jù)統(tǒng)計和分析模塊:根據(jù)收集的數(shù)據(jù),分析每個任務(wù)的完成率、完成時間、完成效果;分析每個單元的完成率、完成時間和完成效果;分析學(xué)生對任務(wù)的評價,如教學(xué)方法、任務(wù)內(nèi)容難度、任務(wù)步驟清晰度等;統(tǒng)計學(xué)生平時成績。
(7)持續(xù)診改模塊:提出診斷信息,包括任務(wù)完成時間是否合理、完成率、完成效果是否達(dá)到要求、任務(wù)內(nèi)容是否應(yīng)該修改、每個單元任務(wù)設(shè)置是否合理、對課程資源設(shè)置是否合理。
(8)診改數(shù)據(jù)庫模塊:把專業(yè)課程診改數(shù)據(jù)對接(導(dǎo)入)學(xué)校診改數(shù)據(jù)庫平臺。
2 系統(tǒng)設(shè)計
按照需求功能要求,將系統(tǒng)分解為多個子系統(tǒng),根據(jù)每個子系統(tǒng)的功能不同,分別完成需求分析中的不同要求??傮w結(jié)構(gòu)如圖2所示。
2.1 功能分配
系統(tǒng)各功能需求與程序模塊(組件)之間的關(guān)系如表1所示。
2.2 數(shù)據(jù)庫設(shè)計
服務(wù)器端程序通過PDO(數(shù)據(jù)訪問對象)應(yīng)用程序編程接口(API)訪問MySQL數(shù)據(jù)庫。
使用MySQL的備份命令對數(shù)據(jù)進(jìn)行保存。在網(wǎng)絡(luò)軟件接口方面,使用一種無差錯的傳輸協(xié)議,采用滑動窗口方式對數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)傳輸及接收。
2.3 外部接口
①教師信息管理模塊:提供對課程的查詢接口;②學(xué)生信息管理模塊:提供對學(xué)生信息查詢的接口,包括按學(xué)號查詢、按姓名查詢和按班級查詢3種;③課程管理模塊:提供對課程信息查詢的接口,包括按課程名查詢等,見圖3、圖4。
3 系統(tǒng)實(shí)現(xiàn)
學(xué)生前臺程序見圖5。
3.1 學(xué)生前臺核心代碼
實(shí)現(xiàn)學(xué)生前臺核心代碼如下:
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';
客服熱線:400-656-5456??客服專線:010-56265043??電子郵箱:longyuankf@126.com
電信與信息服務(wù)業(yè)務(wù)經(jīng)營許可證:京icp證060024號
Dragonsource.com Inc. All Rights Reserved
}
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 教師前臺核心代碼
實(shí)現(xiàn)教師前臺(見圖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 教師后臺核心代碼
實(shí)現(xiàn)教師后臺(見圖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'); // 調(diào)用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 系統(tǒng)界面實(shí)現(xiàn)
系統(tǒng)主控制平臺采用簡單、直觀的布局,通過菜單實(shí)現(xiàn)對系統(tǒng)各個模塊的調(diào)用和各窗體的顯示,見圖8。
參考文獻(xiàn):
[1] 潘凱華,劉中華.PHP開發(fā)實(shí)戰(zhàn)1200例[M].北京:清華大學(xué)出版社,2011.
[2] LAURATHOMSON.PHP和MySQL Web開發(fā)[M].北京:機(jī)械工業(yè)出版社,2009.
[3] 曾棕根.PHP程序設(shè)計[M].北京:北京大學(xué)出版社,2012.
[4] 唐漢明,翟振興,關(guān)寶軍,等.深入淺出MySQL:數(shù)據(jù)庫開發(fā)、優(yōu)化與管理維護(hù) [M].第2版.北京:人民郵電出版社,2014.
[5] 楊曉軍,秦方.MVC Web開發(fā)學(xué)習(xí)實(shí)錄[M].北京:清華大學(xué)出版社,2011.endprint