,, ,
隨著大數據、云計算、移動服務等新技術的發展,信息技術與醫藥領域的結合越來越密切。在這種背景下,醫學生除需要掌握計算機基本操作外,還需要掌握基本編程技能[1],能夠使用一種語言編寫有應用價值的簡單程序,方便醫藥行業使用。
開設程序設計類課程的主要目的是培養學生的邏輯思維能力、計算思維能力和解決實際問題的能力。很多醫學院校為學生開設程序設計類課程,比如C++、VB、C#等。筆者在多年的教學實踐中體會到,如果不考慮醫藥專業特點,只是簡單地把計算機專業的程序設計語言從計算機專業搬到醫藥專業教學中,就不可能取得很好的教學效果。因此,在程序設計類課程的教學中,我們不斷改進教學方法,努力提高教學質量,同時進行了一些有益的嘗試,如將翻轉課堂和任務驅動式教學法結合進行混合式教學,取得了較好的教學效果。
在《程序設計基礎》課程中,采用任務驅動式教學法。每章精選一些有實際應用價值的、經典的、具有趣味性的任務實例,讓學生在完成任務實例的過程中掌握新的知識點,達到既定的教學目標。這種教學法應用兩年多以來,激發了學生的學習興趣,取得了良好的教學效果。但是,課程學習還是“課堂學習”和“教師為主導”,學生處于被動學習的狀態,在具體實施過程中還存在以下問題。
《程序設計基礎》課程是一門實踐性很強的計算機語言類課程。在傳統的教學模式中,教師課堂講解的語法規則相對簡單,容易理解,而學生需要課后完成的任務相對較難,并且還會遇到各種問題。因此就導致在學生最需要教師給予幫助、輔導的時候,教師不在身邊,把困難留給了學生。
因學生本身的專業知識、專業能力的限制,完成任務需要很多時間。課后在沒有教師的幫助和監管下,完成的任務往往質量不佳。有些同學因感覺難度大而放棄任務,有些同學直接抄襲同學或網絡上的答案,長期下去將導致學生慢慢失去對程序設計類課程的興趣。
教師課堂講授的內容難度和每次布置的任務難度相同,難以滿足不同層次的學生的需求。基礎較好的同學能夠輕松地完成任務,甚至覺得老師布置的任務缺乏挑戰性;基礎較薄弱的同學則覺得教學進度太快,教師講授的部分內容很難理解,需要詳細、重點講解。
程序設計類課程都建立了Black Board(BB)平臺,但是沒有真正使用BB平臺開展教學活動,BB平臺沒有得到充分的利用。
北京中醫藥大學(以下簡稱“我校”)新的計算機課程的改革明確提出要減少課時,但程序設計類課程的內容較多,要完成教學內容,課堂必須要延伸到課外,與學校要求相矛盾。
翻轉課堂(Flipped Classroom)是2007年由美國科羅拉多州落基山林地公園高中的兩名化學老師Jon Bergmann和Aaron Sam提出的,他們將教學過程錄制成視頻,讓學生回家觀看,在課堂上完成作業,老師在課堂上解答學生學習中遇到的難題。這種教學方式很受學生歡迎,對教學產生了積極的影響[2]。翻轉課堂的結構和模式建立了“以學生為中心”的教學方式,顛覆了傳統的教學結構、教學方式和教學模式。
任務驅動式教學法是以構建主義的認知靈活性理論為基礎的一種探究式教學方法[3]。它將教學內容設計成具體任務,教學中以完成任務為主線,將要學習的新知識巧妙地隱藏在任務中學生對任務進行認知、分析后,制定解決方案,在教師的引導、幫助下,利用必要的學習資料,完成任務,達到獲得知識和技能的目的。任務驅動式教學法以學生為主體,教師為主導,改變了“教師講,學生聽”的被動教學模式,強調學生對知識的主動探索、主動發現和對知識的主動構建[4]。因此非常適用于實驗性、實踐性教強的程序設計類課程。
為了解決任務驅動教學法存在的問題,達到更好的教學效果,我們將“翻轉課堂”的教學理念引入到程序設計類課程中,將任務驅動教學法與“翻轉課堂”相結合,充分利用BB平臺,將整個課程的進行過程部署在BB平臺上,進行任務驅動式翻轉課堂在程序設計類課程中的研究與實踐。
任務驅動式翻轉教學的核心思想是將知識的傳授過程移到課前,由學生自學完成;通過完成任務實現知識內化的過程移到課堂上,以學生討論、教師指導等方式完成[5]。教學流程如圖1所示。
課前,教師在BB平臺上準備本章的知識點介紹,重點、難點介紹和考核方式等導學文檔;制作各個知識點相應的學習資料,以視頻、PPT、Word文檔的形式讓學生通過自主學習,掌握知識點,并通過課前測驗檢驗學習情況。學生在完成課前學習后,還可以進一步了解本章要完成的任務背景知識,為完成任務做好準備。
在課堂上,教師對學生的課前學習情況進行檢查,查漏補缺,總結知識點;隨后介紹要完成的任務,師生展開討論,確定任務實現方案,并在教師的指導下完成。根據任務的難度和工作量,可以分組或個人完成。如果分組完成任務,各小組可以匯報完成情況,教師或其他同學進行點評、提問。課后,教師對整個教學過程進行反思,不斷改進;學生完善作品并提交,準備下次課程的內容。

