李唐輝
(阿壩師范學院 數學與計算機科學學院,四川 汶川 623002)
隨著計算機技術和信息技術的高速發展,軟件產業迎來了新的發展機遇和挑戰,人才的需求量大增。為應對這樣的需求,我國絕大部分高校加入到軟件技術人才培養的行列中,根據2016年“高三網”報道的信息,僅就軟件技術專業而言,全國就有672所高校開設了此專業。軟件技術專業開設的院校多,但高校的多樣性并未隨之上升,反而出現了地方院校同研究型高校辦學定位趨同、專業設置雷同、人才培養方式相近,“重理論、輕實踐”,科研活動“重科學、輕技術”等現象,難以培養地方經濟社會發展所需要的人才[1]。各個高校在培養目標定位、教學模式,特別是實踐教學環節方面還存在很多問題,軟件技術人才培養質量滿足不了當今軟件產業對人才的需求。
當前,全球軟件行業正處于成長期向成熟期轉變的階段,而中國的軟件行業正處于高速發展的成長期。隨著中國軟件行業的逐漸成熟,軟件及IT服務收入將持續提高,發展空間廣闊。根據智聯招聘網的統計數據,國內市場每年對人才的需求高達80萬,而且這個數值隨著中國軟件的普及而快速遞增,從2009年到2016年,整個軟件行業呈快速增長的態勢,2016年,在整體經濟增長放緩的條件下,軟件行業依然保持14.9%的快速增長態勢。《2016中國軟件專業人才發展報告》中提出我們當前正處在“軟件無處不在,軟件定義世界,軟件定義未來”的時代;從行業分布來看,我國軟件從業人員中從事IT服務的最多,占比為35.5%;制造、交通、教育、電信、金融等領域的軟件人才所占份額超過60%,說明軟件和信息技術服務業對國民經濟和社會發展的支撐帶動作用非常大。
自從《國家中長期教育改革和發展規劃綱要(2010—2020年)》出臺以來,我國高等院校特別是地方院校的計算機教育開始從精英化向大眾化、職業化轉變。但目前來看,我國軟件技術專業畢業生在工程項目實踐能力、創新能力方面與社會的需求還有不少的差距[2]。造成差距的原因主要包括:①傳統高校教育在課程教學中,注意課程本身的教學目標是否完成,相應的課程建設都在內部進行,缺少課程間的相互聯系,而軟件技術的相關課程的聯系性又十分緊密,使得學生的知識缺乏系統化;②教師在課堂上傾向于理論知識的傳授,對于理論知識點與工程實踐的聯系不夠重視[3];③多數計算機專業教師在大學或研究生畢業后就直接到高校擔任教學工作,即使在學習期間有一些軟件項目的開發經驗,但解決實際問題的經驗比較欠缺,對指導學生綜合實踐能力的培養是不利的;④校企合作模式深度不夠、合作內容吻合度不強、企業支持力度不足,缺乏院校與企業、行業一體化的機制[4]。如何對現在的實踐教學體系進行改革,使學生積極參與到實踐學習中,提高自己的動手實踐能力,在軟件行業飛速發展的今天,做一個合格的軟件技術人才具有重要的意義。
傳統的計算機類和軟件工程類的主要課程中均有相應的課程實驗,這些實踐可以訓練學生掌握基本實驗技能、使用開發工具、驗證基本理論或成熟算法,培養學生的實驗能力、獨立工作能力和協作能力,但距離培養高水平、高素質的工程型人才的要求還有相當的距離[5]。根據生源的情況以及當前軟件技術的發展,學校可以結合自身條件和特點,建立一套以學生就業為導向,以專業能力為主線、以崗位要求為依據、以提高學生的就業質量為目的,從“點、線、面、體”4個維度全面貫穿的實踐教學體系,如圖1所示。

