□馬麗君 鄭謙倩 李金昕
實驗課程主要考察學生實踐操作能力,考察學生實踐能力的一個重要教學手段就是實驗作業的提交和檢查。在計算機技術飛速發展的今天,TCP/IP協議的Internet/Intranet的不斷普及,給傳統的教學帶來了新的革命,教學改革其中的一個方面就是電子作業管理。
目前,國內外實驗課程作業管理采用以下三種方法:一是每個學生上交作業軟盤;二是復制到教師機的共享文件夾中;三是通過電子郵箱上交。這些方法各有弊端:第一種方法教師不方便攜帶,軟盤容量小、易損壞;一個一個軟盤去查看作業,既不方便,速度又慢。第二種方法學生能在共享文件夾中查看、更改和刪除其它同學的作業,會出現抄襲作業的現象;第三種情況,教師需一個一個把作業從郵箱下載下來然后批改,對作業記錄不方便,教師在批改作業時,會搞不清楚作業是否批改;作業多次提交搞不清那一次是最準的那次等情況。雖然有一定的規則約束盡量避免此類錯誤的發生,但是會給學校和任課教師帶來麻煩。所以開發一個實驗課程作業管理系統是非常必要的,有了這個作業管理系統就可以規范管理作業,也是推進教學手段信息化的重要方面,是非常有意義,具有很高研究價值的事情。
(一)開發目的。解決實驗課程作業管理的效率,重點解決作業抄襲、作業替交、作業攜帶批改不方便等問題,充分利用學校機房和學生手機,實現作業有效規范的管理。學生和教師也可以借助這個系統平臺相互交流,解決學習中的難題并及時獲得教師的幫助,進而提高學習的積極性和學習成績。
(二)教學需求。實驗課程作業管理系統是基于B/S和C/S兩種結構,在windows平臺上使用php與mysql和C++與mysql兩種方法開發,是解決學校機房作業管理問題的一款軟件。這款軟件解決了學生亂傳作業和作業大小、類型、上傳時間的限制及教師對作業的布置、批改、上傳成績等不規范的問題。
系統分管理員、教師、學生用戶,學期初,管理員負責每學期課表的添加,包括上課時間、上課教師、上課班級等信息;教師對任課班級學生分配座位,包括每個班座位的顏色,每個學生座位的位置,按學號分配,每個座位的IP地址等信息;學生按教師分配好的座位完成簽到和提交作業。所有的信息都記錄到數據庫中,所以教師不需要再建立文件夾存放每次的作業,系統自動建立,下載作業只需一個按鈕,就可以把作業打包下載。學生上傳作業有自已固定的IP地址和座位ID,所以不會出現抄襲作業、作業提交混亂的現象,并且整個學期的簽到、作業提交的時間都記錄在數據庫中,隨時可以了解學生出勤和作業情況。另外,實驗課程作業管理系統還提供了網絡版的操作環境,學生可以用自己的手機完成作業的提交和簽到。
根據需求分析在數據庫中一共建立8個表。
(一)學生表。stu_no(學號),stu_name(姓名),classname(班級名)
(二)班級表。classname(班級名),classcolor(班級顏色),steadid(班級座位的起始位置<固定的>)。
(三)座位表。seatid(座位id),seatip(座位ip),seatstatus(座位狀態)。
(四)簽到表。term(學期<隨系統時間的月份的更新自動錄入>),timetableie(上課時間表<星期幾_節數>),seatip(座位ip),signtime(簽到時間),classessid(上課班級的id),number(班級序號),nickname(作業),classname(班級名),seatid(座位id)。
(五)時間表。timeid(上課時間),classessid(上課班級的id),teachernickname(教師姓名),starttime(開始時間),endtime(結束時間)。
(六)ID表。tid(時間id),sid(座位id),uid(學生id)。
(七)教師表。uid(教師賬號),nicknam(教師姓名),pass(密碼),utime(登錄時間)。
(八)系統簽到表。key(登錄),val(登錄狀態)。
實驗課程作業數據庫管理系統操作界面有主頁面、學生簽到頁面和作業提交檢查頁面等。系統功能模塊有統計學生出勤、作業提交、分配座位和實時課表等若干模塊,本文只給出主界面和兩個功能模塊代碼。
(一)主頁面。主頁中有學生簽到、作業、座位IP、統計、簽到開關按鈕,界面右邊是為班級選擇顏色,班級顏色選擇好后,在界面右下方,為每個班級選擇顏色,當學生簽到完成時,會在相應的位置顯示簽到標識,左下是課表,顯示當前的星期、節數和正在上課的班級。

