唐滿,郭東恩
(南陽理工學院計算機與軟件學院,河南 南陽 473000)
高校培養方案中《Python程序開發》是一門重要的專業基礎課,除了計算機、軟件工程專業,智能制造、機械、數學等專業也相繼開設了該門課程。該門課程的學習效果對學生高年級專業課程的學習具有重要影響。通過調研發現,大多數高校在《Python程序開發》這門課的課堂教學上仍然采用“教師講授+學生練習”的方式,大多數時間是講授者在講,而忽略了作為學習主體的學生的感受。課堂教學沉悶乏味,多媒體課件質量不高,大多內容是教材的再現,授課內容聯系實際較少,學生參與度低,逐漸失去學習興趣,部分學生慢慢開始曠課,課堂上出現玩手機、打游戲、看課外書等現象,學生自覺學習的主動性不高,“隱形逃課”現象比較普遍,導致學習效果較差。
有效教學是教學過程有效性即符合教學規律的教學,研究者將有效教學主要概括為三個層面的含義:有效果、有效率和有效益[1]。對于一線教師來說最主要的是要提高教學的效果和效率。BOPPPS教學模式由加拿大溫哥華大學的Douglas Kerr團隊在1976年根據教育學的認知理論結合心理學而創建,是一個在課堂教學組織過程中強調學生參與式互動和反饋的閉環教學活動模型[2]。主要由導言(Bridge-in)、目標(Objective)、前測(Pre-assessment)、參與式學習(Par?ticipatory learning)、后 測(Post-assessment)和 總 結(Summary)在內的六個部分組成,簡稱BOPPPS[3]。導言引起學生注意,解釋課程的重要性,增加學習動機。目標包含學生在正常教學結束前,應該在什么情況下,理解、思考、判斷或實作哪些內容,達到哪種程度。前測部分要回答這樣一個問題:關于這次教學的主題,學生已經了解了多少。參與式學習是課堂教學的主要內容,學生要盡可能地參與其中,教師可以利用一系列經過設計的小活動或學習項目,來幫助學生達成之前訂立的目標。后測用來檢驗學生是否已經掌握教學內容,充分達成設定的學習目標。總結在教學的最后階段,讓學生有機會簡短回顧教學內容,并在此加以整合。該模型圍繞一個中心即學習目標,突出參與式學習,強調學習者在課堂中的中心地位,這是BOPPPS模型與傳統課堂教學的根本區別。
BOPPPS教學模式是被眾多高校實踐驗證的有效教學模型,該教學模式已經被全世界超過33個國家的高校引進并采用,被全球超過100所大學和培訓機構所推崇[2]。在中國,BOPPPS近幾年才受到廣泛關注并逐步推廣,應用及實踐研究起步較晚。兩年多來,BOPPPS教學模式在國內高校課堂教學中的應用得到迅速發展,對教師的“教”和學生的“學”都產生了深遠影響。
下面以《Python程序開發》第一章第1節Python入門(第1課時)為例,介紹BOPPPS教學模式在課堂教學中的設計與實施。
課堂教學過程設計的好壞直接影響著教學的效率和效果。本學期,《Python程序開發》課程的每節課都按照BOPPPS模式進行教學活動的設計,涵蓋BOPPPS完整的6個模塊,并且要權衡每個模塊的時間分配。導入怎么能短而精,快速調動學生學習興趣?目標怎么斟酌可以讓學生一目了然知道本節課要掌握什么、掌握到何種程度?前測如何通過簡單的方式有效測出學生基礎?參與式學習怎么設計可以讓學生成為課堂中心、積極熱情地全程參與?后測如何快速測出學生對本節課知識的掌握情況?總結如何靈活設計,根據后測結果針對性總結?以上都是每節課的教學設計需要認真考慮的問題??傊n堂教學設計既要成體系,環環相扣,在各個模塊的設計上又要精巧有度。
3.1.1 導言的設計
學習的責任主要在學生,但教師也有責任創造有利于學生學習的情景?!皩а浴钡墓δ芗词窃诮虒W活動中吸引學生注意力,并凸顯課程內容與學生之間的關聯,幫助學生專注在接下來的課程中。有效的導言可以通過寓教于樂的方式,讓教學內容引起學生注意,增加學生的學習動機。導言通常很簡短,可以是一張圖片、一個短視頻、一個故事等,引出學習接下來內容的理由、重要性、用途等。
Python入門這節課的導言是通過播放一段用Py?thon程序繪制玫瑰花的短視頻,引發學生的興趣和好奇心,趁機引出Python語言,并介紹本節課的學習目標。
3.1.2 學習目標的制定
學習目標(O)是BOPPPS模型的核心,其他5個部分都要圍繞“O”進行設計和實施。這里的目標跟以往的教學目標不同,傳統的教學目標是從教師角度出發,即通過一節課的教學要教授學生哪些知識;而學習目標是從學生角度出發,即通過本節課的學習學生要掌握什么,掌握到何種程度。通過對比可知,制定學習目標更符合有效教學。如何制定切實可行的學習目標就成為一個關鍵問題,可邀請學生一起參與制訂,一份學習目標應能說明在一次課完成時,學生將會知道或能操作哪些內容,涵蓋知識、技能和素質三個方面,并提供一些可觀察和檢測的方法,且學習目標應該是具體的、準確的、可評估的。
本節課制定的學習目標有三點:1.能簡要描述Python語言的發展歷史及應用領域;2.能歸納Python語言的語法規則,區分Python版本2和3的差異;3.能闡述Python程序的執行原理。
3.1.3 前測的設計
前測的目的是確認學生已經具備多少知識,能使教師知道該從何教起和如何開始教。如果學生對教學內容已經有深入了解,就會感到無趣,如果教學內容超出學生的能力,又會讓學生感到挫敗。前測最好是開放式的問答,可以讓學生將自身經歷和課程內容相結合,加強學生的參與感和投入度。也可以讓學生嘗試做出與教學內容相關的操作、闡述相關方法或者收集與教學主題相關的知識??梢允欠钦降目陬^回答,也可以是正式的筆測。
為了測出學生對Python語言的了解情況,本節課在微助教里設置了一道討論題:你認為使用Python語言能做什么?學生在移動端答題后,教師在電腦端查看詞云總結并展示在大屏幕上,通過詞云來了解學生基礎。并且,為了給學生激勵,在答題前規定前三名搶答的小組成員平時成績加1分。
3.1.4 參與式學習的設計
參與式學習環節是BOPPPS教學模式中最重要的環節[4]。參與式學習說說簡單,具體做起來并不容易。有人說提問、討論就是參與式學習,但是這些傳統的參與式學習并不是學生主動想要參與,效果也差強人意。真正地參與式學習是讓學生潛意識里覺得“這就是我自己的事,我要來想、來說、來做”,是自身的一種內驅力驅動學生主動參與學習。具體怎么設計比較關鍵,需要巧妙地構思。課堂參與有兩種形式:一種是教師與學生之間的互動,另一種是教師引導學生彼此互動。只有主動投入到任務中,學生才可能體驗到深入的學習,學習的效果才能持久。參與式學習階段(P)可以通過便利貼答題、微助教答題、分組討論、小組互評、實際演示等多種方式讓學生沉浸于課堂教學,以主人公的態度主動參與??傊?,整個課堂教學都讓學生很自然地參與其中,不止讓他們動手做,更要他們手腦并用,學思并進。
本節課的參與式學習設計了以下環節:
1)把學生分為A、B兩組,查閱TOBIE編程語言排行榜及其他相關資料,了解Python語言的地位、總結Python語言的發展歷程及特點,兩組匯總,挑選一名學生代表進行闡述,教師對學生的結果進行補充。
2)教師通過圖片及視頻展示Python在不同領域的應用案例,引導學生總結、提煉Python的應用領域。
3)教師通過在2.X版的IDLE和3.X的IDLE演示同一個Python程序的代碼,引出Python 2和Python 3兩大版本的差異,引導學生在編程時選擇適合的版本;并讓學生自由分組,通過觀察大屏幕上的代碼結合查閱資料總結出Python語言的語法規則。
4)引導學生用學生機上的IDLE演示一段教師機發過來的現成代碼,直觀地體會Python的執行過程和其他語言的區別,然后教師通過設置斷點逐行運行一個簡單程序引導學生理解Python程序的執行原理。
3.1.5 后測的設計
后測要和前測呼應,幫助教師檢測授課效果,從而調整后續授課,也能檢測出預期的學習目標是否達成。如何設計后測也是需要反復斟酌的問題,要既能測出真實情況,又能靈活應變和調整。后測需與課程開始時所預設的學習類型和程度相符,結合學生課堂學習情況,通過口頭闡述、動手操作等方式檢測學生對所學內容的理解及運用情況。
結合學習目標和前測情況,本節課的后測部分設計了兩個小測試:1)給出幾張圖片,讓學生說出是Py?thon在什么領域的應用。2)學生在微助教里用簡短的詞語闡述Python程序的執行原理。
3.1.6 總結的設計
如同導言可以為一堂課做簡介和開場,總結則能對所學知識進行整理,營造出一個工程完工的氛圍??偨Y可以幫助學生梳理知識結構、反思學習內容,并預告下一節課的內容[5]。教師可以引導學生對所學內容進行回顧,也可以讓學生彼此交流討論,或是引導學生用圖表等形式提煉課堂所學重點知識,教師在此基礎上進行補充,自然地引出下節課要學習的內容。
本節課的總結是隨機點選一名學生到講臺上,用圖表的形式對本節課的重點內容進行總結,其他同學可以支援和補充。
3.1.7 時間的分配和控時
一節課45分鐘,BOPPPS教學模式的6個部分都要在教學過程中體現,時間的分配和控制也是很關鍵的一個問題。比如,如果前測或后測時間太短,可能沒法測出學生的基礎和對所學知識的掌握情況;時間長的話,參與式學習的時間相對就會縮短,學生可能沒法對新學知識完全理解、掌握透徹,就不容易達到學習目標。所以,6個階段各部分的時間分配及課堂上的靈活控時就相當重要,這既需要授課教師具有豐富的經驗和預判能力,更需要對教學過程的設計進行反復琢磨和推敲。
參與式教學除了教學過程中設計讓學生參與的環節,更重要的是如何在課堂授課的過程中讓學生真正參與其中,而不是簡單地提問、討論這些傳統的方式。每次講授之前通過新穎、有趣的新課導入,吸引學生注意力;授課過程中老師重在引導,鼓勵學生思考、嘗試解決問題的思路和方法,變被動輸入為主動習得;前測和后測階段可以通過移動端答題、寫便利貼、調查問卷等形式讓學生參與其中;還可以通過學生評價、互評、總結等方式進行思維碰撞、互學所長等,鼓勵和引導學生動腦、動口、動手,讓學生潛意識里認識到每一部分都跟自己息息相關,就會很自然地主動參與教學,而不是被動參與。
通過與前一屆的綜合測評結果對比(如下表1所示)和學生滿意度調查(如下表2所示),可以看出通過將BOPPPS教學模式應用于《Python程序開發》的課堂教學,教學效果有了顯著提高,平均目標達成度為良好,學生在理論知識綜合運用能力、動手能力和評價能力等方面都有了顯著提高,學習獲得感也有了較大提升。

表1 《Python程序開發》考評結果對比表

表2 《Python程序開發》學生滿意度調查表
經實踐驗證,BOPPPS教學模式是一種有效教學,與傳統教學相比,可以大大提高學生參與度,有效調動學生的學習積極性,提高學習效果和課程目標達成度,與OBE教育理念相吻合;此外,該教學模式促進了學生創新性思維、批判性思維的培養,為后續大數據、人工智能等專業核心課程的學習奠定了基礎,對學生未來的發展和就業具有重要意義,可以推廣到Python課程群內其他課程的課堂教學。