摘要:本文針對軟件工程專業(yè)實踐教學的問題,結合CDIO教學理念提出了軟件工程專業(yè)實踐能力訓練體系。即建立軟件實踐教學的管理平臺,設置相應的成績考核體系,建立創(chuàng)新型教學團隊,為軟件工程人才培養(yǎng)提供經驗。
關鍵詞:實踐教學;CDIO;項目管理平臺:創(chuàng)新性教學團隊
國家示范性軟件學院的培養(yǎng)目標是培養(yǎng)“多層次、實用性、復合型和國際化”的軟件工程人才。如何培養(yǎng)軟件技術人才所必需的實踐能力、工程能力和創(chuàng)新能力,一直是軟件人才培養(yǎng)所面臨的課題。目前,大多數(shù)軟件學院都設置了實踐教學課程體系,并開設了工程實踐環(huán)節(jié),但普遍缺乏對實踐教學環(huán)節(jié)的過程管理,效果并不盡如人意,具體表現(xiàn)如下:
(1)實踐教學體系設置不夠完善,缺乏對實踐教學的過程管理,沒有建立配套的成績考核體系。
(2)不重視工程化思想的培養(yǎng),沒有很好利用先進的實踐管理平臺跟蹤管理學生實踐項目。
(3)缺乏具備行業(yè)工程領域背景和國際化背景的高水平創(chuàng)新實踐教學團隊。
因此,如何完善實踐教學體系。建設實踐管理平臺,培養(yǎng)創(chuàng)新性的教學團隊,把突出理論教學向“實踐引領理論”教學過渡,是我們亟需解決的問題。
1 實踐能力訓練體系的構建
在設計軟件工程專業(yè)實踐課程體系過程中,我們依據(jù)國際先進的CDIO工程教育模式,把實踐教學按照課程實驗、項目實踐、工程實訓幾個階段設計,進行了全面改革。
CDIO工程教育理念是融構思(conceive)、設計(Design)、實施(Implement)和運行(Operate)能力于一體培養(yǎng)人才的模式。構思、設計、實施和運行涵蓋了現(xiàn)代工業(yè)產品從構思研發(fā)到運行改良乃至終結廢棄的生命全過程,以此全過程為載體,培養(yǎng)的不僅是學生的理論知識和專業(yè)技能,而且包括終身學習能力、團隊交流能力和大系統(tǒng)掌控能力[3-4]。
我們把CDIO工程教育理念引入到軟件工程專業(yè)時,通過實驗、實踐、實訓一體化的工程能力訓練體系,完成CDIO能力的培養(yǎng)。如圖1所示,我們設定了明確的階段培養(yǎng)目標:即熟練的程序員(程序上熟悉軟件工程原理和方法的軟件設計者(軟件)——應用解決方案的優(yōu)秀團隊成員(系統(tǒng)),并將這一思想貫穿到人才培養(yǎng)計劃的各個環(huán)節(jié)。
根據(jù)這一思想,我們設置了相應的實踐課程體系。如圖2所示,把實踐性教學分為課程實驗、項目實踐和工程實訓。其中課程實驗包括設計性實驗和驗證性實驗;項目實踐一為了提高學生的軟件開發(fā)能力,讓學生能夠熟練掌握至少一種編程語言,增強信心,因而項目不大,適合學生個體獨立完成,時間安排在大學二年級。通過項目實踐一的培養(yǎng),學生的學習熱情大大提高,學習目標更明確。
工程實訓一為了讓學生熟悉軟件工程研發(fā)的全過程,周期為3周左右。學院可以聘請軟件開發(fā)公司的項目經理指導實訓,用軟件工程的理論指導軟件開發(fā),最終使學生完成需求分析、建模、設計、代碼編寫、測試、部署全過程。
在工程實訓一的基礎上,需要進一步提升自我管理、協(xié)調及團隊合作精神,因此項目實踐二以小組成員分工協(xié)作方式共同開發(fā)一個完整的項目,進行分析、設計和編碼文檔,學生的學習活動在項目開發(fā)的過程及軟件工程方法的驅動下完成。
最后,學生通過工程實訓二,即企業(yè)實踐參與實際的軟件開發(fā)工作,全面提升軟件開發(fā)素質,完成由學生到軟件開發(fā)工程師的角色轉換。在工程實訓二中,可以安排學生進入企業(yè)實習基地實習,模擬企業(yè)真實開發(fā)環(huán)境,嚴格按照企業(yè)管理模式管理、考核,讓學生體會實際項目開發(fā)的工作氛圍和職業(yè)要求,提高團隊協(xié)作意識和溝通技能,養(yǎng)成良好的工程習慣,全面提升就業(yè)競爭力。
2 項目實踐管理平臺的搭建
沒有高質量的開發(fā)過程,就沒有高質量的軟件。軟件工程過程化的管理是保證實踐教學的重要環(huán)節(jié)。我們建設了完善的項目實踐管理平臺,對學生實踐過程開展科學、規(guī)范化的過程管理,組成如圖3所示。包括知識管理(wiki)、源代碼管理、錯誤跟蹤管理、源代碼統(tǒng)計、軟件測試管理、項目進度管理。這幾個管理平臺并非獨立管理軟件,而是通過統(tǒng)一認證平臺集成各管理子系統(tǒng),實現(xiàn)單點登錄及統(tǒng)一用戶權限管理。
(1)知識管理。主要為學生提供學習交流的平臺,學生可以在該平臺上設計項目計劃、工作方案,撰寫工作日志,提高團隊合作交流能力及獨立解決問題的能力。
(2)源代碼管理。用來管理程序源代碼和文檔,為項目開發(fā)團隊提供一個管理軟件整個生命周期的平臺,有效實現(xiàn)了團隊的協(xié)作和服務。
(3)源代碼統(tǒng)計。為教師提供監(jiān)管學生提交的程序代碼的平臺,教師可以隨時檢查學生提交的代碼,統(tǒng)計完成代碼量情況等,實施過程控制。
(4)錯誤跟蹤管理及軟件測試管理。幫助學生管理軟件測試過程中發(fā)現(xiàn)的錯誤,可以與源代碼管理平臺間進行有效的整合。測試人員可以將測試過程中發(fā)現(xiàn)的錯誤及時反饋給開發(fā)人員,隨時監(jiān)督程序的修改狀況,提高管理效率,保證項目的順利實施。
(5)項目進度管理。幫助學生有效管控項目進度,減少項目溝通、協(xié)調、進度反饋會議,及時發(fā)現(xiàn)和管理項目問題。
實踐教學管理平臺支持環(huán)境覆蓋了企業(yè)中軟件開發(fā)平臺的主要功能,有效實施了實踐教學過程和質量保障過程的統(tǒng)一管理,也為學生實踐軟件工程理論和方法提供了有力的底層支撐。在項目實踐教學中,我們采用符合軟件產業(yè)界標準的軟件過程規(guī)范,制定了開發(fā)流程、文檔模板和評審標準,讓學生能夠切身經歷項目開發(fā)的完整過程,深刻理解軟件工程系列課程的理論和方法,提高實戰(zhàn)技能和團隊協(xié)作能力。
3 考核體系的建立
成績考核是實踐教學的重要環(huán)節(jié),抓好這一環(huán)節(jié),能對學生掌握的知識進行正確合理的評估,提高教學質量。實踐教學的考核方式不同于傳統(tǒng)的考核方法,它更側重于對學生的實踐動手能力、綜合運用能力、文檔寫作能力、團隊協(xié)作及創(chuàng)新能力的考核L7 J。
項目實踐、工程實訓l成績可以從下面幾個方面進行重點考核:
(1)業(yè)務能力(滿分60分)。
·完成項目進度能力。
·項目完成質量。
·文檔的規(guī)范性。
·英文閱讀能力。
(2)綜合素質(滿分40分)。
·工作積極主動性。
·學生的自我成長能力。
·制度、紀律的遵守。
·團隊協(xié)作能力。
上面的每一項考核均可以劃分為優(yōu)、良、中、差四個等級,并采用不同的分數(shù)權重,最終得到一個總的實踐分數(shù)。這種考核結果能夠比較全面地反映學生的實踐學習情況,促進學生的全面發(fā)展。
4 創(chuàng)新實踐教學團隊的建立
提高實踐教學質量,需要建立一支具有行業(yè)背景、國際化的創(chuàng)新實踐教學團隊。防止實踐類課程蛻變?yōu)槔碚摻虒W,教師必須有新的教學理念、講授模式和課程管理機制。同時,軟件工程系列課程的特點要求教師要成為一名具有豐富開發(fā)經驗的項目管理人員。在實踐教學中,教師不再是課堂講授者,而更像一位工程項目經理,負責提出項目的要求、檢查項目(學生)的開發(fā)進度、監(jiān)督開發(fā)過程、評定軟件質量。在課堂集中教學中,教師又像一位主持人,召開的是項目進度匯報會、技術交流會、軟件演示會等。
創(chuàng)新型實踐教學團隊的建立需要一批高素質的教師,教師要掌握最新的軟件技術,使用主流的軟件開發(fā)平臺,對教師能力有較高要求。所以,要重視對教師的培養(yǎng)工作,鼓勵和資助年輕教師攻讀學位和進修,通過團隊合作、以老帶青的形式,提升青年教師的研究能力和教學水平。為保證教師團隊的整體質量,我們通過各種方式提高教師團隊的工程領域背景和國際化背景,主要包括:
(1)研究中心負責前沿技術研究并開發(fā)原型系統(tǒng),企業(yè)負責將其產品化并進行市場推廣。
(2)派研究生和高年級本科生到軟件企業(yè)從事研究和軟件項目開發(fā)。
(3)組織教師參加企業(yè)新技術培訓。
(4)定期組織教師與企業(yè)研發(fā)人員開展軟件新技術和項目管理經驗交流。
(5)定期派教師到國外進修或參加國際交流會議。
通過以上機制,參與項目開發(fā)的教師不斷總結項目開發(fā)中的各種問題,撰寫總結報告,積累項目開發(fā)經驗,并將其運用于課堂教學之中,豐富教學內容。同時,結合行業(yè)工程背景和國際化背景,凝練軟件工程開發(fā)項目,提取軟件開發(fā)案例,建立軟件工程項目案例教學資源,實現(xiàn)案例教學,最終實現(xiàn)教師與開發(fā)人員之間的“零距離”。同時,在軟件工程系列課程中,教師采用項目開發(fā)中積累的案例傳授開發(fā)經驗,讓學生真正理解軟件工程系列課程的理論知識和方法,掌握軟件工程的最新技術,建立軟件開發(fā)的系統(tǒng)化與工程化觀念和質量意識,實現(xiàn)“科研帶動教學,教學促進科研”,二者相得益彰。
5 結論
實踐教學是培養(yǎng)復合型軟件工程人才的重要環(huán)節(jié)。我們依據(jù)國際先進的CDIO工程教育理念,注重培養(yǎng)學生的工程創(chuàng)新思維和創(chuàng)新能力,針對實踐教學設計并逐步建立了具有可操作性、行之有效的實踐課程體系,收到了良好的教學效果。同時,我們還建立了對學生實踐教學進行有效監(jiān)督的項目實踐管理平臺,實現(xiàn)了對實踐教學環(huán)節(jié)的過程控制:新的成績考核體系能全面反映學生的綜合素質,促進學生的發(fā)展;具有行業(yè)背景、國際化的創(chuàng)新實踐教學團隊的建立機制也保障了實踐教學的有效實