江天仿
摘 要:文章針對CDIO教學實踐中出現的問題,融入翻轉課堂理念,重構高職程序設計課程教學模式,將產品開發生命周期嵌入翻轉課堂教學環節,設計了分階段、遞進式“翻轉課堂+CDIO”教學模式。實證研究表明,“翻轉課堂+CDIO”教學模式能顯著提高教學質量,促進理論和實踐雙重學習目標的實現。
關鍵詞:翻轉課堂;CDIO;程序設計課程;教學模式
中圖分類號:G712? ? ? ? ? ? ?文獻標志碼 :A? ? ? ? ? 文章編號:1673-8454(2019)14-0047-04
CDIO是20世紀末麻省理工學院等四所國際知名大學聯合創立的一種現代工程教育模式。它以培養產業界合格工程師為目標,通過模擬工程師角色和工程實踐環境,以理實一體化的方式促進學生專業知識、實踐技能和職業素養的同步提升。CDIO 工程教育的實施,能夠有效建立理論與實際的關聯,解決專業教學中知識傳授與能力培養的矛盾,對兼具基礎性、實用性的高職程序設計課程教學改革具有重要的現實意義。
但CDIO 作為一種基于項目的群體教育模式,引入教學實踐后,卻出現了一些無法回避的現實問題:一是不能兼顧學生個體的差異性,學生在課堂講授環節必須掌握本次課的知識點,跟上班級的教學進度,否則難以進入課堂實踐環節的學習;二是“設計實現”經驗依賴于內容復雜、功能完備的工程項目,課堂有限的教學時間難以完成教學任務。此外,強調基于項目的協作探究,弱化基本編程技術訓練,要求學生在項目訓練過程中自覺主動地將項目經驗與理論知識融會貫通,實現理論和實踐的雙重學習目標,無疑提高了程序設計課程的入門難度。
針對上述問題,我們需要重構現有的高職程序設計課程CDIO教學模式,不僅能通過項目CDIO全過程以用導學、學做合一,更要兼顧學生的基礎,循序漸進地提高知識、鍛煉能力,保證項目的順利進行。本文將翻轉課堂理念引入CDIO教學中,通過線上線下教學的有機結合,構建了“翻轉課堂+CDIO”教學模式,以滿足高職軟件人才培養的需求。
CDIO 代表構思(Conceive)、設計(Design)、實現(Implement)、運作(Operate),涵蓋了產品從構思、研發、應用到反復改進的全生命周期,[1]主張以產品生命周期為教育環境,引導學生主動實踐并通過課程之間有機聯系的方式學習,在獲取一體化學習經驗的同時,將工程實踐問題和課程知識相結合,從而在專業知識和技能、終身學習能力、團隊合作能力、企業環境下構建產品能力等方面得到全面提升。
翻轉課堂則是將傳統的學習過程翻轉過來,學生課下自主學習教師提供的教學資源,完成知識的傳遞;課上通過合作探究、互動交流完成知識內化的一種新型教學模式。兩者均倡導以學生為中心,[2]在課堂上給予學生更多“做中學”的機會,充分發揮學生的主體能動性,最大限度地實現知識內化和能力提升。將翻轉課堂引入CDIO教學中,解決了有限學時與大容量、系統化的工程教學內容的矛盾,營造了個性化、協作式的學習環境,鼓勵學生課下自定步調地深度學習,為課堂上CDIO項目的順利開展創造了良好的條件。
“翻轉課堂+CDIO”教學模式,實質是現代教育技術與工程教育模式的有機結合。CDIO強調教學實踐過程的工程化,就程序設計課程而言,就是選擇接近實際的軟件項目作為教學貫穿項目,按翻轉課堂方式進行教學流程設計,按構思、設計、實現、運作四個步驟組織每一環節的教學活動。考慮到高職學生的認知水平和程序設計類課程的特點,我們將整個教學過程劃分為基礎教學和綜合運用兩個階段,按照軟件工程開發流程,遵循程序設計一般步驟,通過線上線下多元教學活動,融合課堂內外兩種學習形式,形成了以學科知識為基礎、實踐應用為重點、CDIO能力為目標的分階段、遞進式“翻轉課堂+CDIO”教學模式,如圖 1 所示。

Java作為一種純面向對象的編程語言,具有跨平臺、分布式、高安全性、健壯性、多線程等特性,[3]是高職院校計算機專業的核心課程。該課程理實并重,要求學生掌握Java的基礎知識,具備面向對象的程序設計思想,能用Java語言開發實際工作領域的應用程序。為了充分發揮學生的主動性,確保教學目標的順利實現,我們在教學中引入了“翻轉課堂+CDIO”教學模式。
1.教學項目設計
踐行“翻轉課堂+CDIO”教學模式,關鍵是CDIO框架下的項目設計。由于大多數學生沒有項目開發經驗,我們在Java程序設計課程中分階段引入兩類項目。
一類是仿真軟件項目,作為教學項目貫穿基礎教學階段始終。此類項目以實際軟件項目為藍本,根據課程目標改編而成。目的是有機整合課程知識,承載教學內容;在項目帶動知識的同時,能兼顧課程知識結構的系統性。我們選用“員工管理系統”項目串接Java課程理論知識點,教師按項目需求將其分解成若干個功能模塊,再將這些功能模塊進一步分解為一系列覆蓋課程知識點、由淺入深的小項目。每個小項目都具有各自的需求分析、算法設計、編碼、測試、運行等活動,實現局部功能的某項開發任務。隨著小項目的遞進,增量式完成整個系統的開發,隨之也完成了課程全部知識點的學習和訓練。項目內容及知識點對應關系如表1所示。在小項目的講解和訓練過程中,實現多次知識內化,引導、推動學生自主完成知識的建構和CDIO能力的形成。