段喜龍 鄔志紅
摘? 要:經多年教學經驗積累,在工程教育改革的背景下,依據軟件工程專業培養目標,結合面向對象程序設計課程特點,分析南昌航空大學該課程存在的問題,開展基于BOPPPS的線上線下混合教學研究,以類間關系設計的關聯與聚合為例,詳細論述應用BOPPPS進行課程教學設計的全過程。教學以學生為中心,以學習成果為目標,激發學生的學習積極性,培養學生的自主學習能力、創新能力和新時代工匠精神,該教學方法不僅有利于培養軟件工程需要的應用型工程技術人才,還可以推廣至相關專業的程序設計類課程。
關鍵詞:BOPPPS;混合教學;工程教育;面向對象程序設計;學生為中心
中圖分類號:G642.1? ? ? 文獻標志碼:A? ? ? ? ? 文章編號:2096-000X(2023)23-0104-04
Abstract: After years of teaching experience accumulation, under the background of engineering education reform, according to the training objectives of software engineering specialty, combined with the characteristics of object-oriented programming course, we analyzed the existing problems of this course in Nanchang Hangkong University, carried out the research on online and offline hybrid teaching based on BOPPPS. We discussed in detail the whole process of applying BOPPPS to the teaching design of the course by taking the association and aggregation of class relationship design as an example. Taking students as the center and learning achievements as the goal, the teaching has stimulated students' learning enthusiasm and cultivated students' autonomous learning ability, innovation ability and craftsman spirit of the new era. This teaching method is not only conducive to cultivating applied engineering and technical talents required by software engineering, but also can be extended to programming courses of related majors.
Keywords: BOPPPS; hybrid teaching; engineering education; object oriented programming; student-centered
軟件工程學科本質上具有很強的工程性要求,以解決實際工程中的復雜問題作為重要目標,面向對象程序設計是軟件工程專業重要的學科基礎課和必修課,在整個教學體系中占據非常重要的地位。近年來,隨著工程教育專業認證在我國的不斷普及,傳統面向知識點的教學方式已經不能滿足要求,必須引入先進的教學模式和教學方法,從而適應軟件產業快速發展對新型人才的需求。
一? 南昌航空大學面向對象程序設計線上線下混合課程介紹
回顧南昌航空大學(以下簡稱“我校”)面向對象程序設計課程建設發展歷程分為三個階段:第一階段,面向對象程序設計語言階段(2007年以前)。以面向對象語言為主,重點為面向對象編程語法的應用。第二階段,面向對象程序技術應用階段(2008—2014年)。重點為面向對象程序設計,主要培養學生利用面向對象技術的應用。第三階段,重塑教學理念階段(2015—2023年)。重點培養學生的計算思維、創新意識及解決復雜軟件工程問題的能力,當前我校的面向對象程序設計課程教學過程中仍存在以下問題。
(一)? 教學方法和教學模式待改進
面向對象程序設計課程主要以教師為主體的講授方式,教師講授面向對象程序設計的思想和方法,要求學生掌握面向對象的核心概念和面向對象的實現機制及核心語法,并在此基礎上熟練運用面向對象程序設計的方法分析和求解實際復雜工程問題。在這種模式下,學生被動學習現象較普遍,缺乏獨立思考能力,學習主觀能動性缺失嚴重,當作業或實驗提高難度或復雜度時,個別學生選擇“知難而退”,甚至放棄。
(二)? 學生的自主學習能力待提升
自主學習能力提升是培育三全人才的關鍵,亟待解決學習源動力不足。我校軟件工程專業面向對象程序設計課程開設于一年級第二學期,學生僅具C語言程序設計基礎,其軟件思維和邏輯思維尚處于形成初期,程序設計能力有待提高。當學生跟不上課程進度時,部分同學也會在互聯網查找觀看相關學習視頻,但缺乏及時有效的交流和溝通,最終出現“眼高手低”現象,無法達成課程目標。學生停留在語法、驗證性實踐層面,學后無法學以致用,很難用所學去解決實際復雜軟件工程問題,創新就更無從談起。
(三)? 學生的創新能力待挖掘
開課伊始,教師明確課程研究對象和內容、學習目的、如何進行本課程的學習,但是很多學生更關注如何考試,是否能順利通過考試。在教學過程中,問怎么做的人多,問為什么的人少。通過對平時作業的解題思路可知,同學們局限于老師指明的思路,很少去嘗試新的方法和方案。在這種教學氛圍中,學生缺少創新思維和創新精神,創造力有待挖掘。
因此,當前作為教師必須思考的問題就是如何激發學生的學習興趣,都說興趣是最好的老師,這樣才能激發他們的學習熱情,變被動學習為主動學習,變學習枯燥為學習快樂。如何整合現有的教學資源,合理利用課前、課中、課后的時間,以期達到更好的學習效果。基于BOPPPS的面向對象程序設計課程線上線下混合教學,兼顧教學的每個環節,從根本上解決課堂上“師講生聽”的沉悶氛圍,對教學質量的提升有很好的促進作用。
二? 基于BOPPPS的線上線下混合教學簡介
網絡化、信息化已然成為高等教育教學改革發展的趨勢,不是多元條件與資源的簡單組合。基于BOPPPS的面向對象程序設計課程線上線下混合教學,結合工程教育專業認證相關要求,有效地利用以BOPPPS教學模式和SPOC課程模式為主的線上線下混合教學。
(一)? BOPPPS
BOPPPS教學模式是一種被廣泛使用、經驗證有效的教學模式[1],是加拿大廣泛推行的教師技能培訓體系ISW(Instructional Skills Workshop)的理論基礎[2],強調以學生為中心的教學理念,符合OBE的理念。把課堂教學過程進行模塊化分解:Bridge in(導入環節)、Objective(目標環節)、Pre-test(前測環節)、Participatory Learning(參與式學習環節)、Post-assessment(后測環節)和Summary(總結環節)。
BOPPPS教學模式的核心——注重師生互動,強調教學反饋。實施重點關注如何通過采用形式多樣的教學手段來實現師生全方位參與式的互動教學,從而確保既定課程教學目標的有效實現。解蕾[3]以財政與稅收課程為對象,探索了利用 BOPPPS 教學模式有機融合課程教學的時空、平臺及資源的教學改革實踐。課程組教師也在網絡安全課程中對此教學模式進行了病毒實驗的探索應用且取得較好效果[4],張亞周等[5]對基于BOPPPS模型的數字電路教學進行了設計和研究以提高學員的學習興趣。樊繼東[6]探討了如何在OBE模式下結合BOPPPS模式培養滿足車輛工程需要的應用型工程技術人才。
(二)? 線上線下混合教學——SPOC
SPOC這個概念是由福克斯教授最早使用的,是英文Small Private Online Course的簡稱,按照字面意義理解為“小規模限制性在線課程”[7]。這里的小規模是相對MOOC中的Massive和Open而言的。“Private”是指對學生設置限制性準入條件,滿足相應條件的學生才能修SPOC課程。很多學者不斷嘗試用引入SPOC的方式進行課程教學模式的探索和實踐[8-10]。本文的面向對象程序設計課程的線上部分通過SPOC平臺引入到課程教學資源中,在課前、課后學生可以根據教師要求或者自身需要進行自主學習安排,完成相關的測試等。
三? 應用BOPPPS進行課程教學設計
相對傳統課堂教學,BOPPPS教學模式符合OBE理念,著重強調教學效果、效率、效益,突出了學生的參與式學習的重要性。BOPPPS教學模式貫穿于線上線下整個教學環節之中,下面以面向對象程序設計課程中類間關系設計的關聯與聚合為例,詳細闡述如何結合BOPPPS教學模式進行教學設計的全過程,最終達到教學預期的效果,提高教學效果與教學投入的比值,滿足學生對教學的需求,進而提升學生學習的自我效能感。 (一)? 教學前期分析
展開教學之前,首先必須明確本門課程需要達成的教學目標,學生通過學習能夠運用面向對象程序設計方法,針對復雜軟件工程問題的模塊完成面向對象的表達與高質量編程,并能通過文獻檢索結合面向對象分析技術,對負責工程問題進行模塊方案設計、比較、分析。領會軟件技術對促進我國經濟社會發展的重要意義,增強軟件質量意識,鍛煉誠實守信、堅韌不拔的品格和精益創新的新時代工匠精神。本次課的教學重點在于關聯關系與聚合關系的適用場景及其優缺點,難點在于如何從面向對象設計映射到面向對象編程實現。
(二)? 教學過程組織
第一階段:導入。
課程設置導入環節,先引出本機可得教學內容,一方面可以引起學生的關注度,另一方面讓學生在不知不覺中融入到學習內容中去。
本次課采用案例導入的方式,在SPOC中發布國內外知名品牌汽車雨刮系統的視頻案例,包括特斯拉理念的雨刮系統。平時生活中經常用到,但是很多同學并不了解這個系統,通過觀看視頻,為學生展示雨刮系統的基本結構,其由雨刮片、雨刮臂、雨刮連桿、雨刮電機、開關和噴水電機組成;視頻講解該系統的控制方法,并展示目前主流雨刮系統的運行效果,包括被動感應式雨刮,主動場景識別式雨刮。引出相應的問題:雨刮系統軟件部分應如何設計?這個有現實需求的設計任務能很好地激發學生的興趣和求知欲。
第二階段:目標。
明確的學習目標能給學生指明學習方向,也是教師對學生學習效果的評價指標,根據OBE的理念學習目標具體分為知識目標、能力目標及素養目標。
本次課的學習目標包括:知識目標——學生會判斷類間關系的類別,能夠根據需求場景,分析其特點并選擇合適的關系;能力目標——學生能夠應用類間關系進行合理的類設計,從而解決實際案例中的復雜的軟件工程問題;素養目標——培養學生在類設計時應持有的精益求精的新時代軟件工匠精神。
第三階段:前測階段。
前測的目的是教師更好地了解學生對相關知識的認知程度,根據前測的結果教師要適當調整講解的方法、進度、深度。
本次課是通過中國大學慕課平臺上的慕課發布了學習視頻,要求學生課前自學類間關系部分章節內容,然后采用PTA的OJ平臺發布了一個課前任務,要求學生根據普通雨刮系統的實際需求分別嘗試采用面向過程及面向對象的方法完成雨刮系統的模擬程序。
OJ平臺發布的是普通風擋玻璃雨刮系統:雨刮的擺動速度由控制桿、刻度盤兩種元件決定,其中控制桿有停止、間歇、低速及高速四個檔位,刻度盤有1、2、3三種刻度,雨刮的速度見表1。
嘗試使用面向對象技術對上述問題進行類設計。本次課前測主要考查兩個知識點:一是學生是否熟練類的設計,二是學生是否準確完成類間關系設計。
第四階段:參與式學習。
線下課堂教學給學生參與式學習提供了很好的溝通、交流,學生是課堂的主體,教師是組織者、引導者、幫助者,這一步的重點是如何讓學生這一主體更多地參與到學習過程中,可以采用分組討論、頭腦風暴、世界咖啡館等調用學生參與度的教學方法,目標是調動學習積極性,積極鼓勵學生參與。
本次課前教師要去查看比較同學們提交的模擬程序,根據學生在PTA的OJ平臺上的測試結果組織課堂,采用討論式教學方法,讓學生參與三種雨刮方案(圖1—圖3)的深入剖析,讓同學們對現有方案提出可能存在的問題,并引導學生提出各種不同的解決方案以嘗試解決問題,針對不同的解決方案,分別引導出面向對象設計的可復用性、可擴展性及可維護性等特性,從而引申講解面向對象設計原則相關內容,在前三個方案基礎上引導學生給出其他設計方案。關注幾個問題:①單一職責模式在案例中的應用;②實體類與業務類的區別;③關聯與聚合的區別;④類圖到代碼映射的思路。
第五階段:后測階段。
后測階段主要是評估學生的學習效果,與課前制定的學習目標要相呼應,了解本次課是否達到了預期的教學目標。
針對課堂教學確定的設計方案,要求學生立刻重新采用面向對象設計方法對雨刮系統進行重構,確定第四種方案,如圖4所示,特別強調要求本次設計要滿足可復用性、可維護性等要求,編碼實現并通過PTA平臺上的評測。
第六階段:總結階段。
課程最后,總結本次課堂內容,根據學生后測的結果對學生源碼存在的問題進行統計分析,從而總結本次課在組織和實施過程中存在的問題,分門別類進行總結并制定出相應改進措施。另外引出下節課的新的內容:①關聯的耦合性,引導出下次課的依賴部分內容;②聚合在可復用性方面與泛化的區別,引導出下次課的泛化部分內容。
為了進一步提高學生的參與度,激發學習興趣,留給學生一個擴展的思考題:在方案四的基礎上,如何做到面向對象設計的可擴展性,例如控制桿的檔位增加或者刻度盤的刻度增加,如何在保證“開-閉”原則的基礎上進一步重構、優化設計。
四? 基于BOPPPS教學實施教學效果
BOPPPS模式與線上線下混合式教學模式已經在2019級軟件工程專業學生中實施,課程建立了“課程自評找弱點、學生問卷找短板、同行評價找差距”“三位一體”的面向產出評價機制,實現對課程教學的持續改進。
實施結果表明運用參與式學習方式,使學生學習積極性明顯提高,在提升學生程序設計能力的同時,還從根本上解決了學生課前準備不充分、線下討論不活躍的問題,對教學質量的提升有很好的促進作用。同時,還培養了學生軟件開發與設計實踐能力及創新精神與創新能力。線上線下混合式教學模式可以兼顧提升學生自主學習能力、互動交流能力、合作學習能力等,同時還可以促使學生在潛移默化中具備一定的專業素養和人文素養。
五? 結束語
本次研究實施對象為軟件工程專業學生的面向對象程序設計課程,通過對課程內容的重構及課堂教學內容的重新組織編排,采用“以學生為中心”的教學理念,通過BOPPPS+線上線下混合式課程教學改革,使得學生在學習程序設計類課程的過程中能夠在建立自信心的基礎上,通過作業的逐次迭代,提高編程能力,逐漸獲得解決實際復雜軟件工程問題的能力。此教學方法可以進一步推廣至相關專業其他程序設計類課程。對于促進軟件工程專業程序設計類課程教學模式的改革與創新具有重要的意義與作用。
參考文獻:
[1] 杜湘瑜,李德鑫,陳長林.基于BOPPPS模型的模擬電子技術基礎線上線下混合教學研究與實踐[J].高教學刊,2020(13):8-12.
[2] 曹丹平,印興耀.加拿大BOPPPS教學模式及其對高等教育改革的啟示[J].實驗室研究與探索,2016,35(2):196-200,249.
[3] 解蕾.BOPPPS視角下混合式課堂教學模式實踐研究——以“財政與稅收”課程教學為例[J].陜西教育(高教),2022(2):37-38.
[4] 彭曉紅,鄔志紅.基于BOPPPS模型的“網絡安全”課程中反計算機病毒技術的教學設計[J].電腦知識與技術,2019,15(21):49-50.
[5] 張亞周,鐘兆根,孫雪麗.基于BOPPPS模型的數字電路教學研究[J].大學教育,2021(6):112-114.
[6] 樊繼東.OBE模式下BOPPPS模組在工程類課程教學中的應用——以汽車電子與控制教學實踐為例[J].大學教育,2020(2):90-94.
[7] FILIUS R M,DE K A M,UIJL S G, et al. Strengthening dialogic peer feedback aiming for deep learning in SPOCs[J].Computers & Education,2018(125):86-100.
[8] 苗宇,蔣大明,劉澤.基于BOPPPS的“自動控制原理”SPOC教學[J].電氣電子教學學報,2021,43(1):47-50,76.
[9] 章艷,陳希有,魯娜,等.電工技術SPOC教學模式的探索與實踐[J].電氣電子教學學報,2019,41(6):8-10,40.
[10] 劉曉芳,吳建強,韓基業,等.“電工學”SPOC混合教學模式下課堂教學設計[J].電氣電子教學學報,2019,41(1):95-98,106.
基金項目:2021年全國高等院校計算機基礎教育研究會計算機基礎教育教學研究項目“基于OBE的面向能力培養的‘面向對象程序設計課程改革研究”(2021-AFCEC-325);2023年教育部產學合作協同育人項目“基于學習工場的軟件工程專業程序設計類課程產教融合教學模式研究”(220702377203849);2020年江西省線上線下混合式一流課程“面向對象程序設計”(贛教高字[2020]27號);2020年江西省重點研發計劃“基于深度神經網絡的森林煙火自動檢測與智能分析系統”(20203BBGL73222);2021年南昌航空大學教改課題“基于線上線下融合BOPPPS模式的‘面向對象程序設計課程改革與實踐”(JY21102);2021年南昌航空大學第二批“課程思政”示范課程建設“面向對象程序設計”(sz2142);2021年南昌航空大學第二批“課程思政”示范課程建設“數據結構”(sz2155)
第一作者簡介:段喜龍(1978-),男,漢族,黑龍江哈爾濱人,碩士,講師。研究方向為信息系統和軟件測試技術。
*通信作者:鄔志紅(1977-),女,漢族,黑龍江綏化人,碩士,講師。研究方向為算法與網絡安全。