夏保芹
CDIO工程教育模式是從2000年起,由麻省理工學院和瑞典皇家工學院等四所高校創立的工程教育模式,是近年來國際工程教育改革的重要成果[1]。CDIO代表構思(Conceive)、設計(Design)、實現(Implement)和運行(Operate),它以產品研發到產品運行的生命周期為載體,讓學生以主動的、實踐的、課程之間有機聯系的方式學習[2]。2005年汕頭大學工學院率先將CDIO工程教育模式引入中國,2008年高等教育司發文成立“CDIO工程教育模式研究與實踐課題組”,2016年成立“CDIO工程教育聯盟”。截至目前我國共有百余所高校加入“CDIO工程教育聯盟”,取得了良好的教學效果[1~3]。
數據庫實訓環節是數據庫原理與應用學習完后進行的一次綜合實踐課程,為期兩周,共60學時,其目標是全面鞏固和應用《數據庫原理與應用》課程中所學基本原理和基本方法,初步掌握小型信息管理系統設計的基本方法,提高運用數據庫解決實際問題的能力,培養獨立思考、團隊合作、發現問題和解決問題的能力。
在以往的數據庫實訓教學過程中,存在以下幾個問題:一是部分學生前期不積極,等、靠思想嚴重,靠最后兩天參考別人成果突擊完成,沒有經過嚴格的數據庫系統設計步驟進行設計,沒有達到綜合實踐的目的。二是部分學生只是進行簡單的設計,沒有經過系統的需求分析、概念結構設計、邏輯結構設計、物理設計、系統實施等過程,盲目進行設計,甚至硬拼湊。三是教師參與度不夠,以往教學中老師布置完任務后,學生分組做,在做的過程中,教師負責答疑,沒有完善的教學指導設計,導致學生沒有方向性、目標不明確,學生處于散漫狀態。四是項目評價重視個人能力,而忽視團隊合作精神。
針對當前實訓教學中存在的問題,應構建基于CDIO的課程教學過程,全程跟蹤、監管學生的設計,客觀、全面、全過程評價學習效果。
以數據庫實訓項目“簡易教務系統”為例,介紹CDIO模式在數據庫實訓教學中的應用。
(一)構思(Conceive):項目介紹,任務分析,明確目標。在構思階段,實訓指導教師發布實訓任務,對項目進行介紹,提出項目設計的具體目標和要求,引導學生進行系統需求分析,指出需求分析應從數據庫需求和系統功能需求兩方面結合進行。
對于“簡易教務系統”的任務是利用Java語言和數據庫知識設計一款適合高校教務管理的軟件,項目要求能夠實現對學生、教師、課程、選課等管理的功能,教師簡要介紹教務管理流程,使學生對該系統有大致了解,然后學生進行分組,一般2~3人一組,深入學校教務管理部門進行調查研究,做需求分析。在此過程中,教師要負責協調溝通各部分,為學生順利開展調研提供保障。最后,指導教師指導學生寫出需求分析報告。
(二)設計(Design):項目分析,任務分解,系統設計。在設計階段,主要包括兩方面任務:數據庫設計和系統功能設計。根據構思階段的需求分析報告,指導教師進一步分析項目整體框架,指導學生進行數據庫設計和系統功能設計,引導小組進行團隊分工與協作,同時提出設計階段的具體要求。
針對項目“簡易教務系統“,數據庫設計的實體至少應包含學生、教師、管理人員、課程、教室等。要求學生根據需求分析畫出E-R圖,進而轉化為關系模式,并結合關系規范化理論,對設計的數據庫模式進行規范化處理,在此提醒學生并不是規范化程度越高越好,還要結合數據庫的實際應用。在設計階段進行分層教學,對于基礎一般的學生可以實現數據庫的基礎設計,包括表、視圖、索引等的設計,對于基礎較好的學生,除了進行數據庫基礎設計外,可以指導其進行觸發器、存儲過程、數據庫安全性等方面的設計。
“簡易教務系統”的功能設計至少應包括學生信息管理、課程信息管理、教師信息管理、成績信息管理等基本功能。基礎一般的學生要求至少實現基本功能,基礎較好的學生除了基本功能外,指導其利用聚合函數查詢、分組查詢、模糊查詢等實現數據統計功能等復雜功能。
在設計階段,一定明確各小組成員分工,避免部分學生靠同組學生的成果“蒙混過關”,同時也要引導學生交流、溝通、合作,培養學生的交流溝通和團隊協作能力。此項目分工可以引導學生按照角色分工,即每個小組成員分別負責學生、教師、管理人員的功能設計,或者按照功能分工,即每個小組成員分別負責幾個功能模塊。要求學生寫出階段性的成果,并以紙質形式呈現,以此讓學生體會系統設計的完整過程,避免在實訓過程中出現前松后緊的情況。
(三)實施(Implement):功能實現,系統實施。實施階段是整個實訓教學的核心環節,主要任務是項目功能的實現,系統開發實施。在此階段采用模塊化方案,根據此前的分工,每個組員獨立完成各自的模塊。在實現過程中,指導教師要指導組員之間不斷進行交流溝通,確保后期系統合成時減少不必要的不一致性。針對項目“簡易教務系統”,根據信息管理與信息系統專業學生文理兼收的特點,指導教師采用“全程跟蹤指導”的方式教學。一是進行JDBC知識的講解,掃除學生Java語言訪問數據庫的障礙;二是指導學生進行Java語言連接數據庫,確保每一位同學都能順利連接數據庫,以提升學生的成就感,增強自信心,為后續數據庫訪問奠定基礎;三是指導學生各自進行模塊功能的實現。在此過程中,學生會出現各種編程問題,指導教師要不斷進行誘導性的個別指導,鼓勵他們自己發現問題并解決問題,然后總結問題后進行全班講解補充,以此加強學生職業素養的培養,養成良好的編程習慣,培養一絲不茍的工匠精神,加強學生的職業技能訓練。
(四)運行(Operation):項目運行、維護、評價。運行階段主要任務是指導學生進行系統合成并評價學生的項目。各小組把模塊組合成完整的系統,并不斷調試、運行,發現系統中的問題,并解決問題。這一過程中,如果發現嚴重系統問題,有可能會使工作返回到構思、設計階段,指導教師要同學們共同探討問題所在。
針對項目“簡易教務系統”,評價是該階段的主要教學任務,評價采用五級制,按照“過程性+實訓報告+答辯”形式進行,各部分包含的內容及占比情況如表1所示。

