楊占江
摘要本文分析了我國軟件業現狀、產生原因、發展趨勢、人才的供需情況以及我國高校軟件教育的現狀,提出了從“以跟老師學為主”改變為“跟教材學為主”的自學討論教學模式,并討論了如何編寫課程教材問題。
關鍵詞軟件業軟件開發邏輯產品自學討論
1我國軟件業現狀和人才供需分析
1.1我國軟件業的現狀
目前,從我國軟件業在全球軟件市場所處的位置來看,其整體規模還很小。2002年在全球軟件業總額中,美國和西歐分別占據40%和31%的份額,而中國軟件業只占其中2%的份額。眼下我國稍有規模的軟件公司對新招聘的程序員都要進行編程規范、思想培訓,各公司有各自的培訓資料,其中滲透著公司自己的特色,這也是形成“作坊式”經營模式的主要原因。如果能夠從我國高校教育開始統一編程規范,那么不僅會解決我國軟件業人才短缺的問題,還會在很大程度上促進中國軟件業的整合,提高國際競爭力。
1.2我國軟件人才的供需情況
目前,我國軟件人才的需求增長很快,缺口依然很大,結構不盡合理,呈現“橄欖型”結構,即軟件人才缺口仍達到40萬,軟件高端人才和低端人才都嚴重短缺,中級人才過剩;未來的目標是培養“金字塔”型人才隊伍。
軟件人才供應方面,由于傳統的高等教育過度注重基礎知識和理論培養,忽視了職業培訓,很多學生都難以達到企業的用人要求。與此同時,很多軟件大國,如印度、美國的一些研究院、大學紛紛以獨立或與國內大學聯合的方式,在我國開設軟件培訓基地。但由于很多IT職業培訓機構還不夠完善,對于學員的培訓時間短,致使有些學員進入企業后表現不是很優秀。
我國軟件人才需求是巨大的,軟件培訓市場競爭激烈。高等教育過程中如果增加職業培訓方面的內容,那么本科畢業生的就業競爭力和發展潛力都會明顯高于培訓機構的學員,他們將會成為中國軟件業的生力軍。
2我國高校軟件教育現狀及原因分析
2.1我國高校軟件教育現狀
目前我國高校計算機軟件相關專業有信息與計算科學、地理信息系統、電子信息科學與技術、電子信息科學與技術類新專業、自動化、電子信息工程、網絡工程、信息對抗技術、信息安全等九個專業。
高校軟件教育存在的問題是:培養的學生與社會需求脫節,學生在校時學習的軟件理論很系統,但學完課程后,大部分同學不知道這些理論有什么用途或如何應用理論來解決實際問題。
一般來說,學生在校期間都學過三門以上的計算機編程語言,但是很少有學生真正能編寫出可以使用的、稍有規模的程序。往往,學生中少數公認的編程高手編寫出的代碼結構不完善,出錯率也很高。畢業生剛開始到軟件公司工作時,一般都要把程序改十幾次到幾十次,才能讓用戶覺得可以使用了。這個過程對于學生、公司和用戶來說,都是痛苦的。
2.2原因分析
軟件人員素質和技術的培養要靠實踐,即確實獨立做過可實用的項目。一個項目的細節問題有很多,通過項目,能夠很明顯地反映編程人員的思維邏輯。軟件人員初次做項目時,需要有人跟隨指導,最好是一個老師帶領三到五個學生進行專門的訓練。而目前本科教學無法滿足這個需求,主要有以下兩個方面的原因。
一方面,現有高校計算機本科教學計劃中的主要課程設置是以理論技術為主線的,開設少數實踐性課程,使得培養出的學生具有“厚基礎”,這個主題是正確的。但是其中存在的主要問題是教師的指導不到位,“少數實踐性課程”又變成了講技術的課程,所以學生總是感到所學的知識沒有用,或者不知道如何運用。
另一方面,按照教育部的要求,本科教學中,專業教師與本專業學生的比例要達到1∶18。現階段,大部分本科院校達不到這個比例。而且,1∶18這個數字是不分專業的,對于計算機軟件專業來說,這個比例并不適合;再加上教師科研工作壓力很大,不能把所有精力都投入到教學,使得軟件教育問題日益突出。
3探索解決問題的途徑
從我國高等教育現狀看,本科教育不同于研究生教育,師生比不可能大幅度上升。計算機軟件開發對實施環境要求低,對人員素質要求高。我們認為適當改革高校現有教學計劃和教學模式,可以在很大程度上緩解這個矛盾。
本科教學計劃不能離開“厚基礎”軌道。否則,本科辦成了職業培訓學校,盡管在一定程度上緩解了畢業生的就業壓力,但學生再發展的潛力沒了,本科教學的宗旨沒了。因此,教學改革的總思想應該是:在現有教學計劃中適當增加兩三門技術應用課程,或改革一些現有的技術應用課程,將這些課程設計成“自學討論”形式,即從“以跟老師學為主”改變為“跟教材學為主”。同時,可以為這些課程編寫相應的教材,讓學生跟隨教材完成一項項的任務。這時,教師所起的作用是督促、答疑,幫助學生深入理解理論。
例如在現有的計算機語言、軟件工程、管理信息系統課程后增加一門課程,名稱暫定為“實戰軟件系統開發”。首先,要把一個具有一定規模的軟件系統開發的全過程編寫為一本教材。所開設課程的模式主要是讓學生跟隨教材完成一個系統的開發,并能通過這個過程理解軟件開發的過程、軟件設計的思想、注意的問題、編碼的規范、軟件開發及維護的作用、完備測試的重要性、測試用例的設計方法,等等。其次,課程教學模式改為“自學討論式”的,學生跟隨教材制作軟件,教師只是督促、答疑,幫助學生深入理解理論。通過這個過程,教師把軟件程序員應具備的知識和素質滲透給學生,讓學生對相關理論課程有更好的理解,同時切實提高學生理解用戶問題、系統設計和編程測試的動手能力。
課程的關鍵在于教材。要達到如上的目標,在撰寫教材時必須做好如下工作。
(1)瞄準國內、國際最新軟件行業標準和動態,避免把作者的個人開發經驗當作軟件理論滲透給學生。
(2) 貫穿全書的實例規模適中,背景適合高校學生把握。
(3) 內容詳細、可完全跟隨操作。
(4) 每一部分都有引導、有對比、有相關理論總結。
4總結
在充分考慮軟件業現狀、人才供需情況以及我國高校軟件教育現狀的基礎上,我們把教學改革的目標定在教學計劃、課程教學模式和教材的改革上,以教材的可操作性、實踐與理論相結合等特性來讓學生得到手把手地指導,而不以增加教師的工作量為代價。我們相信,以切實有效的教育為基礎,通過努力探索適合我國軟件產業發展的模式,中國軟件業會在未來的幾十年中再創輝煌!
參考文獻
1 林東.印度——新興的軟件超級大國,http://www.vcmc.net/shequn/LinDong/010.php/
2 侯繼勇,李曉燕.塔塔在中國嘗到好處 印度軟件巨頭集體北上, 21世紀經濟報道
3 軟件人才需求將增大,http://www.xicn.net/life/job/
4 廖厚才.軟件人才需求20萬中外高校鏖戰培訓市場,http://www.enet.com.cn/elab/
5 中國軟件產業發展現狀與人才需求,http://www.qdstc.org.cn/dt26.htm/
6 軟件研發 資深人才需求旺,http://61.139.8.44:8080/newsinfo/
7 我國軟件業人才缺口40萬,http://news.dayoo.com/