吳潔明,萬 勵,甘金明,陸科達
(1.2.3.4.梧州學院 計算機科學系,廣西 梧州 543002)
應用型軟件工程人才培養產學研一體化實訓體系建設探索
——以梧州學院軟件工程人才培養為例
吳潔明1,萬 勵2,甘金明3,陸科達4
(1.2.3.4.梧州學院 計算機科學系,廣西 梧州 543002)
針對軟件產業發展對軟件工程人才培養提出的新需求,對目前大多數高校培養軟件工程人才與社會需求脫節的現象和原因進行分析。論述了應用型軟件工程人才培養產學研一體化實訓體系的構建,提出軟件工程人才產學研實訓體系建設應包括課程體系改革、驗證性實驗室建設、軟件項目實訓平臺構建、科研研發平臺建設以及軟件應用企業運行體驗等全程培養模式,并對梧州學院的建設情況進行實證分析。
軟件工程;人才培養;產學研一體化;實訓體系;建設模式
隨著國家信息化發展戰略的深入和軟件產業的高速發展,結合物聯網應用技術的軟件行業人才需求將呈現爆發式的增長,對高校軟件工程人才培養提出了新的、更高的要求。為了適應國家信息化進程和市場的需求,大批高校都設置了規模較大的計算機技術、軟件工程類專業群。但是,在軟件人才市場中,仍存在著大批軟件專業類畢業生不容易找到合適工作,而軟件企業又很難找到適用人才的尷尬局面。很多研究者指出了問題形成的原因:一方面大多數普通高校還在沿用傳統的人才培養模式,所培養的學生缺少實踐經驗,工程技術能力差,企業錄用后需進行培訓才能承擔相應的技術工作;另一方面軟件企業為了降低用人成本和加快項目進度,總是希望能招收到有工程經驗、可以直接上崗的適用軟件人才。高校人才培養和企業需求嚴重脫節,已成為高校畢業生與企業崗位平滑對接的瓶頸。
為了解決這個矛盾,不少計算機教育工作者和學者做了許多有益的探索和實踐。文獻[1]介紹了高校與用人企業合作的 “3+1”人才培養模式,學生三年校內學習,一年企業實習,由學校專任老師與企業工程師共同指導完成實訓過程,學生分散在不同的企業實訓,由學校和校外實習基地雙向管理。文獻[2]提出了一種新型的校企合作培養軟件工程人才模式,高校不是直接與用人企業開展合作,而是與IT教育培訓機構合作建立就業實訓基地,通過集中實習實訓、課程嵌入、彈性學習等多種形式,訓練學生的實際動手能力,培養零適應期的軟件類本科畢業生。文獻[3]介紹了 “導師制下項目驅動教學”的軟件工程人才培養模式,開展以導師為核心、學生為主體、項目研發為主線的系統性教學活動。有些高校注重從課程教學改革入手,對軟件工程相關課程的教學過程和實踐環節進行了不同的改革實踐,如文獻[4]提出了針對 “軟件工程基礎”結合軟件生命周期理論開展實例教學和實踐教學相結合的教學模式,文獻[5]將授課環境改為機房授課,文獻[6]改革了課程的考核方式,文獻[7]構建了軟件工程綜合性課程,等等。也有研究者引入了國外CDIO(Conceiving,Designing,Implementing,Operation,簡稱CDIO)工程教育的創新模式,指導軟件工程專業教學改革,見文獻[8]和文獻[9]。
梧州學院作為一所地方性高校,信息技術專業群是學院支柱專業群,為了加快學科專業的發展,加快培養適應社會需求的信息技術人才,近年來,以計算機科學系和軟件開發中心為依托,有關課題組對如何培養適應社會需求的軟件工程人才做了大量的探索和研究,對計算機科學與技術、軟件工程專業的教學過程、教學模式進行了新的探索和實踐,形成了以產學研一體化為特色的軟件工程人才實訓體系,本文對這種體系的主要思想、根據和做法論述如下。
企業需要的是有實際經驗的、上崗就能產生效益的人才。據統計,企業最需要下面幾類人才:①有編程開發經驗的人:編程和測試人員;②有編程項目開發經驗的人:系統設計人員;③有系統整合項目開發經驗的人:網絡架構設計人員;④有銷售經驗的人:銷售前技術支持;⑤有項目管理經驗的人:項目經理;⑥有項目服務和技術支持經驗的人:技術支持人員[10]。
從企業需要的軟件人才類型和現代軟件工程的特點分析,應用型軟件工程人才必須具備以下特征:①掌握軟件工程的基本概念、基本原理和基本方法;②從系統工程的角度掌握層次化的、系統性的、規范化的、可定量的軟件工程方法學;③從軟件工程技術發展的角度掌握一些新技術和新方法,以開拓視野和培養創新意識,很好地適應現代軟件行業發展的需要[11]。
所以,目前高校培養軟件工程人才與社會需求脫節的集中表現為:學生的工程能力孱弱,缺乏項目經驗和團隊作戰能力。主要體現在:①高校受傳統人才培養模式和原有師資特點的限制,學生所學知識與企業正在使用的技術相差較大,沒有及時跟上企業實際需要的發展;②軟件企業需要的是有實際軟件項目開發經驗、熟悉軟件開發流程、不用培訓就能直接上崗的人才,而高校的學生在學習期間僅做過一些驗證性編程訓練或針對某個簡單應用的課程設計訓練,沒有接受過綜合運用知識參與軟件開發全過程的訓練;③員工素質培養方面的差距,軟件企業需要多人完成一個項目的團隊協作和聯合作戰能力以及較強的溝通能力,而高校在培養學生時更多的是強調學生的獨立思考能力,所安排的課程設計、畢業論文大都讓學生獨立完成一個小的題目,大團隊合作訓練缺位;④軟件工程教育觀念落后,培養環節與社會需求脫節,學生難以體會軟件工程在軟件開發中的折衷與權衡、軟件易用性對軟件使用效率的影響、軟件工程中關于反面經驗的總結,學生很少有機會或有意識去考察一些不好的軟件系統,難以發現軟件系統中存在的深層次的問題;⑤軟件工程教育質量評價比較片面,常以軟件理論知識的多寡及深淺作為主要的質量評價標準,與企業實際需求脫節。
目前高校培養軟件工程人才與社會需求脫節的原因,既有我國傳統高校教學體制造成的深層次原因,也有信息技術快速發展、人才需求信息反饋到高校延遲、教學模式調整慢導致教學不合適信息技術發展的原因。具體原因可歸納為以下幾個方面。
師資方面:大部分教師還是沿用計算機科學與技術專業的傳統教學方法,教師隊伍中缺少有實際軟件工程經驗的人員,特別是缺乏大型軟件項目的開發經歷,軟件工程課程教學經常是紙上談兵。
課程體系方面:設置不合理,內容落后,教材陳舊。軟件技術發展是如此快速,開發工具、平臺、理念和項目工程管理組織行為在不斷更新。而很多高校在設置軟件工程課程體系時,一是不能跟上軟件技術發展的步伐,在學校所學的一些開發技術,往往是一出校門就不適用了。二是課程體系不夠全面,比如缺少項目管理、工程管理和行業背景方面的課程。
教學層次方面:實踐實訓層次薄弱,沒有按軟件生命全周期組織教學,有的重要環節缺失。軟件工程是研究用工程化方法構建和維護有效的、實用的和高質量的軟件的學科。軟件的生存期包含制定計劃、需求分析、設計、程序編輯、測試及運行維護6個階段。大多數高校軟件工程相關專業的教學,沒有完全按一個軟件的生命周期組織全程教學,學生缺少對整個軟件系統的全程體驗,這是學生工程素質缺失的重要原因。
軟、硬件環境方面:缺少真實軟件開發的環境和平臺。大部分高校的軟件教學環境只是一般的通用軟件機房,沒有建立供大型、真實軟件開發的軟、硬件環境,例如缺少專用的開放的場地、基本網絡、服務器、大型數據庫系統以及必要的開發和測試工具以及相應的管理、指導體系。學生只能進行一些小型的甚至只是一些教科書上的小程序訓練,沒有大系統的概念。
梧州學院作為一所地方性本科院校,軟件工程、計算機科學與技術、物聯網工程等信息技術專業是學院的支柱專業群,軟件工程是重點發展的方向。如何培養貼近產業的軟件工程人才,如何提高學生對社會的適應力,一直是專業建設的重點問題。經過幾年的研究和實踐,形成了一套適合梧州學院實際情況的基于產學研平臺的軟件工程人才培養模式,這一培養模式的實現,得益于學院“為地方經濟發展服務”的辦學理念和近年來學院在產學研平臺建設上的重大進展,加大了實驗、實習實訓所需的場地、環境和設備的投入,建設了專門的軟件工程教學實驗中心(廣西高校重點教學實驗中心)、校內軟件工程實習實訓基地,專門用于學生創新創業實踐的大學生綜合發展中心,為地方信息化建設提供技術服務的學院直屬科研機構軟件開發中心,為參加項目實訓的學生提供固定的場地、配套的設備和先進的研發環境。此外,大學生綜合發展中心承接了一些微型項目,軟件開發中心承接了一批地方性的軟件開發項目,和中國電信梧州分公司、中國移動梧州分公司等一批企業建立了開發合作關系,為產學研一體化軟件工程人才培養模式提供了項目基礎。遵循高等教育人才培養的一般規律和軟件工程人才培養的特殊性,梧州學院設計了軟件工程人才培養的4個層次,充分發揮了傳統教學資源、學院的信息技術科研平臺、地方高校與企業緊密聯系的特點,體現了軟件生命周期的特征,使學生在軟件生命周期的各個主要環節中得到真實體驗,以此形成學生的工程素質,提高學生的工程實踐能力,筆者設計了軟件工程人才培養的四個層次。
(一)課程教學層次
主要根據現代軟件工程需要的相關知識結構而設計。有文獻指出:軟件工程專業所需的知識學科知識比例為:計算機科學12、計算機工程21、管理學10、數學7、項目管理9、質量管理6、軟件人類工程學11、系統工程6、其他知識18。除了作為工程專業的技術專業所必須開設的公共課程外,梧州學院以產業需求為導向進行課程體系改革,增加了主流開發技術實用課程、管理和服務產業背景知識的課程(如物流、管理等)。
基本按照上述知識與技能構成設置了專業基礎課、專業課和選修課。課程設置充分融合和優化了課程體系,體現軟件工程的新內容和方法,如面向對象建模技術、軟件測試量度方法、敏捷開發等。如應用開發語言要求學生熟悉JavaScript、XHTML語言,了解UML應用數據庫系統、嵌入式系統和物聯網基礎等。這個層次的教學主要是在課堂或軟件工程教學實驗中心課程教學實驗室里實現。
(二)項目實訓層次
以貼近真實軟件開發為背景構建實驗與實訓:驗證性教學實驗、教學項目實訓(包括項目設計、項目實訓平臺建設、項目實訓教學過程的組織、實訓效果的評價等)、選擇軟件開發中心開發過的實際項目或者正在開發的某些模塊作為實訓素材,完全按照軟件企業開發項目的標準流程對學生進行軟件項目開發實戰演練的強化訓練。
進入這個層次的學生可以是高年級學生,也可以是能力較強的低年級學生。這個層次和階段實訓的主要內容是:學生以項目小組形式,進行真實或接近真實的項目開發。實施實訓的關鍵在于組織方式,而組織方式主要因素有:一是組成學生項目小組,二是有教師導師指導,三是項目設計。而實訓依托的硬件平臺主要是學院軟件工程教學實驗中心內的軟件實訓室和專門的軟件工程實習實訓基地、大學生綜合發展中心(創新區),配備學生進行軟件設計與開發的軟、硬件環境,并完全模擬軟件公司的業務流程進行運作和管理,使學生建立了初步的軟件項目分析、開發和管理概念。
這個階段實訓的主要目的:學生通過主動學習,熟練使用文檔工具,開發和測試工具、配置管理工具、建模工具等參與實訓項目的開發過程。通過這個階段的訓練,學生開始接觸項目開發,培養起基本的項目開發經驗和自信心,培養起初步的團隊合作意識,為真正進入開發機構參與應用項目的開發打下基礎,這對于大型項目的開發是非常重要的。
(三)項目開發層次
項目開發層次的訓練是梧州學院軟件工程人才培育的最大特色。梧州學院軟件開發中心已形成一支優秀的技術開發、項目管理團隊以及有效的項目管理體系和質量管理機制,建立有獨立的大型軟件開發、測試和運行環境,軟件開發中心團隊近年為地方開發的“西江長洲船閘調試系統”、“新型農村合作醫療信息管理系統”等重要應用系統都已投入實際使用并在軟件開發中心機房中運行。軟件開發中心還成功開發了廣西財政廳“預算單位銀行賬戶管理系統”、梧州市國稅“OA系統”和“內控系統”、“廣西區港航管理局信息發布平臺”、“梧州市人工寶石電子商務平臺”等應用軟件系統11個,主持承擔了廣西千億元產業攻關項目“西江黃金水道區域性現代物流信息公共服務平臺建設及應用示范”、“基于網格的西江經濟帶旅游產業數字化服務平臺建設及應用”的研發和一批地方企業或行業委托開發的橫向項目,完成了藤縣、蒼梧縣600多萬畝林權改革數據處理及10多萬本林權證的信息輸出服務,獲得軟件著作權3項,獲梧州市科技進步一等獎1項、二等獎2項、三等獎2項。
梧州學院軟件開發中心已經成為學院重要的研發機構,近年來承接了軟件開發項目20多項,獲得開發經費300多萬元。特別是與梧州移動公司組成了研發聯合體,充分利用了移動公司豐富的網絡平臺資源和應用系統營銷能力,共同推進梧州市數字化城市建設和西江航運信息化建設,為學生參與真實項目開發提供了項目基礎。而且,學院軟件開發中心自建有大型軟件開發硬件和軟件平臺,有同時容納五十名學生參與開發的場地環境。中心采用開放式管理體系,建立了由校內師生、校外科技人員聯合組成的項目團隊。通過產、學、研相結合、在科研中培養學生、提高教師實際工程研發能力的模式,既培養了一批實踐動手能力強的學生,也為雙師型教師成長提供了平臺和環境,使專業教師得到工程能力的鍛煉和提高。
事實上,對于地方性本科高校,學生參與軟件開發項目不但必要而且可行,這是因為:一是地方院校沒有研究生,而且大型軟件系統開發必須是大團隊作戰,因此只能利用本科生參與,實際上利用本科生參與科研,是地方性高校值得探索的課題;二是從軟件工程項目開發的特點看,一般不需要高深的理論研究,現代軟件系統的開發除了頂層設計和核心算法外,一般的代碼編寫和架構搭建,大學本科層次的學生是完全可以勝任的。
軟件開發中心廣泛吸收大批高年級學生參與實際項目的管理和研發,進一步加強他們的實際工程經驗。依托軟件開發中心、軟件工程實習實訓基地和校外科研教學實習基地,梧州學院軟件工程人才培養形成了從理論課教學——課堂實驗教學——基地實習實訓——真實項目開發的培養過程,建立了課程實踐→項目實訓→真實項目開發的教學、實訓模式,為學生提供以真實職場為背景的創新開發環境,形成了集教學、產品研發和社會服務為一體的人才培養體系。
(四)運行應用層次
這個層次的設計有兩個方面,一方面是對已開發成功的應用軟件在投入實際運行過程中有學生全程參與,在幫助應用企業或行業建設軟件運行環境,進行基礎數據處理、人員培訓、再造內部管理流程的過程中使學生參與了全程的實踐。另一方面是讓學生參與應用單位的軟件維護,也可能充當客服的角色,并在一定時期內參與對軟件適應性的修改和升級。
這個過程對學生實際工程能力的養成是很重要的,學生真實參與了軟件的生產性應用,能真實了解到軟件應用的最后環節,了解行業應用背景對軟件開發的重影響,了解真實應用的軟件在實際背景下運行所要考慮的眾多因素,以及為了軟件運行所應采取的協調和權衡考慮,加深學生對軟件周期全過程中各環節所采取的策略、措施的理解,從而在軟件項目實施過程中更全面、細致、耐心地執行各種規范。
隨著梧州學院校企合作的深入,學院和企業廣泛開展產學研平臺的建設,學生參與這一過程的機會越來越多,我們正在開始積累這方面的經驗,并總結形成指導性理論思想。
地方性院校培養社會適用的軟件工程人才,必須高度重視學生工程素質的養成。在實施的教學模式中,可以運用多種已經證明有效的做法。培養貼近產業需求的軟件工程人才,最根本的路徑是構建產學研一體化教學和科研平臺,在整個軟件生命周期中,都體現學生深度參與。并通過這一平臺真實地培養學生的工程意識和職業素養,養成現代軟件工程中所需要的一些基本素質,掌握軟件工程規范和工具,能夠設計和實現應用軟件系統;重點是針對具體的解決方案,運用特定的開發平臺和技術,實現應用軟件系統;充分理解團隊合作的重要性,具備個人工作與團隊協作的能力,以便能夠開發和發布高質量的軟件產品;可以運用合適的形式進行有效溝通,清楚地表達技術問題及其解決方法,具備傾聽、說服和協商的技能。產學研平臺的構建,不但成為培養應用型軟件工程技術人材的必要平臺,同時也是地方性高校開展科研、提高服務地方經濟和社會發展能力的必要平臺。學生與平臺的成長是相輔相成的,平臺給學生提供了成長的舞臺,學生的成長又為平臺提供了生力軍,使產學研平臺更加壯大,更加具有研發和服務能力。
[1]楊紅云,等.“雙導師制”軟件工程專業實踐教學模式研究[J].計算機教育,2010,(25)14:122-124.
[2]何小東,等.高校軟件工程專業“無縫人才培養模式”的研究與實踐 [J].湖南醫科大學學報:社會科學版,2010(2):170-172.
[3]黃明和,等.“導師制下項目驅動教學模式”的研究與實踐[J].計算機教育,2007(1).29-31.
[4]王海文,等.《軟件工程基礎》課程教學中應用型人才培養初探[J].科技廣場,2007(1):216-218.
[5]謝文閣,等.計算機軟件類課程教學模式的研究與實踐[J].2012(1):121-124.
[6]張震.高校計算機教學中軟件工程課程改革[J].佳木斯教育學院學報,2011(4):100.
[7]趙林惠,等.應用型本科綜合性課程研究[J].教育與職業,2012(6):133-134.
[8]張德海,等.基于CDIO的軟件工程教學質量保障體系構建探索與實踐[J].計算機工程與科學,2011,33(A1):182-185.
[9]廖志芳.軟件工程CDIO“五位一體”實踐教學體系[J].計算機教育,2010(11):128-131.
[10]林惠強,等.“軟件工程”課程啟發式教學的研究與實踐[J].實驗室研究與探索,2008(5):112-114.
[11]劉強,等.“軟件工程”課程教學實施方案[J].中國大學教學,2011(2):41-44.
(責任編輯:高 堅)
On the Construction of Practical Training System for Training Software Engineering Talents Based on Integration of Production,Teaching and Research——Taking theTraining M odel ofWuzhou University As a Case
W u Jiem ing1,W an Li2,Gan Jinm ing3,Lu Keda4
(1.2.3.4.Department of Com puter Science,W uzhou University,W uzhou 543002,China)
In view of the new requirements for the training of software engineering talents during the course of developing software industry,this papermakes an analysis and causes of the present situation in which graduates from most colleges and universities fail tomeet the demand of society.Further,it discusses the construction of a practical training system for application-oriented software engineering talents based on the integration of production,teaching and research.It proposes that the system should be a complete training system covering the reform of the curriculum,construction of replication labs,construction of a practical training platform for software projects,construction of scientific research platform and students’participation in operating the software for application enterprises,etc.Meanwhile,this papermakes a case study of the construction of this kind inWuzhou University.
software engineering;training of talents;integration of production,teaching and research;practical training system;constructionmodel
G642.4
A
1673-8535(2012)02-0081-06
吳潔明(1959-),女,廣西梧州市人,梧州學院計算機科學系副教授,研究生,主要研究方向:計算機軟件與理論。
萬勵(1972-),女,廣西平南人,梧州學院計算機科學系副教授,工程師,碩士,研究方向:數據庫和計算機應用。
甘金明(1976-),男,廣西梧州人,梧州學院計算機科學系副教授,碩士,研究方向:計算機網絡與應用。
陸科達(1978-),男,廣西賀州人,梧州學院計算機科學系講師,系統分析師,研究生,研究方向:數據庫和計算機應用。
2012-02-28
2010年新世紀廣西高等教育教學改革工程項目(2010JGA075);梧州學院“軟件工程”精品課程立項項目(WYJPKC200901)