表1 項目驗收評價表
過程性評價主要考察學生的平時表現,階段性報告主要指在構思和設計階段的階段性成果報告。
實訓報告是實訓的成果展現,主要從報告格式和內容兩方面評價,格式要符合技術文檔編寫規范,段落分明,圖表整齊、規范,代碼規范等。內容上要求內容完整,結構層次分明,項目介紹條理清晰等。
答辯環節以小組為單位制作PPT進行匯報、展示,對設計思路、實現方法、應用技術、項目亮點及不足等進行闡述,指導教師根據匯報、展示評價項目質量,主要從數據庫設計、功能設計是否合理、全面,軟件界面是否友好,項目是否實用,應用技術難度等方面考察。并對每個小組成員進行提問,檢驗成員設計水平。
(五)融入課程思政內容。在實訓教學過程中,要時刻注意培養學生的職業素養和家國情懷。通過引入企業最新技術標準和規范,增強學生技能訓練,嚴格規范學生的編程習慣,培養一絲不茍的工匠精神,提高學生的專業能力。整個教學過程中,時刻體現以學生為中心的理念,培養學生利用所學知識解決實際問題的能力,教師起到引領、指導的作用,不能“越俎代庖”替學生解決項目中出現的問題。同時,鼓勵小組成員多交流、相互幫助,共同解決難題,培養團隊合作精神。例如,在“簡易教務系統”中,有的學生在連接數據庫時出現無法連接的問題,指導教師給出提示:一是檢查代碼有無錯誤;二是檢查是否添加了數據庫驅動;三是檢查在數據庫環境下是否可以用登錄名正常打開所連接的數據庫,如果不能,檢查SQL Server服務是否啟用,如果能,再檢查數據庫配置管理器中TCP/IP設置是否正確。教師給出提示后,要求小組團隊合作共同解決無法連接數據庫的問題。
在數據庫實訓教學中采用基于CDIO模式的教學設計,分階段實施教學,指導教師全程跟蹤指導,有效提高了學生的學習積極性和主動性,整個實訓過程是學生專業素養和能力提升的過程,也是學生團隊合作精神的培養過程,充分體現了“以教師為主導,學生為主體”的思想。同時融入課程思政,提高了學生的人文素養,實現了知識、能力、情感目標,實訓成績有明顯提升,達到了較好的教學效果。