宗欣露 徐慧
摘要:針對當前軟件工程人才的培養過程中重理論、輕實踐等問題,本文以CDIO的教育理念為指導,提出與CDIO四個能力要求應適應的四個教學模塊,并在此基礎上提出了基于CDIO的教學方案和教學改革方式,以及對案例教學、任務驅動、注重基礎知識的傳授、綜合能力、協作能力和工程能力的培養,并取得了良好的教學效果。
關鍵詞:CDIO;軟件工程;教學改革;人才培養
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2015)04-0096-02
一、引言
我國軟件工程專業的迫切任務是盡快培養與國際接軌的軟件工程師。然而長期以來,我國軟件工程人才的培養還存在不少問題,如重理論而輕實踐、強調個人學術能力而忽視團隊協作精神、重視知識學習而輕視開拓創新的培養等問題。然而,片面地強調實踐環節、不重視理論基礎,又造成理論和實踐之間的比例不平衡,沒有形成穩定的培養體系。
CDIO[1]工程教育模式是近年來國際工程教育改革的最新成果,代表構思(conceive)、設計(Design)、實現(Implement)和運作(Operate),是麻省理工學院和瑞典皇家工學院等四所大學合作開發的一整套工程教育理念和實施體系。CDIO的理念不僅繼承和發展了歐美20多年來工程教育改革的理念,更重要的是系統地提出了具有可操作性的能力培養、全面實施以及檢驗測評的標準。CDIO培養大綱將工程畢業生的能力分為工程基礎知識、個人能力、人際溝通能力和工程系統能力四個層面,大綱要求以綜合的培養方式使學生在這四個層面達到預定目標。迄今為止,已有幾十所世界著名大學加入了CDIO組織,采用CDIO工程教育理念和教學大綱[2,3],并取得了良好效果,按CDIO模式培養的學生深受社會與企業的歡迎。我國現在有39所高等院校加入了CDIO組織。國內外經驗表明,CDIO是一種先進可行的教育模式,可以使學生以主動的、實踐的、系統的方式學習軟件工程知識,培養學生掌握基礎工程技術知識,加強動手操作能力、綜合應用能力和團隊合作能力。這種模式不僅注重培養學生扎實的專業技術知識,更關注團隊協作精神和創新精神的培養,通過“做中學”[4]和“基于項目的教育和學習”[5]的教學模式培養既有扎實的專業技能,又有良好的團隊協作能力和創新能力的國際化工程師。
本文將CDIO的教育理念應用于軟件工程專業的課程教學改革中,在深入理解CDIO理論的結構、運作方式的基礎上,提出適合我國國情的基于CDIO的軟件工程教學改革方案,該方案緊扣“構思、設計、實現和運作”這一思想,將軟件工程整個知識體系的教學劃分成四個階段,同時在教學中采用以任務、案例和項目為驅動的啟發式教學等多種方式,培養學生的基本能力、綜合應用能力、協作能力以及工程能力。
二、基于CDIO的軟件工程教學模式
1.四級能力培養目標。軟件工程專業人才培養目標是培養具有合理知識結構、扎實專業基礎、嫻熟英語溝通能力,具備工程技術創新能力、項目組織管理實施能力以及國際競爭能力的高素質軟件工程師。
具備良好的職業道德、職業素質,了解本專業的發展現狀、趨勢、技術標準、行業政策和法律,全面發展具有國際競爭能力的高素質軟件工程技術及管理人才。
2.教學模塊設置。工程化教學主要包括四個教學模塊,對應CDIO工程教育模式所要求的四種能力:(1)基本知識教學模塊:主要包括公共基礎課程和專業基礎課的實驗。教學內容圍繞每門課程的教學目標,增強學生的基本工程素質和實驗技能,實現第一層次的工程基礎能力培養。(2)專業基礎教學模塊:主要包括專業核心課程的教學和實踐,主要針對專業核心課程的課程設計。教學內容在相關課程的實驗基礎上,完成設計型實驗,強化學生對核心課程的原理和方法的理解以及應用能力,實現第二層次與第三層次的個人能力及團隊能力培養。(3)專業綜合教學模塊:主要針對課程群項目實踐,包括專業領域方向的綜合設計。教學內容根據課程群的綜合目標設置,培養學生面向行業領域的系統分析、應用、綜合、設計與創新能力,實現第二層次與第三層次的個人及團隊能力培養。(4)工程綜合教學模塊:主要包括面向企業實際應用的項目、畢業實習和畢業設計,使學生綜合運用所學知識,采用團隊協作方式完成項目的開發全過程,并撰寫相應文檔、技術報告等,實現CDIO第四層次的工程系統能力的培養。
3.教學實施方案。基于CDIO工程教育模式的軟件工程教學方案依照軟件生命周期中的軟件分析、軟件設計、軟件實現、軟件運行和維護這幾個階段,將CDIO中的構思、設計、實現和運作與軟件生命周期結合于一體,通過學生主動的各階段關聯學習,經歷從理論到技術、從技術到生產、從生產到運營的全過程,讓理論、技術、實踐、運營各部分按比例協調發展。
第一階段,構思階段:對國內外關于CDIO的理論與實踐進行調研,深入理解CDIO理論的結構、運作方式。運用軟件工程原理,由淺入深地設計出學生需要掌握的知識體系,構思針對這些知識的經典案例。根據這些實際教學案例,學生進行分析、思考、討論和調研,然后確定一個有實際應用價值的研發項目,進行可行性研究和需求分析。
第二階段,設計階段:運用軟件工程方法,完成軟件系統的設計,包括軟件體系結構設計、構件設計、數據庫設計和接口設計,從而進一步加深學生對軟件工程原理、方法和技術的理解和再認識。
第三階段,實現階段:在計算機上完全實現軟件系統,并完成所有測試。本階段考查學生對計算機編程語言、軟件設計、數據庫、軟件測試等多門課程的掌握情況,培養學生的鉆研精神、編程能力、工程能力和團隊精神。
第四階段,運作階段:實現軟件系統的運營,包括建立應用、營銷、售后和服務渠道,讓系統投入實際應用,培養學生的市場能力和服務能力。
4.教學方法改革。教學方法單一、師生缺少交流和互動是現階段導致學生學習乏味、教學效果不佳的直接原因。對于軟件工程專業,應該從以教師為主角的“講授知識”轉變為以學生為主體的教學模式。運用CDIO教育理念,以實際軟件項目為導向,以工程能力培養為目標,精心規劃一系列適用于不同教學階段的項目。在教學活動中,將學生需要掌握的內容與項目構思、設計、實現和運作有機聯系,培養學生的工程技術創新能力和項目組織管理實施能力。(1)理論與實踐相結合的方法。先充分理解CDIO的理念,然后根據該理念制定教學內容、實驗內容、教學方法與教學手段,在實際應用過程中,根據學生的反映情況、學生的接受情況,調整相關內容、方法和手段。(2)在專業課程教學實踐中引入“做中學”的教學模式。在課程教學中反對學生對課本知識的死記硬背,應以熟練運用為目標,指導學生自覺學習并掌握軟件工程的本質和精髓,培養其參與和承擔大型軟件工程實踐的基礎能力。(3)采用分組討論、團隊實施的實驗方法。根據項目模塊將學生分成多個小組,采用項目組長負責的機制,小組內完成任務的分解、調研、設計、實現等一系列環節,教師全程監督指導,培養學生獨立完成任務的能力和團隊合作的能力。(4)以學生為中心,多種教學方式相結合的教學方法。采用課堂教學、案例教學、討論式教學、任務驅動等多種教學方法,以學生為主、教師為輔的學習方式,培養學生主動學習、協同學習和終身學習的能力。
三、結論
我國每年培養出了大量的軟件工程畢業生,但符合產業需求的高素質、工程化人才卻不足,如何培養滿足社會和產業需求的合格工程人才,是我們迫切需要考慮和解決的問題。這一問題產生的原因主要是我國高等教育重理論輕實踐以及工程教育缺乏系統、理論的規劃。隨著CDIO這一先進教育理念引入中國,CDIO工程教育模式為當前我國高等教育面臨的大學生實踐能力欠缺提供了解決思路。國外知名高校的經驗表明,CDIO工程教育模式所提倡的“做中學”的理念和方法是先進可行的,適合工科教育教學過程各個環節的改革。
本文在分析了當前軟件工程培養不足的基礎上,依據CDIO的四個層次能力要求,提出了以培養工程化能力為最終目標的四個教學模塊,該模塊符合CDIO四種能力的逐級培養。在課程模塊設置的基礎上,提出了基于CDIO的教學方案和教學改革方式,該方案緊扣“構思、設計、實現和運作”這一理念,將軟件工程整個知識體系按照這四個階段貫穿其中,同時在教學中采用多種教學方式,以學生為主體,按照“做中學”的思路,采用任務、案例和項目為驅動的啟發式教學方法,培養符合社會和產業需求的軟件工程人才。
參考文獻:
[1]Worldwide CDIO Initiative.CDIO Syllabus[EB/OL].2010-04-26.
http://www.cdio.org/framework-benefits/cdiosyllabus.
[2]康雁,李彤.基于SE-CDIO 培養學生項目管理能力的新途徑[J].計算機教育,2013,(13):65-68.
[3]陶永芳,商存慧.CDIO大綱對高等工科教育創新的啟示[J].中國高教研究,2006,(11):81-83.
[4]查建中.論“做中學”戰略下的CDIO模式[J].高等工程教育研究,2008,(3):1-6.
[5]張璇,李彤.結合CDIO教育理念與案例教學進行教學探索與實踐[J].計算機教育,2008,(24):155-157.endprint