圖1 任務驅動式翻轉課堂教學流程
在任務驅動式翻轉課程的教學過程中,任務的設計非常重要。如果任務設計過于簡單,不能與實踐相結合將會失去意義;任務過難過于繁瑣,學生將會失去完成任務的信心。因此,所選的任務需要應用本章知識點去解決,并具有實際應用價值。實現任務的過程就是內化、提升本章知識點內化、提升的最好渠道。課程的任務選取上,每個知識單元選取3個層次的任務以滿足學生的需求[6]。
第一層次:驗證型任務。驗證型任務通常比較簡單,涉及一個或少數幾個知識點。學生通過重復教師課前視頻所講的驗證型任務可以達到快速掌握知識點,加深知識點的理解。每個學生都要完成驗證型任務。部分簡單的驗證型任務,學生就可以在課前通過學習,自己獨立完成。
第二層次:提高型任務。提高型任務比驗證型任務難度有所增加,當學生掌握知識點后,只要積極思考,舉一反三,融會貫通,大部分同學都可以完成。有些提高型任務是從實際應用中截取的部分小功能實現的,學生通過練習,可以為進一步完成綜合型任務做好準備。
第三層次:綜合型任務。綜合型任務是綜合本課程的所學知識解決實際應用。如程序設計課程學完后開發一個教務管理系統、學生宿舍管理系統、記事本程序、多媒體播放器等。如果工作量較多,難度較大,可以分小組完成。通過綜合型任務,培養學生分析問題、解決問題的能力和創新能力。
為了更好地監督學生完成任務,對不同層次任務要求不同。驗證型任務要求學生課前完成作業并提交;提高型任務要求學生課堂完成,若有困難,老師指導、講解后完成,下課時提交;綜合型任務需要學生課后完成,因工作量較大,完成時間可以略長。通過小組展示、師生交流、教師點評檢查完成情況。
學生將所有任務作業都上傳到BB平臺上,教師可以查看到學生的提交次數、提交時間以及完成情況。對于分組作業,還可以借助于BB平臺的分組功能,查看小組內每個同學提交作業的情況以及完成任務的全過程。教師可以在學生遇到困難時給予指導。
BB平臺是由美國BlackBoard公司開發的在線教學管理平臺。該平臺以課程為中心,教師可以在BB上開設課程,學生選擇課程進行自主學習,師生在BB平臺上可以進行教學活動。全球有100多個國家的很多高校都在使用BB平臺,北京大學、中山大學、北京師范大學、中國人民大學、北京中醫藥大學等多所全國重點高校都在使用BB平臺[7]。
BB平臺功能強大,并不斷推出新的功能,主要功能包括教師教學資料的上傳和學生的下載。學生可以提交作業,教師在BB平臺上批閱,學生會看到批改情況;教師可以部署測試,進行在線考試。在BB平臺上可以建立課程論壇,師生可以展開討論。
和大型MOOC學習平臺相比,BB平臺有以下優點。一是教師不需要資金投入,教師個人可以完成錄制視頻,準備資料,部署課程。大型MOOC如Coursera、edX、udacity、中國大學MOOC、學堂在線等,一門課程往往需要專業團隊花數月時間和數萬元資金進行錄制打造,一個高校只能推出屈指可數的寥寥幾門課程。二是學員都是本校學生,學生水平一致,學習效果較好。大型MOOC面對全球學員,層次參差不齊,真正拿到證書的學員比率非常低。因此,BB平臺非常適合一線教師開展在線教學。本課程在BB平臺上部署課程,并按照章節、周次劃分課程,每章都有本單元內容、學習指南、學生課前自主學習、教師課堂教學資料模塊。不同教學周給學生開放不同內容,學生根據本周學習內容清單進行學習。整個課程的效果如圖2所示。

圖2 BB平臺課程部署
學生課前自主學習模塊詳細介紹的任務情況、任務運行效果、所需知識點等內容。知識點以微視頻的形式為主,每個知識點大約5-6分鐘,并安排知識點測試,考察學生知識點的掌握情況。
部分教師課堂教學模塊還將重點、難點知識點錄制微視頻,并介紹任務實現的思路、關鍵步驟、關鍵代碼、任務提交等內容。教師課堂教學部分如圖3所示。

圖3 教師課堂教學模塊
借助BB平臺的強大功能,將在線學習和課堂教學有機結合起來,使課程學習的全過程都可以在BB平臺完成,極大地提高了學生的學習積極性和動手能力,教師能夠掌控整個學習情況。在學時縮減的情況下,教學內容沒有減少,并更加注重學生分析問題、解決問題能力的培養。BB平臺非常適合固定班級學生開展翻轉課堂。
本文在《程序設計基礎》課程中,根據以往教學中存在的問題,將任務驅動式教學法和翻轉課堂教學模式相結合,改革教學流程和教學模式;并在BB平臺上按照章節、周次,課前、課堂部署教學內容和教學流程。
整個教學過程中,注重各章不同層次任務的選取和任務完成情況的監督。BB平臺非常適合針對固定班級學生開展翻轉課堂。目前,在BB平臺的使用過程中,還不能實現“作業互評”功能,有待于以后繼續挖掘。任務驅動式翻轉課堂教學法通過在程序設計課程中的兩輪實施,取得了很好的教學效果,值得推廣。