韓婷婷
魯東大學信息與電氣工程學院 山東煙臺 264025
目前,風靡全球的MOOC思想正在深刻影響著高校課程的運行環(huán)境和教學模式。其中,MOOC對于計算機及軟件程序設計類課程的影響最為深刻,在各種MOOC平臺中,計算機和軟件類課程的教學資源最豐富[1]。在軟件程序設計類課程中,應該積極借助MOOC提供的全球優(yōu)質數字化教育資源,為軟件專業(yè)學生提供更前沿、更有效的教學,為我國快速發(fā)展的軟件產業(yè)提供高素質的人才。
不同課程具有不同的特點,單純的教學模式不足以達到最佳的教學效果。一些基于MOOC的計算機課程教學效果并不令人滿意,其主要原因是忽略了計算機課程強調實踐的專業(yè)特色。單純的MOOC在線學習很難提供充分的實踐機會保證學生能夠利用所學知識解決實際問題,構建理論聯系實踐的完整知識體系。在軟件程序設計類課程中,基于問題的學習PBL(Problem-Based Learning)能夠給學生提供充分的空間圍繞問題進行實踐和創(chuàng)新,激發(fā)學生的探索精神,塑造學生的獨立自主性和團隊合作精神,值得在軟件程序設計類課程中推廣。由此,在新形勢下,怎樣借助MOOC平臺實施翻轉課堂,并結合PBL教學法進行引導,取長補短,發(fā)揮MOOC資源和PBL教學法的優(yōu)勢,突出專業(yè)特色,達到軟件程序設計類課程最佳教學的效果。
MOOC(Massive Open Online Course,大規(guī)模開放式在線課程)是一種全新的開放式在線學習模式,目前國際知名的MOOC教育體系有Coursera,Udacity和edX等。國內外的高校對其重視程度都在不斷提高,例如麻省理工學院、哈佛大學、耶魯大學、清華大學、北京大學、浙江大學等國內外著名院校相繼加入到國際MOOC運行平臺。MOOC突破了傳統課堂教育的時空限制,學生可以在任何地點、任何時間獲得全球范圍的優(yōu)質教育服務,因此,也使得高??梢赃x擇世界范圍內最優(yōu)秀的在線課程資源建設課堂教學環(huán)境。MOOC教學提供了大量的互動在線課程,在學習方式上靈活多樣,富有吸引力, 給傳統的枯燥的課堂教學帶來了巨大的沖擊和挑戰(zhàn)。
翻轉課堂(Flipped Classroom)的教學模式也稱作“顛倒課堂”(Inverted Classroom)。在這種模式下,課前學生通過觀看MOOC視頻、查閱資料、參與討論、編寫代碼測試等方式自主學習,并且可以自由地利用碎片時間進行學習。課堂上,教師幫助學生歸納總結知識點、答疑解惑、互動交流、協作探究,通過以上方式的引導和協助促成學生的個性化學習。由此,教師的角色從主導講授變成了引導和協作,而學生的角色從被動接受變成了主動探究,其結果是大幅度提升了學生的學習興趣與主觀能動性,建立了學生的信心和成就感,能夠在實際的計算機和軟件教學當中顯示出良好的教學效果。
基于MOOC的翻轉課堂教學是將MOOC思想植入翻轉課堂,借助MOOC教學平臺實施翻轉課堂可以實現優(yōu)質教學資源的共享,達到優(yōu)化教學效果的目的[2]。
PBL(Problem-Based Learning)是基于問題的教學法,讓學生圍繞問題開展學習,將協作學習和自主學習相結合,得到一種探究式學習方法,在解決問題的過程中學習隱含于問題背后的學科知識,形成應用知識解決問題的技能,最終完成知識體系的構建[3]。與傳統的以授課為主的教學模式相比,PBL教學是由教師引導的小組討論式教學方法,其核心是教師提出真實且有意義的問題,學生小組通過自主學習、搜集資料獨立分析問題形成解決方案。教師對學習過程進行記錄和檢查,在學習過程中激發(fā)和鼓勵學生自主探究的熱情,鼓勵小組成員間的溝通和協作,組織小組匯報解決方案,鼓勵學生演講、答辯和自我反思。最終,教師對問題解決情況進行評估以確定是否達到學習效果,并反思以及修正教學策略。國外研究顯示,接受PBL教學模式的高校學生在綜合素質及終身學習能力等方面與傳統畢業(yè)生相比均有一定的優(yōu)勢[4]。
MOOC平臺中計算機類專業(yè)課是所占比重最大的課程系列,為計算機和軟件工程專業(yè)課提供了非常豐富的優(yōu)秀教育資源。但在應用MOOC的同時,應該關注計算機和軟件教學的專業(yè)特色。計算機是一門實踐性很強的學科,在依附于MOOC在線教學的同時,一定要結合線下的計算機實踐教學,這樣才能將理論和實踐真正結合,培養(yǎng)具有實踐動手能力和思維創(chuàng)新能力的計算機軟件人才。因此,在MOOC全球優(yōu)質教學資源的支撐下,為了充分發(fā)揮翻轉課堂和PBL教學模式對學生創(chuàng)新和實踐能力的培養(yǎng)作用,在Java程序設計課程中嘗試將兩種方法結合起來,形成一種融合式的特色教學方法。
對基于MOOC的課程,做好前期的準備工作是保證課程順利進行的必要條件。在課程開始之前,教師應該做好以下準備工作(如如1所示)。首先,根據教學大綱設置課程教學目標。針對學習內容制訂相應的教學計劃,對于學生自主學習內容錄制MOOC視頻。為學生基于MOOC視頻的章節(jié)學習制訂具體學習任務,以保證課程的整體節(jié)奏,例如:數組知識點的具體學習任務單如圖2所示。最后,向學生講解基于MOOC和PBL的新的教學流程和評價方法,介紹MOOC平臺,幫助學生熟悉MOOC平臺,推薦多種靈活的學習方法,組織學生下載平臺、注冊和選課。學生需要完成下載MOOC平臺學生端、選課、注冊等工作,還需要組成研學小組進行團隊學習。課程準備工作的流程如圖1所示。
圖1 課前準備工作
圖2 數組章節(jié)任務計劃
在課程開始之后,每個章節(jié)的知識分為4個環(huán)節(jié)進行,分別是學生在課前通過多種方式自主學習,并組織小組展開團隊學習和討論,開始研究一個基于所學知識點的新問題。在第一次課堂中,教師對小組提出的問題進行及時的指導和解答,引導學生總結深層次的規(guī)律,幫助小組逐步形成解決方案。課后小組深入討論,提出多種解決方案。在第二次課堂中,小組進行陳述,教師組織全班進行討論,對方案進行分析和評估。以下結合Java程序設計翻轉課程中的數組知識點進行討論,教學實施整體流程如圖3所示。
圖3 教學實施流程圖
3.2.1 課前學生自主學習 組織小組 開始探究一個新的問題
相比傳統的教學方式,在Java程序設計課程中,完全把學習主動權還給學生,并提供各種資源幫助學生自學。學生先閱讀教師推薦的課本熟悉課程內容,并結合觀看智慧樹平臺中的MOOC視頻進行第一遍學習。MOOC視頻制作成15分鐘以內的微視頻,將知識點進行分割,方便學生跟隨視頻一起編寫代碼快速掌握知識點。例如:數組知識點的視頻目錄如圖4所示。提供給學生一個知識點的閱讀列表(reading list),學習知識點相關的深層次內容。例如:學習數組需要學生進一步閱讀《Effective Java》第43條關于方法返回零長度的數組的原則。
圖4 數組視頻目錄
除了教師錄制的MOOC之外,為學生推薦了兩個MOOC平臺上的初級和中級課程,分別是“中國大學MOOC”平臺中浙江大學翁愷老師的《零基礎學Java語言》慕課,以及edx平臺上的《Advanced Software Construction in Java》慕課,以豐富學生的學習資源,滿足不同層次學生的學習需求。
作為課程作業(yè),提倡學生堅持在自學過程中寫“課程日記”,在接受新知識的同時,學會高效率地吸收知識,形成自己的認識和理解。將每天的學習成果按照自己的理解進行歸納總結,標志出重點和難點。這項作業(yè)使得學生將聽到的內容進行梳理并總結為自己的知識體系,加深了對專業(yè)知識的理解。課程結束后,一本《Java程序設計學習筆記》就形成了,充分展示了學生的自學成果,給學生帶來了很高的成就感。
學生自學結束之前,學習小組開始共同研究解決教師設計的具有現實情境的問題。例如:學習數組知識點時,給學生設計了商品庫存管理系統的應用問題,學生要實現庫存管理的身份驗證、用戶管理、庫存管理、產生庫存管理報告等基本功能。團隊開始協作分析問題需求,小組進行知識點的探究并討論問題的解決方案,對于理解不同或者不熟練的知識點,重新通過MOOC視頻和相關資料進行確認。對于問題的上下文關系可以通過MOOC平臺社區(qū)與教師展開在線交流,并將暫時無法解決的問題進行總結,等待課堂中進行討論。
3.2.2 第一次課中組織學生答疑解惑 引導學生解決問題
在課堂中,教師先幫助學生對自學知識點進行復習、梳理和總結,再穿插課堂練習和小測驗檢測學生將知識內化的效果。各小組進行團隊學習的陳述,提出所碰到的問題,教師組織學生進行討論,共同解答問題,在此過程中引導學生發(fā)現知識點在相關應用場景中應用的深層次規(guī)律,讓學生從中得到啟發(fā),形成經驗,逐漸形成問題的解決方案。
3.2.3 課后小組討論解決方案
課堂討論結束后,團隊小組就課堂中解答的疑難問題進一步討論,并嘗試提出解決方案,實施解決方案,對結果進行評估,反復此過程直到得到滿意的結果。在此過程中,以解決問題為目標,激發(fā)了學生的學習興趣,極大地調動了學生的主觀能動性,培養(yǎng)了學生的創(chuàng)新能力。對于程序設計類課程,使學生能夠將所學知識迅速應用于實踐,鍛煉了學生的動手能力和團隊協作能力,體會到了學以致用的樂趣。
3.2.4 第二次課中小組陳述
在第二次課上,小組之間分享解決方案。由小組推選代表進行陳述,其他小組對方案進行提問和評估,最后評選出方案最優(yōu)秀的團隊。這種方式為學生提供了一個溝通的平臺,可以讓學生充分自信地表達自己的思想和創(chuàng)意,同時也為團隊合作提供了一個機會,團隊中的成員發(fā)揮各自所長,協作配合,積極展示團隊的探究成果,真正把課堂變成了學生主導的舞臺。
針對融合翻轉課堂和PBL的MOOC課程,考核的重點不是理論考試成績,而是需要采用多元化的考核方式考核學生在學習過程中表現出的綜合能力。Java程序設計課程中考核內容包括線上學習表現、MOOC單元測試、團隊內部表現、團隊綜合表現、課堂表現、期末考試等方面。
MOOC在線學習平臺提供了在線學習進度和時間的評價依據,而在線討論情況因為不具有客觀性,不納入考核范圍。單元測試部分由MOOC平臺的單元測試成績作為評價依據;團隊內部表現由小組成員互評產生;團隊綜合表現由教師根據團隊的第二次課堂的陳述結果和表現給出評價;課堂的出勤率、回答問題表現和課堂小測試的成績作為課堂表現的依據;期末考試考核了學生對課程知識的全面掌握程度。以上的考核方式能夠從過程和結果對學生進行綜合考核,形成一個完備的評價體系。
相比其他學科的專業(yè)課程,軟件程序設計教學必須突出2個特色。第一,能夠培養(yǎng)具有扎實專業(yè)知識、并且能用專業(yè)知識解決實際問題的高級應用型人才;第二,能夠培養(yǎng)軟件企業(yè)需要的具有良好的語言溝通和團隊融入能力的綜合性人才。為了實現以上特色,在Java程序設計課程中對教學模式進行了改革,采用了翻轉課堂和PBL相結合的MOOC教學模式。經過2個學期的教學實踐,發(fā)現新的教學模式充分激發(fā)了學生的主觀能動性,從3個方面極大提升了學生的各方面能力。第一,提高了學生自學的技巧和消化新知識的能力,學生敢于挑戰(zhàn)和解決新問題。第二,提高了學生的創(chuàng)新能力和動手實踐能力。第三,提供機會讓學生進行團隊協作,增強了學生的溝通和領導能力。MOOC提供的線上教學資源,結合了線下PBL的問題式實踐,真正做到了理論和動手能力的結合,為實踐性極強的軟件程序設計類課程開辟了一條值得探索的新道路。