羅榮良,吳明暉
(浙江大學城市學院 計算機與計算科學學院,浙江 杭州 310015)
互聯(lián)網(wǎng)技術(shù)的快速普及,對現(xiàn)有高等教育的教學模式產(chǎn)生了較大的影響,特別是MOOC(Massive Open Online Courses,慕課)的廣泛應用,為普通應用型本科高校提高教學質(zhì)量提供了很好的解決方案。筆者所在學校面向?qū)ο蟪绦蛟O(shè)計課程采用Java 語言作為開發(fā)語言,主要講述Java 語言基礎(chǔ)和面向?qū)ο笤O(shè)計方法。學生通過課堂學習和實踐,掌握面向?qū)ο蠡A(chǔ)知識和基本技能,為計算機專業(yè)相關(guān)的課程打下基礎(chǔ)。
面向?qū)ο蟪绦蛟O(shè)計語言是計算機專業(yè)的核心專業(yè)基礎(chǔ)課,如何讓學生更好地樹立計算思維,并具備基本的程序開發(fā)能力,對學生后續(xù)課程的學習起到非常關(guān)鍵的作用。部分同學因為程序設(shè)計基礎(chǔ)沒有學好,導致后續(xù)一系列課程都產(chǎn)生了困難,部分嚴重的同學甚至不能順利地完成學業(yè)。如何能在學習程序設(shè)計階段讓每位同學都能較好地掌握基本的程序設(shè)計思維和開發(fā)能力,是一個非常值得研究和探索的課題。
以筆者所在學校計算機專業(yè)面向?qū)ο蟪绦蛟O(shè)計課程為例,課程在大二第一學期開設(shè),采用2-2 的形式,每周2 節(jié)理論課加2 節(jié)實踐課共64學時。因為每個班級上課的學生較多,一般在70 人以上,如何保障每位同學都能達到課程目標,依靠傳統(tǒng)的教學方法進行了多次嘗試,但效果都不是很明顯。分析其原因,在理論課中教師根據(jù)事先準備好的課件在上面講解,而下面聽課的學生缺乏參與度,會造成部分自控力差的同學拿出手機,一旦拿出手機,在沒有人去制止的情況下很難停下來。教師因為要講解課程,很難分出精力去阻止這些情況的發(fā)生,導致了學習效果不明顯。教師的講課內(nèi)容主要針對大部分同學,這導致部分學習好的同學感覺進度偏慢,而部分接受能力較弱的同學則感覺跟不上。特別是前面幾次課程,如果同學不能很好地跟上進度,則后面大半個學期就很難跟上課堂的節(jié)奏,甚至自我放棄。學習動力動機決定了學生的學習方向、學習態(tài)度和學習進程[1],如何讓學生有持續(xù)的學習動力,值得教育工作者不斷地探索。
在實踐環(huán)節(jié),因為學生人數(shù)問題,教師忙于解答學生在實驗過程中的問題,沒有時間仔細查看每位學生所編寫的代碼,有時候即使老師看一下代碼,如果不是特別仔細地分析,也難免未能及時發(fā)現(xiàn)程序中不完善的地方。在這種情況下,學生在編寫完成代碼后,看到運行結(jié)果正確,就認為程序真的正確了,而實際上沒有考慮周全,存在很多不夠完善的地方,而這些地方卻是程序設(shè)計中更需要關(guān)注的。另外,實驗過程中因為教師較難在課堂上及時檢查和反饋所有學生的作業(yè)情況,需要學生把作業(yè)作為附件的形式上傳到FTP 平臺,教師再下載然后一個個去批閱,找出在檢查過程中發(fā)現(xiàn)的問題,并給學生打分。這種檢查作業(yè)的方式使學生不能及時獲得反饋,也花費教師大量的時間,學習效果不明顯。
目前工業(yè)企業(yè)在大規(guī)模的采用自動化手段來提高產(chǎn)品的質(zhì)量,并有效地提高了工人的工作效率,教學上如何提高培養(yǎng)學生的學習質(zhì)量和學習效率也是一個值得研究的內(nèi)容?;ヂ?lián)網(wǎng)技術(shù)的發(fā)展為教學效率的提升提供了技術(shù)支持,MOOC 上有很多優(yōu)質(zhì)教學資源可以利用,而學生又很想獲得優(yōu)質(zhì)教學資源,通過課程改革實踐使得兩者之間能夠很好地結(jié)合起來,如圖1 所示。只在課堂教學階段采用MOOC 資源,并未達到真正的“混合”教學的預期效果[2]。同時,在工程教育專業(yè)認證中非常強調(diào)人才培養(yǎng)的明確性、可衡量性,而程序設(shè)計實驗輔助平臺為程序設(shè)計課程效果的明確性和可衡量性提供了技術(shù)支撐。
在實驗過程中采用部分自動化的工具或平臺來提高檢查作業(yè)的效率,快速給學習者以反饋,讓學生知道程序中存在的問題,非常有利于提高學生的學習效率,也提高了教師檢查作業(yè)的效率。在實踐環(huán)節(jié)利用PTA(Programming Teaching Assistant,拼題A)程序設(shè)計類實驗輔助教學平臺提供的課堂測試功能和代碼評測功能,可以快速地檢驗學生掌握的情況。利用平臺的測試功能在上課開始的時候進行測試,檢驗學生MOOC 和翻轉(zhuǎn)課堂教學中學習情況。這樣做有多方面好處,首先能夠督促學生認真地學習MOOC 課程,提高學生的在線課程學習的參與深度和廣度;其次,教師可以了解大部分學生的知識點掌握情況,為課程的開展和實驗題目的選擇提供了很好的依據(jù),還可以及時發(fā)現(xiàn)部分知識掌握明顯有問題的學生,及早進行干預,避免以前要到期中考試才發(fā)現(xiàn)問題,這時候去干預就為時已晚;最后還可以作為到課情況統(tǒng)計,進行課前測試后,學生上課遲到現(xiàn)象基本上得到制止,還能使學生很快進入上課狀態(tài)。
圖1 基于MOOC 平臺和PTA 平臺的課程教學流程
通過測試和練習結(jié)果,實時了解學生的習題完成情況,掌握學生普遍存在困難的題目,有針對性地進行講解和指導。根據(jù)實驗情況,及時調(diào)整課程進度,并設(shè)置針對性的內(nèi)容在理論課上講解,也可以提出專題讓學生討論。同時測試和練習的結(jié)果作為平時的學習成績記錄在冊,做到了全過程評價。
Java 類面向?qū)ο蟪绦蛟O(shè)計課程作為核心專業(yè)基礎(chǔ)課,在MOOC 平臺上開設(shè)課程的教師比較多,有較大的選擇范圍,要找到和本單位教學任務非常匹配的高質(zhì)量MOOC 也不是一件非常容易的事情,還需要對部分內(nèi)容和課時進行調(diào)整、補充和裁剪。在開課前一個學期,選擇幾門MOOC 課程作為備選課程,自己作為學員親自完成課程的學習過程,深入體會課程的特點,為接下來的正式引入課程做準備。選擇課程的過程,主要通過查看課程概述、授課目標和課程大綱等,找出幾門內(nèi)容較為匹配的課程,再對課程進行試聽和跟隨學習。通過比較,可以選用中國大學MOOC 平臺北京大學唐大仕老師講的國家精品課程《Java 程序設(shè)計》,選擇唐老師課程的原因主要包括課程質(zhì)量非常高,能夠深入淺出地進行講解,很好地貫穿多個知識點。課程的時間進度和筆者的課程比較匹配,內(nèi)容上也覆蓋了本課程教學計劃內(nèi)容,并有較多拓展內(nèi)容,有利于學有余力的同學拓展知識。
和傳統(tǒng)課程相比,理論課大幅增加了課前預習任務,需要學生在上課前先完成視頻的學習和MOOC 作業(yè),準備教師布置的課前活動,課堂上也由教師講解變成了同學間的討論交流,具體的課前、課中和課后活動見表1。
在翻轉(zhuǎn)課堂開展過程中,教師不再是知識的傳播者,而更是學習活動的設(shè)計者,學生發(fā)展的評估者[3],學習方向的引導者。表2 為“對象和類”這次課中的一小節(jié)活動表設(shè)計樣例。
實驗環(huán)節(jié)采用PTA 平臺,該平臺上有很多高校教師貢獻的題目,除了傳統(tǒng)的判斷、選擇、填空等題型,重點還支持程序填空題、函數(shù)題、編程類題目。編程類題目支持C、Java、Python等20 多種語言,還可以選擇不同版本的編譯器。教師在測試過程中還可以選擇是否限定學生所使用的語言種類。學生根據(jù)題目的要求完成代碼的編寫后,把代碼提交到教學輔助平臺上,平臺可以及時反饋完成對錯、運行時間、所耗費資源等信息,通過整體性的測試數(shù)據(jù),為學習效果的評價提供支撐[4]。這樣學生可以很快知道代碼的正確性,改變了以前代碼完成后也不確定正確與否的狀況。實踐環(huán)節(jié)主要復習課程中的知識點,并培養(yǎng)學生實際設(shè)計開發(fā)能力。教師和學生在不同階段的主要任務見表3。
表1 教師和學生在理論課的任務
表2 課堂活動流程設(shè)計詳表
表3 教師和學生在實踐課的任務列表
在每次上課前,根據(jù)本周教學計劃,在PTA平臺上設(shè)置題目,一般包括客觀題和編程題??陀^題主要涉及視頻上講解的概念、翻轉(zhuǎn)課堂中討論的內(nèi)容,編程作業(yè)主要包括這周需要掌握的編程知識和所需要培養(yǎng)的設(shè)計能力。題目來源可以是其他高校教師共享出來的題目,也可以自己編寫題目,因為有不同層次高質(zhì)量的題目可以引用,對提高各類不同水平的高校起到較好的借鑒作用。
在實踐課時,一開始上課就先讓學生登陸PTA 平臺做客觀題,采用這種方式后學生遲到和缺課現(xiàn)象變得非常少見。在課程進行中,教師可以及時看到學生的總體編程答題情況,也可以看到學生每一次提交的程序代碼。學生通過在平臺上提交代碼,馬上就能知道自己的代碼是否存在問題,并及時進行修改完善。
通過每一次的測試和實踐環(huán)節(jié),都可以獲取到每位同學的測試結(jié)果,并作為平時成績記錄在冊。在課程進行過程中,根據(jù)學生的答題情況及時進行指導,特別是對普遍存在的問題,馬上進行講解。
傳統(tǒng)的課程期末考試的分值占比較高,一般平時成績和期末成績?yōu)?:6,采用MOOC+PTA的形式后,更加重視學習過程,過程性的學習、測試和作業(yè)的數(shù)據(jù)更加全面,總評成績權(quán)重調(diào)整為6:4。期末總評成績按照MOOC 線上成績15%,課堂討論和展示10%,PTA 實驗輔助平臺中的課堂測試和編程實驗成績35%,期末測試成績40%的比例計算期末總評成績,因為平時的測試和PTA 上作業(yè)比例比較高,學生普遍比較重視。這種評分模式產(chǎn)生的新問題是個別同學存在實驗編程代碼抄襲現(xiàn)象,計劃在后續(xù)課程中增加題目種類,啟用代碼查重功能,加強實踐過程的監(jiān)督管理等形式予以解決。
通過實施MOOC 線上線下混合教學和PTA實驗平臺實踐,學生普遍感到這門課上花費的時間要比其他課程多,實踐課變得很緊張,擔心下課前完不成任務。通過教學實踐,和同專業(yè)平行班相比,期末總體合格率和卷面成績都有較大提高,特別是能夠通過MOOC 學習并獲得證書的同學期末成績?nèi)亢细?,大作業(yè)的質(zhì)量也比沒有采用這種模式有明顯提高,有效地促進面向?qū)ο蟪绦蛟O(shè)計能力的提高,總體效果良好。
表4 試點班和其他班級期末成績比較
通過引入MOOC,學生能夠提前學習課程基礎(chǔ)知識,通過翻轉(zhuǎn)課堂等形式提高學生的參與程度,使得學生的知識掌握程度更加深入,學生的專注度也有較大提高,課堂氣氛變得更加活躍。通過PTA 系統(tǒng)的使用,實現(xiàn)了程序設(shè)計過程的實時反饋、實時評價,學生開發(fā)能力得到較好鍛煉,實驗課的效果有較大幅度提高,課程總體質(zhì)量有較大提高。合理利用MOOC 資源和程序設(shè)計類實驗輔助平臺,充分發(fā)揮兩者的優(yōu)勢,能較大幅度提高程序設(shè)計課程的教學和學習效率,教學質(zhì)量得到明顯提升,學生動手能力得到較大提高,具有較好的現(xiàn)實意義。