0 引言
軟件工程專業是信息技術領域發展最快的學科之一,也是一個實踐性很強的專業.本專業培養的是卓越軟件工程人才,即能夠掌握軟件工程專業的基本理論、基本知識、基本技能,具有軟件工程開發、應用、維護和工程管理能力,具有較強的實踐能力和創新精神,能夠從事軟件工程方面的教學、科研和應用開發工作的應用型工程技術人才和工程管理人才.然而目前,企業與社會需求在不斷變化,對軟件工程專業畢業生在不斷提出新的需求以使其能盡快適應并融入行業環境,幫助企業解決實際問題.因此,以社會需求為導向,制定軟件工程專業培養目標是軟件工程專業急需解決的首要問題之一,然后根據新的人才培養目標,進行軟件工程專業課程體系與實踐體系教學改革,以增強學生的軟件綜合實踐能力、軟件系統研發能力、軟件工程管理能力及創新能力,并最終直接接軌社會與企業,是軟件工程專業教學改革工作的核心課題。
1 軟件工程專業現狀分析
1.1 專業培養目標及教學計劃與社會需求脫節
經過對國內軟件人才市場的需求調研,目前國內軟件相關行業需求的是具有基礎扎實、素質全面的熟練的程序編寫人員,需求的是具有較強工程實踐能力的能夠進行系統分析與設計的軟件工程師,需求的是懂技術、管理和業務的復合型軟件工程人才。而我校軟件工程專業還沒能及時一跟上國內社會需求的不斷變化,培養目標也不能充分反映目前軟件人才市場對軟件工程人才的需求狀況.軟件工程專業還存在著教學計劃不能快速跟進軟件行業知識的快速更新、學生技術能力急待提高、對軟件開發過程與規范理解偏弱、缺乏團隊協作意識等問題。
1.2 專業課程體系設置相對社會需求變化滯后
隨著信息技術的不斷快速發展,新概念、新技術層出不窮.軟件工程專業原有教學計劃中的專業課程及前沿技術課程己經不能適應當前的社會需求變化.因此,在新的教學周期內,急需理清課程體系與企業需求的關系、實踐體系與工程能力的關系,需要不斷跟蹤新理論、新技術,不斷優化課程體系與教學計劃,以加強學生實踐能力與創新能力的培養。
1.3 教學手段與教學方法和工程案例結合薄弱
通過對近幾年的專業教學總結發現,目前軟件工程專業教學手段與教學方法大多還沒有完全結合工程實際案例.雖然努力將案例化教學與工程實際相結合,努力增加實驗與實踐環節在整個教學環節中的比重,努力加強學生基本素質、實踐能力的培養,但力度仍然不夠,效果仍不明顯.因此如何將以虛擬軟件工程項目為主要案例轉變為以實際軟件工程項目為主要案例是案例化教學工作要完成的基本任務。
2 以社會需求為導向構建多層次課程體系
經過對軟件工程相關行業的深入調研,與合作企業聯合制定了軟件工程專業培養目標:培養卓越軟件工程師,即培養具有一定的社會溝通能力與團隊合作能力,掌握軟件工程專業的專業知識及實踐技能,具有系統分析、設計、開發和項目管理能力、技術創新能力,具有知識獲取、知識更新和持久學習能力,具有追蹤軟件行業新理論及新技術能力,能夠獨立完成一定規模軟件項目開發工作的工程技術人才和工程管理人才。
參照國內相關軟件工程課程指南及美國2004年發布的軟件工程課程指南,結合國內社會企業需求,遵照新的校企聯合軟件工程人才培養模式,按照夯實基礎、加強實訓、參與項目、接軌社會的指導方針,明確了軟件工程專業的就業方向,重構了原有軟件工程專業課程體系,優化了教學計劃.軟件工程專業的就業方向分為軟件開發方向和軟件測試方向,軟件開發方向細分為JAVA方向和.NET方向,. NET開發方向的多層次課程體系如圖1,圖1中可清看出.NET就業方向與課程體系的層次關系。
3 以工程化案例為主線重構多層次實踐體系
3.1 重構多層次實驗與課程設計環節體系
以多層次課程體系為基礎,軟件過程專業還將教學計劃中實驗、課程設計、創新教育等環節分解為三個層次即基本能力、綜合能力、創新能力。層次內對知識與能力要求明確,層次間支撐關系清晰.具體說明如下:
①基本能力階段要求學生掌握各課程單兒核心知識體系,熟練運用相關軟件開發環境,能夠完成驗證性實驗的程序編寫與調試工作,具有一定的程序設計能力。
②綜合能力階段要求學生能夠運用所學的軟件開發、軟件測試等相關知識,能夠跟蹤當前先進的軟件工程方法與技術,能夠完成綜合性實驗的軟件設計與應用工作,具有系統分析與設計能力。
③創新能力階段主要讓學生能夠運用當前軟件開發技術與開發方法,能夠配置相關軟件開發架構,能夠獨立完成或以團隊協作方式完成創新性項目,具有工程創新能力。
3.2 重構多層次實訓體系
按照培養具有較強實踐能力本科生的專業培養目標,以早了解、早參與、早精通為指導原則,軟件工程專業還對各個實訓環節進行了層次化案例化改革,將各個實訓環節分為6個階段,每個階段都包含實際工程案例,各階段間層次清晰,具體說明如下:
①基本實訓\\(第二學期\\),在網頁設計基礎上引入JAVA的入門知識,使學生盡早了解JAVA語言開發環境。
②認識實訓\\(第四學期\\),經過第三學期基礎課程數據結構\\(JAVA版\\)的學習,學生進一步了解了JA-VA語言,盡早參與了實際案例項目一電信學院《教學管理信息系統》的研發工作,感受軟件開發具體過程細節,并初步使用JAVA語言進行軟件開發。
③課程令項實訓\\(第五學期\\),本階段學生對JAVA較為熟悉,讓學生繼續參與實際案例項目《教學管理信息系統》的研發,運用JAVA語言進行相關模塊編程、調試、測試等工作。
④生產實訓\\(第六學期\\),本階段要求學生能夠按照當前軟件工程相關技術與方法,針對實際應用系統項目能夠熟練運用JAVA語言進行系統快速原型開發。
⑤案例分析\\(第七學期\\)本階段要求學生能夠獨立進行實際工程項目的需求分析與驗證、系統設計工作,能夠完成編碼與測試,能夠完成交叉測試與評價,能夠完成團隊協作。
⑥畢業實訓\\(第八學期\\),本階段學生具備了較強的系統開發能力,該階段積極引導學生深入合作企業,參與實際項目研發,加強工程實踐能力、工程設計能力、工程創新能力的培養,培養學生的職業素質與職業意識.通過畢業實訓,熟悉相關職業崗位與職業環境,盡快融入企業環境,盡快由“站崗型”變為“頂崗型”,為順利就業奠定了堅實的基礎。
4 強化工程化案例化教學
將教師實際開發項目以案例形式應用于課程講解與學習中,使學生真正切身體會、理解什么是軟件工程項目,建立工程意識和軟件質量意識.首先結合我專業教師自行研發的項目《軟件工程專業實訓平臺》,讓學生認識到軟件工程中除了代碼外文檔的重要性,并理解使用原型、基于組件等不同開發方法下《軟件工程專業教學管理信息系統》的各個開發階段文檔,讓學生真切感受軟件過程、軟件測試等基本概念;在相關專業課程方面引進不同層次的學生參與上述實際項目,使其對軟件開發技術如組件及復用技術、數據庫技術、計算機網絡技術、JSP技術等都能進行實戰鍛煉。這些都極大提高了學生工程實踐能力、工程設計能力及工程創新能力.
5 建立軟件工程專業教育平臺
除此之外,我們還加強師生之間的交流協作,充分利用校園網絡教學平臺,建立并逐步完善《軟件工程專業教育平臺》,該平臺集教學資源\\(電子教案、課件及相關視頻教程等\\)、討論答疑、遠程在線輔導、創新實踐等于一體.該平臺極大增強了學生自主學習能力、實踐能力和創新能力.平臺\\(VI.2\\)首頁如下圖。
6 結論
軟件工程專業教學改革要不斷適應社會需求變化,隨時一滿足企業動態需求.這就要求教師要不斷提高自身實踐能力,切實踐行軟件工程專業人才培養目標,這樣才能培養出適應社會發展需要的卓越軟件工程師.軟件工程專業經過2年的改革和實踐,取得了初步成果:就業率穩步上升,06級軟件工程學生與用人單位首簽就業協議率近30%。07級首簽就業協議率達40%多,08級學生首簽率率60%多,并且畢業生社會認可度不斷提高.這些成績的取得一方面得益于軟件工程專業所進行的教學改革,另一方面也得益于學校重視軟件工程專業的教學實踐,通過教師技能大賽、創新性研究性項目等各項活動鍛煉了專業教師與學生的實踐能力、工程能力和創新能力。
接下來,如何進一步動態配置與優化課程體系,如何進一步加強工程化案例化教學,如何進一步增強學生實踐能力、工程能力、創新能力,都是軟件工程專業面臨的新課題。
參考文獻:
[1]駱斌,張人良,邵棟.軟件工程專業的課程體系設計.中國人學教學,2005.\\(O1\\):32-34.
[2]李斌.中國軟件業后繼乏人[LB/OL].\\(2005\\).
[3]陳石芳,孫麗娟.軟件工程專業課程體系研究.高等工程教育研究,2009.\\(02\\):140一143.
[4]11,1,1,:Computing Curricula 0113/OL}.\\(2005\\).
[5]郭德紅.美國本科課程改革:最求完整的本科教育.現代人學教育,2008.5\\(10\\):39 -44.
[7]陳朔鷹,李志強,李仲君.軟件工程實踐類課程體系的建設和探索.北京理工人學學報:社會科學版。
[8]劉澤文.以社會需求為導向的軟件工程專業課程體系初探.電腦知識與技術,2009-09.5\\(26\\):7672。
[9]王義遒.教學方法改革:改什么,怎么改.中國高等教育,2009.\\(6\\):8一10.
[10]文志成,曹春麗.以社會需求為導向的軟件工程專業課程體系改革的研究\\(\\(J.計算機教育,2010.\\(04\\)