虞菊花 常興治 陶亞輝
[摘? ? ? ? ? ?要]? 課堂中學(xué)生的行為,直接反映了教學(xué)的精確性和有效性,而程序設(shè)計類課程教師最關(guān)注的學(xué)生課堂行為,則是學(xué)生代碼的編寫。從學(xué)生程序撰寫的行為數(shù)據(jù)出發(fā),搭建數(shù)據(jù)采集系統(tǒng),將學(xué)生有效的輸入代碼的行為數(shù)據(jù)采集后進行處理存儲到數(shù)據(jù)庫中,并實時呈現(xiàn)到教師的前端編程開發(fā)環(huán)境,輔助教師開展教學(xué)活動,提高教學(xué)效果。
[關(guān)? ? 鍵? ?詞]? 程序設(shè)計類課程;學(xué)生課堂行為;數(shù)據(jù)采集;教學(xué)改革
[中圖分類號]? G434? ? ? ? ? ? ? ? ? ?[文獻標(biāo)志碼]? A? ? ? ? ? ? ? ? ? ? ? [文章編號]? 2096-0603(2021)32-0067-03
在以學(xué)生操作為主的課程中,如程序設(shè)計類課程,學(xué)生普遍存在動手能力不強、主動性不夠等問題。而在教學(xué)過程中,教師往往只能在教室中來回穿行,盡可能督促學(xué)生跟隨教師的教學(xué)思路,一步步完成實踐技能的訓(xùn)練。一旦教師的監(jiān)督力度不夠,則無法保障教學(xué)的質(zhì)量和效率。在高職院校中,課堂教學(xué)的師生比幾乎都在1 ∶ 40以上,加上學(xué)生的自覺性更低、實踐能力基礎(chǔ)更薄弱的現(xiàn)狀,在上課過程中實施全面、有力、有效且能夠刺激學(xué)生的教學(xué)監(jiān)控,顯得尤為重要。
如何有效地刺激學(xué)生持續(xù)性地學(xué)習(xí),一直是教學(xué)的一大難題。本文根據(jù)這一難題,研究了程序設(shè)計類課程學(xué)生課堂行為數(shù)據(jù)采集系統(tǒng)。以Python程序設(shè)計基礎(chǔ)課程為例,教師建立統(tǒng)一的操作系統(tǒng)環(huán)境,學(xué)生通過瀏覽器登錄操作系統(tǒng),進行代碼的輸入、測試和運行等操作,學(xué)生的所有操作數(shù)據(jù)將被行為數(shù)據(jù)采集系統(tǒng)收集匯總后,實時顯示在操作系統(tǒng)環(huán)境中供教師查看,以便及時了解學(xué)生的學(xué)習(xí)狀態(tài),并根據(jù)學(xué)生的學(xué)習(xí)狀態(tài)數(shù)據(jù),及時調(diào)整自己的教學(xué)節(jié)奏和方法。
一、學(xué)生課堂行為數(shù)據(jù)信息
學(xué)生在上課過程中會產(chǎn)生各種隨機的行為數(shù)據(jù),但是大部分?jǐn)?shù)據(jù)并不能代表學(xué)生的學(xué)習(xí)狀態(tài),也無法表征學(xué)生的學(xué)習(xí)行為。學(xué)生課堂行為數(shù)據(jù)并非指學(xué)生觀看屏幕的時間、抬頭低頭率等參數(shù)指標(biāo),而是能夠直接反映學(xué)生學(xué)習(xí)的行為數(shù)據(jù)信息。
同時,在傳統(tǒng)教學(xué)模式下,被認(rèn)為能夠客觀衡量學(xué)生行為的數(shù)據(jù),主要集中在教學(xué)平臺?,F(xiàn)在廣泛使用的教學(xué)平臺,如智慧職教、大學(xué)生慕課、超星學(xué)習(xí)通等,或通過學(xué)生是否完整學(xué)習(xí)課程視頻的數(shù)據(jù)來判斷是否完成學(xué)習(xí)任務(wù),或通過平臺中課程的客觀測試題對學(xué)生進行成績評分,這些方法根本無法真正反映學(xué)生的學(xué)習(xí)行為和學(xué)習(xí)效果。
現(xiàn)在的教學(xué)活動,教學(xué)平臺無法對學(xué)生的學(xué)習(xí)行為進行客觀判斷和采集,更沒有其他較好的工具或者平臺來采集學(xué)生過程性實踐操作的行為數(shù)據(jù),進而對學(xué)生的學(xué)習(xí)活動進行過程性的客觀評價。對于程序設(shè)計類課程來說,重在代碼的設(shè)計和實踐操作,編寫代碼的有效行為才是采集行為數(shù)據(jù)信息的目標(biāo)。
本文主要針對程序設(shè)計類課程,采集教學(xué)過程中學(xué)生產(chǎn)生的課堂行為數(shù)據(jù)信息。不同班級不同的學(xué)生,他們的課堂行為數(shù)據(jù)在整個課堂教學(xué)過程中不斷發(fā)生變化,在不同的教學(xué)活動中產(chǎn)生不一樣的代碼輸入行為數(shù)據(jù)。學(xué)生課堂行為數(shù)據(jù)采集的信息主要包括以下幾個部分。
(一)學(xué)生相關(guān)信息
教師一般會對不同的班級采用不同的授課方式,且會在一門課程的持續(xù)教學(xué)過程中,根據(jù)學(xué)生的學(xué)習(xí)狀態(tài)和學(xué)習(xí)水平做出動態(tài)的調(diào)整。
學(xué)生的課堂行為數(shù)據(jù)采集,基礎(chǔ)信息便是學(xué)生的學(xué)號和姓名,以表征學(xué)生個體。而學(xué)生又是處于不同班級的,除了學(xué)生個體本身,不同班級的橫向?qū)Ρ葦?shù)據(jù)也非常重要,因此,另一個學(xué)生相關(guān)的信息便是其班級信息。
(二)代碼數(shù)據(jù)
程序設(shè)計類課程,最重要的評判學(xué)生行為的指標(biāo),顯然就是學(xué)生在上課過程中能夠積極主動地輸入程序代碼,而將學(xué)生代碼輸入的行為進行量化分析,其前提就是定義代碼輸入的行為數(shù)據(jù)。
以Python程序設(shè)計基礎(chǔ)為例,一個知識點的教學(xué)活動不管教學(xué)方式如何變化,教學(xué)過程主要分為理論的講解、實踐任務(wù)的下發(fā)、學(xué)生的操作、教師的講解以及學(xué)生的修改。作為編程類課程,學(xué)生針對實踐任務(wù)輸入的代碼以及對代碼的修改是最關(guān)鍵的課堂行為數(shù)據(jù)。
首先,學(xué)生會根據(jù)教師下發(fā)的任務(wù),輸入相應(yīng)的原始代碼,每過一定時間數(shù)據(jù)采集系統(tǒng)會定時自動保存學(xué)生輸入的代碼,也可由學(xué)生手動強制保存,所有的代碼都會被存入學(xué)生本地的日志文件中。其次,隨著教師的講解,學(xué)生可能會迭代修改代碼,也有可能會因為原始代碼是正確的,而無需修改。因此,學(xué)生如果修改代碼,所有的最新代碼也會被定時或強制保存,而原本如果學(xué)生輸入的代碼就是正確的,不用根據(jù)教師的講解修改,則可通過代碼運行部分的數(shù)據(jù)體現(xiàn)。
根據(jù)課堂教學(xué)實踐任務(wù)的逐步開展,上述行為會被不斷重復(fù)。學(xué)生登錄開發(fā)環(huán)境后所有輸入的代碼都被保存下來,以便進行學(xué)生操作數(shù)據(jù)的橫向和縱向?qū)Ρ取?/p>
當(dāng)然,除了輸入的代碼數(shù)據(jù),運行結(jié)果也是非常重要的。不管是原始輸入的還是修改的代碼,都會被學(xué)生運行,以測試自己輸入的代碼是否正確。一般的,教師下發(fā)的任務(wù)答案是唯一的,所以,不管學(xué)生的代碼如何書寫,運行結(jié)果是否正確,都可以將其與正確答案進行對比。因此,代碼運行后的結(jié)果數(shù)據(jù),也將會被保存在本地日志文件中,以便后續(xù)發(fā)送至數(shù)據(jù)庫,被用于分析學(xué)生的實踐操作行為。
同時,大部分學(xué)生學(xué)習(xí)Python程序設(shè)計基礎(chǔ)時,并沒有編程基礎(chǔ),在寫程序代碼的過程中,會出現(xiàn)各種各樣的錯誤,有的是語法錯誤,有的是拼寫錯誤,有的是程序邏輯錯誤,不管哪種錯誤,都需要學(xué)生學(xué)會定位自己發(fā)生錯誤的代碼。學(xué)生課堂行為數(shù)據(jù)采集系統(tǒng)的開發(fā)環(huán)境平臺,提供學(xué)生進行代碼調(diào)試的工具,可以幫學(xué)生快速找到自己程序異常的原因。因此,代碼調(diào)試的異常提示數(shù)據(jù)也會被保存到本地日志文件中。