圖1 實驗課程作業數據庫管理系統主界面
(二)功能介紹。第一,教師可以實時統計學生的出勤情況;第二,系統可為不同班級的學生分配不同顏色的座位,并將學生的姓名與電腦IP地址綁定在一起,方便教師了解學生的位置,為更好開展師生之間的互動提供了良好的硬件基礎;第三,實時課程表方便教師了解每節課的上課時間;第四,定期的成績統計功能,使教師能及時獲取學生在該階段的學習狀況,以便于對后期的學習計劃進行適當的調整。
(三)部分代碼展示。
1.班級及學生顏色的設置。當選中一個座位時,先從數據庫獲取對應班級的顏色,賦給所選中的座位。再獲取對應班級已選座的人數并加1,然后賦給當前選中的座位,部分代碼如下:
_colorIndHTML: function(c) {
var css=isIE?'evo-colorbox-ie':'',
style='';
if(c){
if(c===transColor){
css+='evo-transparent';
}else{
style='background-color:'+c;
}
}else{
}
return'
''+ // class=“evo-colortxt-ie”
(c?c:'')+'
},
2.學期時間及課程表時間的獲取。先獲取年份判斷是第幾學期,再從當前系統時間中獲取月份,通過月份判斷是冬季作息時間還是夏季作息時間,隨后通過獲取當前是幾點幾分判斷是當天的第幾節課。
function date2timetable(time){
// 5 6 7 8 9 夏令時 10 11 12 1 2 3 4 冬令時
var summer_month= new Array(5,6,7,8,9);
var winter_month= new Array(10,11,12,1,2,3,4);
var summer=new Array(“8:00”,“10:00”,“13:30”,“15:30”,“18:00”);
var winter=new Array(“8:00”,“10:00”,“14:00”,“16:00”,“18:30”);
var now=time.getHours()*60+time.getMinutes();
var timetable=time.getDay()+“_”;
……
function date2term(time){
//第二學期:2 3 4 5 6 7 第一學期:8 9 10 11 12 1 //Math.floor()向下整除
return(time.getYear()+1900)+“_”+(Math.ceil((time.getMonth()+5)/6));
}
……
(一)功能實用。系統提供internet和局域網兩個使用版本,學生可以根據實際需要選擇不同的方式簽到和提交作業。機房實驗課選擇局域網版本,如果是臨時作業可以選擇手機簽到和提交作業,系統方便靈活,是輔助教學的一款優秀的軟件。
(二)操作簡單。系統交互界面簡單友好,教師和學生不需要進行培訓就可以掌握軟件使用。
(三)安裝簡便。服務器端的安裝簡單易行,客戶機不用再安裝任何軟件,在瀏覽器中輸入IP地址就可以直接訪問,直接接入Internet,通過Internet使用該系統。
(四)系統適應性強。系統適用于所有學校實驗課程作業的簽到和作業收取,是實現信息化教學管理的一款實用軟件。系統采用模塊化設計,使用者可以根據實際情況修改使用,使得系統在不同的硬件環境下都可以使用。
(五)代碼可讀性好。系統采取結構化設計方法,思路清晰,代碼簡潔,可讀性好,便于日后維護和擴展。