圖1 軟件技術專業點線面體實踐教學體系圖
專業基礎技能實踐是在專業基礎課程為背景的基礎上進行的實踐教學活動,與傳統的課程實驗類似,通過這類實踐,學生可掌握基本實驗技能、使用開發工具、驗證基本理論或成熟算法[5]。這類實踐主要集中在第一學年,包括計算機應用基礎、程序設計基礎、面向對象程序設計、Web前端編程等專業基礎課程的實踐教學環節。此類實踐教學環節的設計主要從學生應具備的知識點出發,根據相應的教學知識點設計實驗,通過理論教學和實踐教學相結合,把知識點融入實驗內容中,學生通過實踐即能提高動手能力,又能鞏固相應的知識。以程序設計基礎的實踐教學為例,以每章每節的知識點為單位設計一個實踐項目,把對基本知識的鞏固、程序分析能力、編程能力、程序調試能力和基本的算法分析能力融入實踐教學中,讓學生體會到學習的樂趣,提高學習興趣;把平時的實踐納入到評價體系中,并提高平時實踐在總成績中的比重,以督促學生認真完成實踐教學內容,保證教學的質量。
專業基礎技能實踐是針對某一門課程來設計的,學生所學知識是零散的,專業能力實踐以課程群為依托,專業核心課程為媒介,把所學的知識貫通起來,以軟件項目的設計研發為載體,采用開放式實驗教學模式,通過教師指導,學生以3~5人為1個小組,以軟件工程的基本要求對軟件項目進行定義、分析、設計、編碼、部署以及文檔的編寫,通過軟件項目的開發把多門課程有機聯系起來。專業能力實踐主要放在第二學年,以數據庫技術、移動開發、PHP編程、軟件工程等課程為媒體,要求學生通過項目設計把所學的知識和技能貫穿起來,形成一個整體,學生通過完成項目鞏固知識,了解軟件開發的流程,提高團隊合作的意識和能力,提高程序設計能力和項目文檔的閱讀和編寫能力、自學能力等。專業能力實踐以小組為單位進行,實施過程明確責任與分工,教師應加強中間環節的指導和過程監督,評價可以從實施過程、團隊合作、項目效果等多方面進行綜合評價。
專業基礎技能實踐多通過虛擬項目來實現,可以將知識貫通起來使學生具備一定的軟件項目實現與文檔編寫的能力,但是離軟件人才的養成還有很大的距離。綜合能力與研究創新實踐要以項目為背景,全面培養學生的工程項目能力和研究創新能力。綜合能力實踐以實訓項目為背景,以校企合作為平臺,邀請企業實戰經驗豐富的講師為學生指導、創建情景教學環境,建立項目的開發團隊以及銷售團隊,根據在團隊的分工責任,在已有知識和能力的基礎上,通過企業講師指導、同學間相互學習、借助互聯網平臺等多種方式學習實訓項目開發中需要用到的工具、技術、技能等并完成實訓項目,提高學生的軟件開發與設計能力,全面培養學生的工程意識。這類實踐主要在大二假期和大三上半學期進行。研究創新實踐主要通過組織學生參加各類科技競賽或參與教師科研課題進行,通過指導學生參加各級軟件方向的科技競賽以及競賽的準備,補充平時學習的不足,并學習行業內的新知識、新技術,提高個人的綜合能力,在競賽的過程中學習別人長處、發現自己的不足,進而不斷提高自己,并帶動部分同學一起學習,形成一個良性學習氛圍。教師可帶領部分優秀的學生參與自己的科研課題,通過完成科研課題,一方面可以讓學生更多地進入到專業領域,更廣泛地接觸到專業領域前沿的知識;另一方面學生通過參與教師的科研,可以了解到相關專業領域前沿的知識,加強學生進行科研創新的意識和能力,從而全面提升學生的專業綜合能力。
在全面培養學生的工程能力和創新能力的基礎上,通過崗位能力實踐全方位強化學生職業能力和職業素養,把學生培養成一個合格的工程型人才。軟件技術專業的崗位能力實踐主要由認知見習、社會實踐、畢業實習等環節構成。認知見習一般在大一結束后,安排學生到合作企業進行為期一周的崗位認知學習,了解軟件技術專業學生畢業后可以從事的職業崗位有哪些,需要具備哪些職業能力和職業素養,以促進學生在后續學習中的目的性和積極性;社會實踐要求學生利用假期的時間參加與專業相關的社會實踐活動,讓學生走出校門、家門,投入到社會中,了解當前行業的發展以及對人才的需求,提高學生的社會生存能力;畢業實習是崗位能力實踐的重要組成部分,在大三下學期通過集中實習和分散實習兩種方式完成,要求學生每天填寫實習日志并完成實習鑒定表,學院組織老師對實習生進行定期和不定期的檢查,保障畢業實習的質量。
阿壩師范學院數學與計算機科學學院針對軟件技術專業的學生推行“點、線、面、體”四維一體的實踐教學體系以來,學生的實踐動手能力和項目研發水平有了較大的提高,就業率和就業質量顯著提高。從2015年以來,軟件技術專業大部分同學在成都等大中城市就業,就業率保持在95%以上,對口就業率保持在80%左右。軟件行業是一個不斷發展變化的行業,隨著行業的發展變化,實踐教學體系的內容也需要不斷更新,以培養適應社會需求的軟件技術人才,增強學生的擇業競爭力。