時間:2022-07-19 12:55:39
開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇軟件測試實訓總結,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。
關鍵詞 軟件測試 服務外包 人才培養模式
中圖分類號:G710 文獻標識碼:A
1 軟件測試外包人才需求狀況
當前,軟件產業已經成為國際競爭的焦點和各國競相發展的戰略性先導產業。早在2007年,教育部等部門出臺的《關于進一步加強國家重點領域緊缺人才培養工作的意見》,將軟件等確定為12個國家重點領域緊缺人才培養。而在軟件行業中,為了提高軟件質量,降低軟件開發成本,分散軟件外包風險,軟件測試就成為重要推動力。但軟件測試業卻面臨著自身的嚴峻考驗——人才緊缺。據前程無憂招聘網統計,國內120多萬軟件從業者中,真正能擔當測試職位的不足5萬,人才缺口已超20萬并向30萬大軍挺進,并隨需求逐年增長。在國外,一般軟件測試人員與軟件開發人員的崗位設置比例是1:1。軟件測試人才需求量的加大,除了受產業先行的波及外,長期以來業界對軟件測試的不重視,導致高校未有效開展軟件測試人才的培養,出現教育滯后。教育滯后體現在多方面,包括專業設置、人才培養模式、人才培養方案的滯后與不協調等。
2 軟件測試職業發展及能力需求分析
2.1 軟件測試外包的特點
隨著軟件產業的發展,軟件產品的質量控制與質量管理正逐漸成為軟件企業生存與發展的核心。幾乎每個大中型IT企業的軟件產品在前都需要大量的質量控制、測試和文檔工作,而這些工作必須依靠擁有嫻熟技術的軟件測試工程師這樣專業的人士來完成。單獨設立測試部門,對測試人才有強烈需求的企業大多是規模較大的一些IT企業,外資企業居多。而一些企業為了降低軟件開發成本,專注于核心業務的發展,或因測試力量匱乏,往往會把軟件測試工作外包給專業的測試機構來完成。軟件測試外包的特點,一是涉及行業多,知識面廣。二是測試團隊比較大。三是接觸到大項目的機會比較多,軟件測試的類型包括行業應用軟件的測試、本地化和國際化測試、嵌入式軟件測試等。在行業軟件中,以手機、家電嵌入式軟件為代表的通信行業軟件和汽車、電子行業的中間件成為具有潛力的軟件外包領域。所以軟件測試外包對測試人員的素質提出了更高的要求。
2.2 軟件測試職業發展及能力需求分析
根據軟件測試職業崗位與工作內容的分析,綜合學院、企業、培訓機構專家訪談結果,網絡資料查詢調研結果,不同行業、不同企業同一崗位,其崗位工作任務不同,職業能力需求的側重點也不同。同一職業崗位在不同的行業領域對知識的要求也不同。按照軟件測試為崗位主線,通過對不同行業企業所需人才崗位工作職責、能力知識需求進行系統的分析與研究,總結提煉出軟件測試外包專業畢業生踏入工作崗位從初級測試工程師到成長為有豐富工作經驗的測試項目經理所具有的能力與素質要求。
初級測試工程師的工作職責是按照軟件測試方案和流程對產品進行功能測驗;檢查產品是否有缺陷;報告和跟蹤缺陷及進行驗證。其能力素質要求是熟悉常用的軟件測試方法、軟件工程知識;熟悉常用的軟件開發環境,編程工具;有良好的英語閱讀能力,具有良好的溝通能力。
中/高級測試工程師的工作職責是設計測試用例;搭建測試環境;根據測試設計對產品進行性能、功能等全面測試;測試工具等的開發、撰寫測試報告。其能力素質要求是掌握軟件測試原理流程、方法與規范;熟悉測試工具;熟練地編寫測試腳本,能夠進行缺陷分析及預防。具有較強的文檔編寫能力;較強的學習能力;高度的責任心,較強的溝通能力。
測試組長及測試主管:設計測試計劃及進行測試項目的管理;項目及測試流程和工具的選擇及優化;測試項目質量和進度控制。其能力素質要求是有一定的軟件測試經驗;能夠獨立完成各類測試任務;具有較好的解決問題的能力;有一定的分工協作能力。
軟件測試項目經理:構建測試團隊及進行測試團隊的管理;制定項目測試方案和測試計劃;協調測試資源,并對各種資源進行計劃、分工和管理;測試項目的質量及控制。其能力素質要求精通軟件測試理論、軟件測試管理和自動化測試技術;熟悉軟件測試開發和測試平臺、自動化測試與性能測試工具;較強的測試組織管理能力、溝通協調能力;有流利的英語讀寫表達能力;善于團隊合作,執行能力強。
3 構建并實施一站式人才培養模式
改革現有的軟件外包測試人才培養落后狀況,探索并實踐新型人才培養模式成為軟件測試外包人才培養的重中之重。煙臺職業學院對此作了多方面的探索與實踐,構建并實施一站式人才培養模式,為軟件測試外包人才規模化培養積累經驗。
3.1 軟件測試外包專業人才培養目標
根據企業的人才需求特點,學院、培訓機構、企業三方共同確定的高職軟件測試外包專業的培養目標為:培養掌握計算機基礎、軟件測試專業知識、熟悉軟件測試的基本方法、流程和規范,了解服務外包行業知識、發包方文化、商務禮儀,能利用測試工具對軟件產品進行功能和性能測試,設計和維護測試系統,對測試方案可能出現的問題進行分析與評估,具有軟件編程能力及軟件工程應用能力,可從事軟件外包及服務外包企業軟件測試、運行、維護及質量管理等崗位工作,具有較強的外語應用能力,良好的溝通能力、協調能力和語言表達能力的技能型人才。
其崗位的主要業務范圍是: 依據需求文檔及設計文檔,編寫測試用例;依據測試用例執行測試,完成產品的手工測試、集成測試與系統測試,反饋跟蹤產品BUG及用例缺陷;根據測試計劃,搭建測試環境; 測試工具/系統的研究和應用。軟件測試專業可考取的證書:計算機等級考試四級軟件測試工程師、ISTQB國際軟件測試工程師(初級)。
3.2 一站式人才培養模式內容
經過多年的實踐與總結,構建了以政府為引導,實行與培訓機構聯姻、與企業合作的一站式人才培養模式,完成畢業即就業的角色轉換。
政府引導:以我院牽頭成立的煙臺市服務外包職教集團為平臺,與當地政府、服務外包園區建立框架性戰略合作關系,根據政府出臺的優惠政策,提供的各種信息資源,通過學院與企業及產業園區的互動,形成校企雙方人力資源的可持續性需求供給與輸出。由政府協調當地服務外包企業,與學院建立緊密型的人才培養合作聯盟,聯盟單位派員參與專業建設指導、人才培養,并作為學院學生的實習實訓基地。
一站式培養的關鍵是學院通過與知名培訓機構、與企業實行三方合作,通過協議等約定方式,按企業所需的人才數量與規格,采用“聯合招生、委托培養、定向就業”的形式,實現人才培養的直接輸入與對口輸出。“聯合招生”指三方共同協商確定學生來源、招生數量、招生方案;“委托培養”指招收的學員全部在學校學習、在培訓機構實訓,培養目標受企業委托進行;“定向就業”指學生培養結束經過綜合考核評定,并參加由工信部全國注冊服務外包專業認證中心設置的面向服務外包產業的專業認證項目,獲得工信部相關技術等級認證,根據認證等級,由合作企業正式錄用為公司員工,安排到合適的崗位就業,不能直接就業的可推薦安置到合作聯盟單位或由合作企業、培訓機構推薦到其他單位就業。
3.3 課程建設及實施路徑
課程體系的構建和課程建設是人才培養中的關鍵因素。服務外包軟件測試專業課程集服務外包知識課程群、信息技術專業課程群、軟件測試專業課程群、管理課程、專業外語課程于一體,著力培養復合型軟件測試外包人才。按照課程之間的邏輯順序和人才職業成長規律安排課程。實施中采用分段式安排,教學團隊專兼教師合作授課。部分課程安排成為選修課,學生可以根據自己的就業意向和興趣選擇學習。圖1為主要課程框架體系圖及實施路徑。
技能儲備階段構建完整的工程知識體系。利用案例和項目強化學生對于各種知識點的理解,并通過實踐訓練達到一定熟練程度與規范性,完成基本知識的積累及基本技能的訓練。校企各有側重地承擔教學任務,通用專業基礎課程及其相關實踐課程由校內專任教師承擔。專業核心課程及相關實訓由企業人員承擔。時間安排為第一到第四個學期。
技能提升階段主要是針對外包項目的仿真實訓,建立學生的項目工程思想,根據項目分工完成工作任務,使學生充分演練項目中的多種職業角色,具備企業要求的基本職業素質。該階段的教學任務主要由企業人員在校內實訓基地完成,專任教師輔助教學。時間安排為第五學期的前半學期,同時開展軟件測試等級認證培訓。
崗位實訓階段,由仿真項目實訓逐步向真實產業外包項目實訓轉變。此階段根據學生的水平,將學生編入各項目組,參與到真實項目。通過完成外包項目,感知企業文化,熟悉工作環境,接受企業的管理,達到實戰訓練的崗位能力要求。這一階段的培養任務主要由企業人員承擔,專任教師協助輔導,企業工程師擔任項目經理。該階段的實訓任務主要在培訓機構完成,時間安排為第五學期下半學期。本階段完成軟件測試技術等級認證。
頂崗實習階段是根據學生的職業特長及發展需求,安排學生到合作企業實習,根據學生的水平及實習企業的用人計劃,成績優秀者可直接與企業簽約就業,學生的實踐情況由專人跟蹤幫助。對不合適的崗位,重新安排到其他企業實習就業。根據企業崗位標準的不同,時間安排為第六學期。
3.4 實行任務驅動、工學一體教學模式
樹立學習就是工作,工作就是學習的理念,采用任務驅動、工學一體教學模式開展教學活動。精選典型項目或案例作為教學內容,每一項目安排1~5個不等的任務,每一任務有針對性地包括一個或幾個必須掌握的知識點,學生的學習過程就是完成任務的過程,按照自主學習,仿真應用、工程應用的流程,完成學習任務。在自主學習階段,先給學生布置任務,然后指導學生展開自主學習,根據班級人數情況,靈活選擇以學生2~4人為一組的形式,進行咨詢、討論、制定工作計劃、提出任務實施方案,再指導學生進行仿真設計和測試,最后在實訓基地中指導學生進行工學結合實訓。每一任務完成情況選2~3組有代表性的作品進行展示與答辯,然后由其他組學生進行評價,提出意見與建議。不同組完成同樣的任務可能采用的方法不同。每一個項目完成后,提交項目報告,根據日常表現、實訓情況、創新能力、報告的完整性與準確性,給出評價結果。
4 結束語
軟件測試是一個新興職業,其具有的就業競爭小、薪資水平高、職業發展多元化的特點,吸引越來越多的人從事軟件測試工作,這為軟件測試人才的培養提供了很好的發展機遇。學院與企業、培訓機構合作,共同培養軟件測試人才可以實現畢業即就業的一站式人才培養。這種模式,把學院的教育資源、生源優勢,培訓機構的教學內容,企業的實訓優勢及就業優勢結合在一起,實現強強聯合、三方共贏。但在合作中,合作的各方要加強溝通,通過一定的機制規范和約束合作行為,并通過一定的保障措施確保合作持續長久。
基金項目:中國高等職業技術教育研究會“十二五”規劃項目 《基于校企合作服務外包人才培養模式的探索和實踐》編號:GZYGH2011014 主持人:姜永華
參考文獻
【關鍵詞】軟件測試;應用型人才;培養模式;課程群
據前程無憂網數據顯示,去年國內軟件測試人才缺口高達20萬,今年有望突破30萬人。目前國內軟件測試和開發人員比例大約在1:4-1:5,而國外測試和開發人員比例為1:1,微軟測試人員和開發人員的比例已達到2:1。軟件測試人才正在成為我國軟件行業目前最緊缺的人才之一。隨著我國軟件產業的迅速發展,軟件測試人才的地位正在逐年提升,這種供需矛盾將變得越發突出。
目前,國內軟件測試人才的培訓[1]主要有三種機構:企業、高等院校和IT培訓機構。企業培養的人才大多是通過參與項目自己摸索的軟件開發人員,由于缺乏對軟件測試全面的認識,在測試思想、技能、思維方式、溝通能力等方面都需要進一步提高。高校培養出來的人才具備一定理論知識,但動手能力較差,進入企業后需要再培養,不能立即到崗。培訓機構則能彌補前兩種方式的不足,但價格昂貴。
一、軟件測試課程教學現狀
(一)學生學習枯燥,興趣低
軟件測試是計算機專業課,課程內容理論性和操作性都很強,并且需要學習了解的自動化測試工具種類繁多。目前各個高校在開設這門課程時,大多數還停留在理論教學階段。教師準備好課件,學生拿著課本,首先給出書上官方的定義和自己的解釋,然后結合一些課本上或自己參與的項目,給出實例證明這些理論。學生容易感到內容空洞、枯燥乏味,學習時就缺少主動性,難對這門課程產生興趣。
(二)軟件測試實驗開展不充分,學生實踐能力弱
軟件測試知識點眾多,理論內容的授課量占絕大部分[2],實驗課時數僅占到四分之一左右。由于實驗時間、實踐環境有限,日常實驗教學都是驗證性的小實驗。由于沒有一個實際的面向企業的項目支撐,很多測試過程難以進行,比如集成測試、性能測試、驗收測試等等。通過對從事軟件測試方向工作的畢業生就業情況調查發現,軟件企業認為軟件測試課程理論豐富,但還存在學生實踐能力不足、測試工程師職業素質有待進一步提高等諸多問題。
(三)教師缺乏實際軟件測試經驗
軟件測試行業發展迅速,軟件測試工具種類多,更新快。軟件測試這門課程實踐性較強,高校計算機教師大多數軟件項目開發測試經驗不足[3],對軟件公司軟件項目研發測試過程沒有切身的體會。教師在講授這門課程時沒有實際的軟件項目案例可以操作,實踐教學顯得吃力,很難給學生軟件測試方面的經驗知識。
面對軟件測試人才的社會需求緊迫性和軟件測試教學現狀,人才培養單位應該擴大軟件測試人才培養規模,總結軟件測試知識點,改革教學方法,培養學生興趣,提高教學質量。
二、軟件測試工程師職業能力需求
為更好地培養學生的軟件測試工程師職業素質[4][5] [6],提高學生的就業率和用人單位的滿意度,充分分析軟件測試工程師的職業能力要求。
(一)素質要求[4][5]
1、具有團隊合作精神。
2、有較強的責任感及進取精神。
3、細心、耐心,具備逆向思維。
4、技術方面的基本素質,熟悉系統的應用,熟悉辦公軟件的應用,熟悉基本的測試流程;熟悉測試管理工具的應用。
5、具有測試人員的學習能力、領悟能力。
6、對行業具有信心,對測試的信心,相信軟件一直存在BUG。
7、良好的英語閱讀和寫作。
8、良好的語言及文字表達。
9、較好的溝通技巧。
10、懷疑精神具有測試人員必須保持的懷疑態度。
11、捕獲用戶觀點的能力,強烈的質量追求,對細節的關注。
(二)專業能力要求[6]
1、對Windows、Linux、Unix等大型主流操作系統的熟練掌握能力。
2、具備快速進行應用系統部署和測試環境搭建的能力。
3、測試人員必須掌握目前主流的程序設計語言,比如C、C++、JAVA、C#、VB等多種平臺下的一種或者多種語言,具備進行簡單應用開發的能力。
4、熟練掌握SQL Server、Oracle、DB2等一種或多種數據庫系統的使用,熟悉使用SQL語言。
5、對信息安全知識的基本掌握。
6、必須深刻理解和熟練掌握軟件測試基礎理論與技術。
7、精通各種測試技術,能夠手工或利用相關工具進行單元測試。
8、能夠進行測試用例設計、測試執行、編寫缺陷報告。
9、熟悉軟件測試流程和測試過程管理,能夠編寫測試計劃,具備組織測試工作的能力。
10、掌握測試管理相關知識和軟件。
11、掌握和熟練使用當前主流的功能、性能自動化測試工具以及測試管理工具,具備編寫測試腳本、進行功能和性能測試自動化測試的能力。
(三)知識結構要求
1、軟件知識:數據結構、操作系統、面向對象程序設計、數據庫原理、C程序設計語言、WEB技術、數據倉庫與數據挖掘、軟件工程。
2、硬件知識:數字邏輯、微機原理與接口、計算機組成原理、計算機系統結構。
3、網絡知識:計算機網絡技術、計算機網絡安全。
4、人文、社會學基礎:原理、道德與法律、中華民族歷史、大學語文、大學英語。
5、數學基礎:高等數學、線性代數、概率統計。
三、軟件測試課程設計理念和思路
根據軟件測試工程的職業能力要求,對軟件測試課程我們重新把握課程的設計理念和思路。
(一)課程設計理念
1、與企業共建基于工作過程的課程體系
根據專業辦學的定位及特色,《軟件測試》課程的設計理念是以軟件測試員/測試工程師崗位需求為依據,以培養學生使用自動化測試技術進行軟件測試的職業能力為主要目標,以測試工作的典型工作任務為導向,堅持以能力為本位的設計原則,制定突出企業應用能力和素養的課程標準,構建基于工作過程的系統化課程體系。課程組通過開展課程標準研討會和技術培訓會等形式,聽取企業專家的建議,修訂軟件測試課程的內容,保證課程內容與企業用人需求同步;在課程功能上注重學生應用能力的培養,構建以掌握軟件測試應用能力為特征的理實一體化的教學內容,做到強化技能、提升業務素質,提高學生的就業競爭力和實際工作能力。
2、和相關課程構成課程群,實現企業應用項目開發過程的案例教學環境
立足于培養滿足企業應用的軟件項目開發需要的應用型人才,本課程以真實的軟件實例項目測試任務和過程為依據,以現代教學理念為指導,精心進行教學設計。
在構建課程體系[7]時,由專業建設及教學指導委員會,充分調查分析不斷變化的市場,以企業應用軟件項目開發為切入點,構建基于軟件項目開發過程平臺。將《Java面向對象程序設計》、《數據庫原理及應用》、《軟件工程》、《軟件測試》、《軟件項目綜合實訓》這5門課程,按照專業培養目標,掌握計算機軟件技術所必需的理論知識和專業技能,具有較強實踐能力,能在軟件項目研發測試一線從事軟件項目需求分析、設計、編程、測試和軟件產品等工作的高素質應用型專業人才的要求,對應“軟件工程師”、“軟件測試師”“數據庫工程師”等行業職業特征,以項目為載體,形成一個有機整體,整合成“基于企業應用軟件項目開發過程”,組建了課程群。其中《Java面向對象程序設計》、《數據庫原理及應用》是專業核心基礎課程,《軟件工程》、《軟件測試》、《軟件項目綜合實訓》是專業核心必修課。通過“軟件項目的需求分析、設計、編程和測試技術”這個鏈將這五門課程緊緊聯系在一起,并能帶動軟件技術、網絡工程、計算機信息管理、計算機應用技術等幾個專業的協調發展。
(二)設計思路
1、以軟件測試工程師對軟件測試的能力要求為主線,設計課程體系,強化“工程屬性”,突出“項目色彩”。
在課程體系設計中,課程組以軟件測試工程師對軟件測試的能力要求為主線,整合“JAVA面向對象程序設計”、“數據庫原理及應用”、“軟件工程”并融合到以多種實際企業項目作為案例的“軟件項目綜合實訓”實踐課程中,經過優化,強化課程的“工程屬性”和“企業項目開發色彩”,將原來在傳統課堂教學中僅僅通過簡單實驗無法實現的“集成測試”、“性能測試”、“系統測試”、“驗收測試”等環節在實際工程項目實訓中得到實現,并努力培養學生崗位職業能力。在課程教學中,堅持以實際項目案例中的工作任務為目標,融理論教學與實踐教學為一體,以案例教學為導向,結合學生考取軟件測試工程師資格證書的實際需要,加強學生職業能力和綜合素質的培養,提高學生就業競爭力。
2、以企業工程能力培養為重點,實行分階段培養模式
根據企業工程能力的形成過程,課程組將教學內容劃分為基礎理論階段、技術應用階段、職業發展階段三個階段。其中,基礎理論階段包括測試基礎理論模塊,主要介紹軟件測試的基本理論與技術,測試用例設計和軟件測試流程,側重培養學生的測試思維,了解并掌握軟件產品質量保證的基本思想和基本測試流程,以及軟件測試的方法、技術,使學生能夠設計出測試案例并通過手動測試實現測試案例,為全面掌握軟件測試技術,后續實施測試和測試項目管理打下堅實的基礎。技術應用階段包括測試技術應用模塊,主要介紹主流的自動化測試工具,包括IBM系列測試工具、HP QTP、HP LoadRunner,企業級項目的測試實施,培養學生將測試知識和技術應用于自動化測試實施的能力。職業發展階段包括測試項目管理和職業素質教育兩個模塊,主要介紹軟件測試項目管理的相關技術和方法、運用工程項目方式管理軟件測試過程、測試企業工作模式和軟件測試人員必備素質,培養學生的項目管理能力、團隊協作能力和求職應聘能力。
適當加入游戲測試、手機測試、筆記本測試等學生感興趣的內容。我們了解到學生對游戲測試這部分內容很感興趣,那些平時聽課不太認真的學生在這個問題上都舉手要說上幾句,躍躍欲試,也都能說出一二。所以,課程組在軟件測試這門課程中經常討論一些游戲測試這部分內容,以引起學生的學習興趣。
四、改革教學模式和教學方法
(一)教學模式
本著“教師為主導,學生為主體”的思想,采用雙證培養、分階段培養和教學做評一體化教學模式[8]。
1、雙證培養教學模式
實行“雙證培養”教學模式,將學歷教育與技能學習無縫對接,學生畢業后不僅能獲得國家承認大學學歷證書,同時還將獲得國家勞動部高級職業技能認證證書。根據學生的能力特點,推薦學生考取軟件測試助理工程師、軟件測試工程師、軟件質量管理工程師、注冊軟件質量保證師(國際認證)等資格證書。雙證教育使學生專業能力更強、職業素養更高、綜合素質更好、更符合企業用人標準。
2、教學做評一體化教學模式
將教學場所直接設在實訓實驗室,師生雙方邊教邊學邊做,理論和實踐交替進行,把課堂教學轉向工作情境,課堂由教師為主轉向以學生為中心,突出學生動手能力和專業技能的培養,充分調動和激發學生學習興趣。學生真正變成了學習的主人,而老師只是一個引導者或答疑解惑者,可以培養學生的終生學習能力,對加強學生的計算機動手操作能力和解決實際問題的能力也有很大好處。
最后教師跟大家一起對實驗結果進行講評,并對表現優秀的學生給予鼓勵,同學們情緒高漲,學習積極性高。
(二)教學方法
根據學生的實際情況,綜合采用多種教學方法[9][10]。
1、項目導向教學法
以從企業精選的項目為載體,在授課過程中對項目進行分解,根據學生的個性和他們的意愿分配不同的角色,并引導學生練習操作,體驗項目流程,從而形成規范的開發意識和良好的IT職業素質。學生在校內所學習到的軟件開發中的各類案例,在實際工作中能夠及早地進行規劃。
本課程以物流信息網這個項目為主線,把整個課程的教學演變成一系列的教學情境。按照實際工作中項目開發流程的順序,依次展開,將“顯性”的知識灌輸,變為“隱性”的能力培養。通過具體項目的實施,引導學生在完成項目的過程中,掌握知識,培養能力。
2、任務驅動教學法
在課堂教學活動中,如果采用傳統教學方法,很難激發學生學習興趣。應該采用任務驅動教學方法,把一個項目分解為若干個大任務,每一個大任務,又分解為若干個小任務,將任務資料發給學生。學生在教師的引導下,課下先要進行消化,然后查閱各種必要的資料,理解知識并思考提出解決問題的方法。課上教師答復學生的問題,并引導學生更深層次的思考。通過這種方法充分調動學生的學習積極性,提高學習興趣,使學生既學會理論知識又學會用理論知識解決實際工程中的問題。
3、啟發式教學法
教師根據課程教學目的、內容、學生的知識水平和認知規律,采用啟發誘導方法傳授知識。該方法能夠充分調動學生學習的積極性、主動性,促使學生獨立思考、判斷、歸納解答。能較好的培養學生學習能力,達到觸類旁通的教學效果。
4、小組教學法
將班內學生分成若干個測試小組,每小組成員不超過7人,每組分配不同的軟件項目任務。小組成員模擬與體驗軟件測試全過程工作職位和角色,使學生全過程適應工作職位的要求。
各項目小組在測試項目過程中,針對不同的開發階段,撰寫各開發階段相應的文檔,并制定相應的測試計劃,設計典型測試用例,使用不同的軟件測試技術和測試工具,完成不同的測試目標,并進行回歸測試,以實現軟件測試各單項專業知識與技能整合運用的目標。在整個測試過程可以體現“學以致用”的思想,實現理論與實踐相結合。
通過演練項目開發測試,不僅讓同學們切身體會到軟件開發的整個過程,還讓同學們對軟件開發中各個角色有充分的了解,同時也更深刻的體會到團隊合作的重要性。
五、教師隊伍建設
加強雙師隊伍[11]建設,堅持“引進來,走出去”原則,積極引進具有企業開發經驗的高素質人才進行課程教學和實驗指導,同時注重本課題組青年教師隊伍的培養。采用分批次選派青年教師參加山東大學齊魯軟件學院暑期實訓和定期組織青年教師去軟件公司實習等方式,將企業的軟件測試經驗直接帶到教學中,提高教師的教學水平。
我們定期引進一些軟件公司的軟件測試人員或者聘請這方面的專業人士為教師、學生做定期講座,以彌補我們在教學實踐方面的缺陷。
六、實驗實訓條件建設
為培養應用型人才,本課程注重從不同側面提高學生的實踐能力。一方面,強化課內實驗教學,在校內建有多個實訓實驗室,另一方面,與校外多家企業建立合作關系,為學生提供實訓實習平臺,開展產學研合作,構建校企合作培養人才的新模式。
本課程組注重密切與行業和企業的聯系,與多家軟件公司進行長期合作,建立了校外實習實訓基地[12],為學生提供了生產性實訓和頂崗實習的場所,在真實的職業環境中完成真實軟件產品的開發,體驗企業文化,培養職業態度和習慣。學生畢業后可成為這些公司的正式員工,真正實現了學校、企業、學生三方受益。
七、改革考核方式
大膽改革課程考核方式[13],采用30%平時成績+30%實驗成績+10%項目考核成績+30%期末考試成績方式。平時成績主要考核學生的課堂討論情況、課后作業完成情況及課后自學情況。實驗成績根據學生在實驗中的測試用例設計和操作情況,以及測試小組的分工合作情況給以評分。項目考核主要采用項目答辯的形式考核學生對基礎知識的理解和掌握情況,由教師、行業專家、學生代表組成專家組給予評分。這種考核方式更注重的是對學生學習過程和實踐操作水平的考核,避免學生為考試而學習,死記硬背現象。
八、小結
通過對基于工作過程的軟件測試應用型人才培養模式的探索研究,學院已取得了實質性進展,建立了軟件測試課程教學團隊和軟件測試實驗實訓基地。學生的軟件測試綜合應用能力有明顯的提升,得到用人單位的好評,提高了學生的就業率。
參考文獻:
[1]龔宇輝.軟件測試課程教學改革研究[J].教育與職業,2010(24):130-131.
[2]溫艷冬,石冬凌.軟件測試課程三級項目教學實踐[J].計算機教育,2010(22):77-79.
[3]胡宏銀.軟件測試課程教學方法探討與實踐[J].計算機教育,2007(03):11-13.
[4]http:///link?url=5xO-IodKMsEhsyUjQhIeqybDGR-8AypYffsnAnZdMWpLRpgEhLehfzGEROxq9fIC.
[5]孫金華.軟件測試人才培養與課程構建的探索[J].計算機時代,2009(6):68-71.
[6]鐘素芬,葉明芷.軟件測試應用性人才培養模式的探索與實踐[J].北京聯合大學學報(自然科學版),2007(03) :89-92.
[7]田小霞.軟件測試人才培養的探索[J].福建電腦,2013(02):181-182.
[8]劉育熙,耿雪春.面向應用的軟件測試人才綜合能力培養模式研究[J].教育與職業,2009(11):111-112.
[9]范洪輝,朱洪錦,朱廣萍.“軟件測試技術與軟件質量”課程教學改革探索[J].江蘇技術師范學院學報,2012(12):151-153.
[10]周改云,馬麗.行動導向教學在軟件測試技術課程中的應用[J].電子測試,2013(04):192-194.
[11]蘭景英.構建應用型軟件測試人才培養實踐教學體系[J].黑龍江教育學院學報,2011,(05):78-80.
[12]蘭景英.應用型軟件測試人才培養模式探索與實踐[J].濰坊教育學院學報, 2011,(04):78-80.
[13]葉振,杜斌.開放式軟件測試教學實踐探索[J].現代企業教育,2011(01):140-141.
基金項目:
山東協和學院教改項目(2012xh01)。
作者簡介:
李兆翠(1980.1-),女,山東莒南人,碩士,講師,研究方向:軟件工程。
關鍵詞:應用型本科;分層次教學;軟件測試;教學改革
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2016)24-0169-02
一、軟件測試行業現狀
近年來,我國IT軟件產業呈現迅猛發展的態勢,但是由于許多國內軟件企業存在著“重開發,輕測試”的傾向和認識的誤區,往往導致在軟件開發工程師開發出一個軟件后,卻沒有一個好的軟件測試工程師對軟件項目進行測試,從而導致所開發的產品出現質量問題,這也從側面突顯了我國軟件測試人才的極度匱乏。國外IT企業中的軟件測試與軟件開發人員的比例一般維持在1∶1左右,而在國內的一些IT企業中,這一比例卻僅在1∶4~1∶5之間。因此,高校如何培養符合社會需求的大批高質量軟件測試人才,如何盡快建立軟件測試人才的系統培養機制,進而保障軟件業的健康化發展,已成為現階段應用型本科院校人才培養極為艱巨和緊迫的任務。
二、軟件測試課程的現狀
當前,《軟件測試》課程已從隸屬于《軟件工程》課程單獨一章的內容發展成為軟件工程專業中一門獨立、必修、核心的課程,甚至有些學校已經單獨開設了“軟件測試”這一專業。筆者結合近幾年的教學情況,總結了該課程中尚存在的若干問題。
1.授課內容陳舊,理論知識多、枯燥。隨著軟件開發技術的發展和進步,當前軟件測試領域不斷涌現出新的測試理論、測試技術、測試方法及測試工具,如:敏捷開發所引起的敏捷測試技術、探索式測試技術及快速迭代測試技術,不斷普及的自動化測試催生了大量自動化測試工具的產生及應用,等等。而反觀當下大多數與軟件測試有關的教材及參考書,絕大部分仍以傳統而深奧的理論知識為主,同時輔以傳統的測試模型及測試方法的介紹,缺乏案例教學及項目驅動教學的實例,授課內容多,一個學期的課時往往不夠安排,教與學的過程都顯得極為枯燥乏力。
2.缺乏良好的實訓平臺,實驗內容與理論知識難以結合。軟件測試按不同的標準可分為不同的類型,如圖1所示。這些不同類型的測試在理論課上往往都會涉及到,但在實驗課上卻難以一一展開,盡管安排了“2+2”的周課時(即每周2節理論課+每周2節實驗課),但由于受限于實驗案例的選擇、機房上機環境的配置、缺乏良好的實訓平臺及學生基礎參差不齊等原因,實驗內容與理論知識始終難以結合。
3.“重開發,輕測試”的思想普遍存在,學生疲于應付考試,死記硬背多,考完即忘。軟件測試是一門綜合性強、涉及學科領域多的課程,學生普遍缺乏具體認識,大多存在“重開發、輕測試”的心理,認為只要能把系統開發出來,做不做測試都無關緊要。這也導致學生對這門課的學習不夠重視,期末考試也是疲于應付,對一些基礎知識甚至是軟件測試領域中的常識問題,不注重理解,死記硬背,其結果必然是背得快、忘得也快。基本考核結束之后,所有的知識點也都還給授課教師了。
三、分層次概念的提出
“分層次教學”的思想源于孔子提出的“因材施教”。目前“分層次教學”的思想在高等教育領域尚處于探索與研究階段,為適應社會和經濟發展對工程創新型人才的需求,龍巖學院信息工程學院積極推行“應用型本科人才培養模式改革與實踐”的人才培養方案,不斷在專業培養方案、教學模式、課程體系及教學方法和手段等方面進行創新和變革,以期提高教學效果和人才培養質量。軟件工程專業在上述大環境下,根據自身特點和社會市場對軟件人才的需求,對課程體系進行重新調整,并按照專業能力分階段、分層次的培養目標,運用宏觀調配的方法對課程體系各知識模塊進行整合與優化。
四、擬采取的措施
《軟件測試》課程是軟件工程專業的一門專業核心課,是培養學生軟件測試理論、技術、方法和能力的重要課程,同時,軟件測試也是當前IT行業最熱門和緊俏的職業之一,是保證軟件產品質量、提高軟件可靠性、降低軟件成本和風險的重要手段。基于此,《軟件測試》課程必須在教學內容和教學方法上及時調整和更新,使課程建設與學科建設緊密結合,既要滿足軟件業對軟件測試人才的需求,又要保證軟件工程專業中各知識模塊之間的系統性和完整性。本節以下內容將詳細描述此次分層次教學改革中所采取的措施。
1.對學生分組。筆者所在學院軟件工程專業,一直采用“3+1”的教學模式,軟件測試課程開設在大三上學期(相比其他院校,開設時間提早了一個學期),學生經過大一、大二兩學年專業基礎課及部分專業課的學習,基本能找到自己的學習興趣并定位自己的學習方向,如:有學生對某門程序設計語言,即編程感興趣,有學生對嵌入式開發、物聯網感興趣,當然也有學生對軟件測試行業感興趣,等等。結合學生自己的興趣及學習情況,對學生進行分組,主要分為三類,其中:I類――基礎了解類;II類――一般測試類;III類――測試開發類。
2.實施不同的措施。根據課前對學生的上述分組,對不同層次要求的學生,實施以下分層。
(1)理論教學內容。結合前文第2節所述軟件測試課程教學中存在的問題,將理論授課內容進行調整后主要分為以下四個部分:①軟件測試基本概念篇;②軟件測試技術篇;③軟件測試過程篇;④軟件測試項目實踐應用篇。其中①中主要介紹軟件測試的概念、分類及軟件缺陷等內容,②中主要包含黑盒測試技術及白盒測試技術,③中主要是對單元測試、集成測試、系統測試及驗收測試等進行描述,④則主要按測試模型中的不同步驟進行介紹,包括:測試需求分析與測試計劃、設計與維護測試用例、部署測試環境、測試執行與跟蹤、缺陷報告與質量分析報告等。
對理論教學內容所采取的策略是:I類、II類、III類不同分組的學生,都需要對①、②、③中的內容進行學習;II類、III類學生還需要對④中涉及的內容進行學習;此外,III類學生還需利用課外時間,學習與測試自動化及測試框架相關的知識。
(2)實驗教學內容。結合理論教學內容及實驗室配置環境等因素,在軟件測試課程中所開設的實驗教學內容主要有:①測試之初體驗(在沒有任何測試基礎的情況下如何進行測試);②黑盒測試;③白盒測試;④單元測試;⑤功能測試;⑥性能測試;⑦系統測試。
對實驗教學內容所采取的策略是:I類、II類、III類不同分組的學生,都需要實驗的內容是:①、②、③、④;II類、III類學生還需要對⑤、⑥部分進行學習和實踐;此外,III類學生還需利用課外時間,學習并實踐⑦的內容。
(3)考核方式。為避免學生應對考試死記硬背的現象,將期末總評的成績按以下標準進行:總評成績=考勤×10%+期中×20%+實驗×20%+期末×50%,即適當降低期末卷面分數的比例,提高期中及實驗成績比例。鑒于學校教務處要求,期末考試依然采用統一的試卷,但期中考試則根據不同層次的學生采用不同的試卷進行考核,實驗部分的成績也依據不同層次學生的不同表現進行評定,且要充分利用分層的優勢進行考核。
3.成效。此次教學改革的受益對象主要是我校2012級軟件工程共計109位學生及2013級軟件工程共計106名學生。對于I類層次的學生,除了學習了軟件測試基礎知識之外,他們還能將學習的重心放在自己感興趣的其他科目上;對于II類、III類層次的學生則對課本及課外知識都進行了學習,這為他們畢業之后的職業發展奠定了良好的基礎。
五、結語
教學改革任重而道遠,非一朝一夕能成。未來還需努力的方向在于:①引入更多的案例進行教學,豐富實驗課堂;②進一步完善針對本校不同層次學生的《軟件測試》課程實驗指導書;③給學生加以更多職業規劃方面的輔導,為當今社會IT行業中培養“全面軟件測試工程師”而努力。
參考文獻:
[1]余久久,張佑生,傅廷亮.軟件測試課程教學思考[J].安慶師范學院學報(自然科學版),2013,19(4):121-126.
[2]毛強,彭振生.大學物理課程分層次教學改革初探[J].巢湖學院學報,2009,11(6):137-139.
Abstract: In the context of "excellent engineer education training plan", this paper looked for problems in traditional software testing course, explored software testing course construction in software engineering outstanding engineer training system, proposed software testing courses split to improve the course setting with complexity in phases, and took advantage of virtual practice platform and used spiral case teaching to closely integrate software testing and other software development course.
關鍵詞: 卓越工程師教育培養計劃;軟件測試;課程建設
Key words: excellent engineer education training plan;software testing;course construction
中圖分類號:TP39 文獻標識碼:A 文章編號:1006-4311(2013)09-0279-02
0 引言
為了解決學校培養模式單一的問題,國家提出了工程教育改革,培養卓越工程師。確定了培養具有國際視野的行業領軍人才、國際認可的高級工程技術人才和創業、研發型高端人才的培養目標[1]。卓越軟件工程師教育是以“卓越工程師教育培養計劃”的實施為基礎,旨在培養工程型的軟件專業人才。南華大學于2011年成功申請“卓越工程師計劃”,軟件工程卓越工程師培養成為其中之一。
1 軟件測試課程建設背景
隨著近年來軟件測試人才需求量的不斷增加,軟件測試人才培養成為熱點,很多高校都展開了對軟件測試課程建設的相關研究,在卓越工程師培養背景下,軟件測試的課程建設應該有其自身的針對性。南華大學計算機科學與技術學院專業工程系于2009年開設軟件工程試驗班,2010年軟件工程專業成為一級學科,2011年成功申請“卓越工程師計劃”。軟件工程專業對卓越軟件工程師的培養正進行不斷的探索和改革,軟件測試的作為軟件工程中的一個重要的組成部分,對卓越軟件工程師的培養具有重要的作用,因此軟件測試課程的建設是整個專業課程體系建設的重要組成部分。
2 傳統軟件測試課程存在的問題
傳統的軟件工程專業人才培養過程中,軟件測試課程存在著很多問題。
2.1 軟件課程開設單一 大部分的高校軟件測試課程的開設十分單一,某些高校甚至只將軟件測試作為軟件工程的一部分提及。而在實際的工程實踐中軟件測試是貫穿整個軟件開發的活動,在不同的開發階段都有相應的測試理論支持和測試工具應用。
單一的軟件測試課程只能簡單羅列軟件測試不同階段的技術和方法,缺乏對知識的針對性和連貫性,學生很難理解不同的測試技術和方法在軟件開發的各個階段應該如何應用,導致學生只會死記硬背軟件測試的條條框框而不懂如何活學活用。
2.2 理論與實踐脫離 軟件測試是一門實踐性非常強的課程,然而測試工具和測試對象都是看不見、摸不著的軟件產品,實踐課程的組織和實施有較大的難度[2]。雖然大多數教師充分認識到了實踐教學的重要性,在教學過程中也加強了實踐的力度,但是由于沒有考慮到大多學生沒有參與過實際的軟件開發的項目,沒有接觸過軟件開發的流程,實踐中選擇的實驗案例十分單一,缺乏領域結合,與真實工程相差較大。
學生在學習過程中很難理解測試在軟件開發中需要使用方法及其作用,很多學生因不能感性認識測試的重要性因此對課程缺乏興趣。
2.3 案例陳舊過時 案例教學是軟件測試教學中的常用手段,對學生理解測試方法有著很重要的作用,但是目前高校教學普遍存在著教學案例陳舊過時,大部分教學都沿用了傳統的教學案例。這些案例大都沒有介紹軟件測試的工程方法和實現過程,并且沒有進行難度的區分,很難達到好的教學效果。
3 軟測試課程建設探索
本專業的教師經過多年的實踐,總結了大量的教學經驗,按照實際工作中典型的工程師團隊所需的各種技能知識為導向,按照復雜度漸增、螺旋遞進的原則設置卓越軟件工程師課程體系與內容,把傳統的以學科知識的系統性為導向的橫向課程體系改造為以個人職業角色發現和能力提升為導向的、適應團隊教育培養的新型縱向課程體系。軟件測試課程是軟件工程卓越工程師培養課程體系的重要組成部分,課程總體跟隨整體培養課程體系的大方向,并結合自身的特點進行建設。
3.1 復雜度漸增式開設課程 在傳統的以面向開發為主的培養模式下,測試課程設置單一,知識針對性連貫性不強。為了解決這些問題,在專業課程開設過程中將軟件測試課程課程拆分,穿插到整個培養過程中,緊密聯系軟件工程其他階段的課程,并且使用案例貫穿所有階段,復雜度逐漸遞增,讓學生在學習過程中循序漸進,逐步建立學習的興趣和信心。
在第5學期分成兩個階段分別開設《單元測試與軟件質量》和《軟件驗證與確認》。在第一階段旨在培養學生小規模程序測試的能力不涉及復雜系統,以提高個人開發測試的基本能力為目標,學生可以運用測試課程中學習的方法在開發過程中使用,針對性強。第二階段旨在培養學生對系統整體測試的能力,此時學生以完成基本開發能力的訓練,其他相關課程的培養中也進入了系統級別。在該階段以上一階段培養的能力為基礎,提高復雜度,跟軟件開發其他階段緊密結合。完成第5學期的測試基礎課程開設之后,在第6學期還開設了《web軟件測試》、《測試案例分析》、《數據庫測試》等專業選修課,給有興趣的學生提供更多的學習選擇。
3.2 基礎與實踐并重,充分利用虛擬實踐平臺 課程的開設充分考慮到測試重實踐,并且與軟件開發其他階段聯系緊密等特點;同時也考慮到了此時學生正處于學習階段,直接參與實際項目對學生的學習并不能起到很好的作用,因此在課程學習階段充分利用了校內軟件實訓基地,創建網上“虛擬企業”,引入企業管理模式,在這種虛擬平臺下,針對基礎的知識點開設虛擬項目[3],模擬軟件測試的真實工程環境。學生在自己組合團隊中有各自的工程任務,針對性實用性很強,學生能夠在完成自己任務的同時感性的認識測試崗位工作,體會到軟件測試在整個軟件開發過程中的作用,將單項知識技能之間關聯在一起,系統的運用專業知識和技能。
3.3 采用螺旋式的案例教學,案例與其他軟件開發階段貫穿 課程采用螺旋式案例教學方法,教學案例與其他軟件開發階段貫穿,即針對同一個項目分解為基礎與高階的兩個不同難度程度的案例,課程講解的案例從需求分析,設計,實現,一直貫穿到軟件測試,體現了軟件開發連續的工程過程。同時貫穿的教學案例都是從高年級學生參與的實際開發的項目中提取,教師總結了在開發的過程中學生出現的各種問題,在案例講解過程中更容易被學生所接受。教學案例一個階段一個階段的被不斷完善,相比較傳統的教學案例更加貼近學生學習實際,有一定的真實性又同時具備知識點針對性。
4 結語
本教學團隊在“卓越工程師教育培養計劃”背景下,結合專業現狀與社會需求,總結以往開設軟件工程試驗班的經驗和教訓,一直以來不斷研究探索,逐漸形成一套適合的本校卓越軟件工程師培養的課程體系。其中軟件測試課程的建設既遵循了軟件工程師培養課程體系的大方向,又結合了課程自身的特點,而本教學團隊在今后的教學過程中還將不斷的改進,遵循行業發展的需要。
參考文獻:
[1]全國工程教育專業認證專家委員會.全國工程教育專業認證工作手冊[S].中國教育部,2009.
[2]李亞.軟件測試”教學探索與實踐[J].計算機教育,2008,(6):31-32.
摘要:實踐教學是高職院校高技能人才培養的重要環節,在國家示范高職院校建設的過程中我們對軟件技術專業的實踐教學進行了一系列的改革和實踐,主要包括驗實訓條件建設、實踐教學體系構建、實踐教學方法改革、核心課程建設、以生產性實訓為特征的工學結合人才培養模式、與企業“零距離”的生產性實訓和頂崗實習、校企“蛙式雙棲”的師資隊伍建設等,取得了良好的效果。
關鍵詞:實踐教學;工學結合;頂崗實習;工作過程;項目驅動
威海職業學院2003年開設計算機應用技術專業軟件方向,2005年開設軟件技術專業,期間先后與北京華育發國際技術培訓中心合作引進印度CED-CUL軟件工程師認證培訓,與北京CSTP軟件人才培養辦公室合作聯合培養軟件開發工程師,2007年與上海智廣公司合作引進IBM教育學院項目,聯合培養軟件測試工程師。特別是自2006年12月開始,威海職業學院被教育部、財政部確定為全國首批28所示范性高等職業院校建設單位,在示范校建設方案中,軟件技術專業作為地方財政支持項目進行了為期三年的建設。自啟動“國家示范性高等職業院校建設”項目以來,軟件專業全體教師認真學習“國家示范性高等職業院校建設”相關文件精神,充分認識國家示范性高職院校建設的重要意義,本著“更新教育理念、加強內涵建設、提高人才培養質量”的目標,積極參與專業建設,大膽進行實踐教學方面的改革與探索。經過三年的建設,軟件技術專業在創新人才培養模式、推進工學結合、生產性實訓、頂崗實習及項目驅動、基于工作過程教學改革等方面取得了長足的進步,總結形成以下有關實踐教學的研究成果。
1 加強以生產性教學工廠為主體的實驗實訓條件建設
要加強實踐環節的教學,必須完善相應實驗實訓條件,實驗實訓條件的完善是高素質技能型人才培養的基本條件。
投資108.29萬元完善實驗實訓硬件建設。其中成功地與山東凱信職業培訓學校達成“實行網絡教育技能培訓基地建設合作協議”,引進資金51.6萬元,購置計算機120臺,建成“軟件開發與測試實訓室”“web開發實訓室”;擴充了網絡工程實訓室,思科網絡公司捐贈了3萬美元的網絡設備。
投資111萬元,建設圖形圖像制作實訓室、動漫設計與制作實訓室。特別是在生產性教學工廠的建設方面探索了以產權連結為紐帶,建立“雙向嵌入”校企合作長效機制,即通過“雙向嵌入”形式,把企業引進學校,建立現代企業制度,按企業化運作模式經營,有效建立起以產權連結為紐帶的校企合作長效機制。它具有企業生產、經營、管理等完整的功能和基本特征,但又有別于一般企業以贏利為目的的特征,要遵循教學的基本規律,完成學生技能訓練和技能培養的任務。目前,通過校企共同投資600萬元建立了威海天信電子有限公司,威海天賦軟件有限公司。
2 構建軟件技術專業“五位一體”的實踐教學體系
本專業以職業能力培養為主線,遵循學生學習專業知識和掌握專業技能的規律,以基本技能訓練、綜合技能訓練、崗位適應性訓練、創新能力培養、頂崗實習為主要環節,構建實踐教學體系,建立“五位一體”的實踐教學平臺,完善實踐教學條件的體系化建設。到現在,分階段建設以專業認知和基本技能訓練為主要功能的實驗實訓室,分別是計算機軟硬件發展史展覽室、計算機基礎實訓室、基礎編程實訓室;以仿真訓練和綜合技能訓練為主要功能的校內實訓基地,即軟件開發與測試實訓基地含“軟件開發與測試實訓室”“web開發實訓室”“網頁設計與制作實訓室”“動漫設計與創意實訓室”等4個實訓單元;以真實工作環境的崗位適應性訓練為主要功能的生產性教學工廠,即軟件開發中心1處(威海天賦軟件有限公司);以突出個性發展和創新能力培養為主要功能的創新工作室2個,即機器人工作室、動漫與創意工作室和以頂崗實習為主要功能的校外實習基地30個,形成集教學、培訓、技能鑒定、軟件開發于一體的多功能、綜合性的軟件職業技能訓練中心。
能力培養過程如圖1所示。
3 多方合作辦學,與企業共同制定實踐教學計劃
幾年來我們積極拓展聯合辦學渠道,經過廣泛論證,2004年我們與北京華育發國際技術培訓中心合作引進CED-CUL軟件工程師認證課程,在計算機專業中開設軟件技術方向,成功地培養三屆共110名畢業生;2006年5月,與中國軟件行業協會簽署協議,成為全國首批13處軟件人才培養工程實訓基地之一,合作成立兩個軟件訂單班,在06級軟件技術專業中開展CSTP軟件工程師培訓;2007年10月,與上海智廣公司合作,引進IBM教育學院軟件測試模塊課程體系,在07級軟件技術專業中開設軟件測試方向。
實踐教學的內容是否合理,直接決定了學生將來能不能順利走向工作崗位。因此必須根據職業崗位的實際需求確定實踐教學體系。我們近幾年先后到北京、上海、大連、蘇州、濟南、青島及威海的多處軟件園區進行了廣泛深入的調研,在多方調研的基礎上,邀請軟件企業軟件開發工程師及合作單位工程師共同開展深入細致的研討,將軟件技術專業的主要工作崗位分為四大類,主要包括:程序設計、數據庫管理與維護、web開發、軟件測試。因此在實訓模塊的劃分上我們以某一能力或技能的形成為主線,根據具體的崗位群最終將軟件技術專業的實踐教學劃分為程序設計、數據庫管理與維護、web開發、軟件測試四個模塊,每個模塊分別由相應專業課的實踐環節來支撐,對每門課程有針對性的設置實訓課題,采用項目實戰的形式展開教學,系統地訓練學生的專項技能和綜合能力,從而把專業知識和專業技能有機地融合為一個整體。具體的實踐教學模塊劃分及實訓實習計劃表如圖2所示。
4 完成核心課程建設,形成面向市場、依托行業的課程體系開發模式
為了提高教育教學質量,本專業不斷優化課程體系,加強課程建設。面向市場、依托行業,讓企業參與、與企業共同制定軟件技術專業的教學計劃。與CSTP(中國軟件人才培養辦公室)、上海智廣、青島軟件園合作,請他們參與專業教學計劃的制訂,通過廣泛的企業調研和對往屆畢業生的跟蹤調查,確定軟件技術專業的主要就業崗位群如下:軟件程序員、數據庫設計與維護、軟件測試、WEB開發。根據崗位群進行本專業的職業能力分解,將其分解為基本素質、專業能力和外語能力。
根據職業能力要求,按照每種崗位的工作過程將整個軟件專業的課程體系劃分為四大模塊,以就業崗位為著眼點構建本專業的課程體系。具體如圖3。
以工作過程為導向、職業能力的培養為目標,構建優質核心課程。主要采用“項目導向”和“任務驅動”的模式進行教材和精品課程的建設。自主編寫并完成“項目導向”的特色教材:《C語言程序設計》一部。完成了《Java程序設計》《C語言程序設計》《數據結構》《網頁設計與網站開發》校級精品課程建設,其中《Java程序設計》為2009年省級精品課程,《網頁設計與網站開發》為2009年計算機教指委精品課程。
5 深化教育教學改革,探索和完善以生產性實訓為特征的工學結合人才培養模式
人才培養模式改革的重點是教學過程的實踐性、開放性和職業性。按照“以勝任職業崗位需要為目標,以職業能力培養為主線,以用人單位需求為培養標準”的原則,在積極探索“工學結合”“學訓交替”人才培養模式及“項目導向、任務驅動”等教學模式的同時,重點創新了以生產性實訓為特征的工學結合人才培養模式,在探索過程中,堅持了德育為先、實踐為本、創新為魂的理念,具體做法如下:
(1)將德育教育貫穿人才培養的全過程,無論校內外、課堂內外,都滲透了德育教育的過程,為此出臺了全面課堂管理辦法,規定在課堂上不僅要進行專業課教學,同時滲透德育教育內容,教師還要對課堂的教學、環境等各個方面全面負責的管理模式;課堂外,利用班級活動、對日常行為舉止的表現考核、參加集體活動、參加專業競賽活動等項目對學生進行全面的量化考核;學生參加校外頂崗實習時,完全按照企業對員工的要求,對學生進行職業道德等方面的培養教育。
(2)改革人才培養模式,實踐了“2+1”(兩年在校學習+一年企業頂崗實習)的人才培養模式,加大實踐教學的比例,將企業頂崗實習的時間由半年增加到一年。
積極開展“學訓交替”教學模式的改革,與青島軟件園合作,先后在寒暑假和實訓期間安排學生由教師帶隊到青島軟件園進行生產性實訓,參與真實的軟件開發項目,學生的實踐能力得到了提高。
(3)積極開展實驗實訓教學方法改革,采用了以“項目導向”為主的實訓教法,以“學生為主體,教師為輔助”展開教學,除第二學期為基礎性實訓外,第三、四學期的實訓,加大生產性實訓的比例,選取企業的真實的開發項目,安排學生開發小組主動到社會上去尋找課題,在企業開發的真實項目完全可以抵頂校內的實訓學分;第五、六學期組織學生到企業進行實訓或頂崗實習,使學生在實訓實習過程中感受真實的工作氛圍,做到與企業“無縫對接”,形成了具有生產性實訓為特征的工學結合的人才培養模式。
6 積極開展實踐教學方法的研究
6.1 在實踐教學過程中,采用“項目驅動”的教學方法
具體做法是將學生劃分為幾個項目開發小組,每個小組選舉一名組長擔任項目經理,負責統籌安排。按照軟件的基本開發流程展開實訓,主要分為“功能分析、詳細設計、測試驗收”三個階段,指導教師布置整個項目任務,每個小組制訂出詳細的項目計劃,在項目計劃中將整個項目分成幾個小任務,給出進度安排。每組的項目經理按項目計劃對小組成員進行分工,共同完成項目開發。在教學過程中注重培養學生發現問題、分析問題、解決問題的能力以及創新思維與技術綜合應用能力,鍛煉學生的團隊合作能力,鼓勵、敦促學生自己動手嘗試,為自由思考、創造留有余地。
功能分析:首先由教師以客戶的身份給出項目的總體功能要求,學生對需求進行分析,確定開發目標,制定開發計劃。鼓勵學生在滿足基本需求的基礎上,充分發揮創新能力,擴充和完善系統的功能。
詳細設計:學生按照開發計劃進行詳細設計,通過查閱資料自主完成項目的開發,教師負責答疑。在此過程中,學生分析問題、解決問題的能力得到有效的鍛煉。
測試驗收:對完成的項目進行測試,教師或指定的測試小組負責驗收。對于優秀作品,進行展示與點評。
6.2 在實訓過程中,根據實際情況采用多種組織方式
(1)類比教學法:考慮到目前高職高專學生的現狀與特點,選擇的授課案例通常與學生在實訓中完成的項目模塊具有相似性,學生可以仿照授課案例完成項目模塊的設計與實現,簡化學習難度。或者在講授一個模塊的實現后,讓學生設計和實現另一個有共同點的模塊,
(2)成對教學法:為了降低學習難度,幫助學生克服程序設計過程中的焦慮感,借鑒合作學習理念,采用成對開發模式,對于難度較大的實訓項目,學生強弱搭配,兩人一組,一人操作,一人在旁邊看,并定期進行角色互換。以此提高學生的學習積極性和參與意識,降低學習的難度,培養學生的合作精神和團隊意識。
(3)榜樣激勵教學法:在教學過程中,通過展示分析高年級學生或同班(或同年級)學生的優秀作品,啟發激勵其他學生。實踐證明,榜樣激勵教學法很有效,特別是展示同班(或同年級)學生作品最具激勵作用。
(4)項目教學法:教師根據實訓內容,設計出一個個的工程項目,以項目的形式提出教學(實驗)內容,要求各小組自主完成項目。
(5)自主學習指導法:對那些比較簡單或雷同的知識性內容采用“自主學習指導法”處理。指導教師通過布置自主學習綱要,指出重點難點和學習檢查等途徑強化學生自主學習意識,以培養學生的獨立思考和創新能力。
(6)現場討論法:在現場開發時,針對技術細節充分運用討論法激起學生對問題的爭論,活躍學習氣氛,并使學生處于一種接受知識的最佳狀態,自然教學效果也最佳。在選題上則注意選擇有異議的操作方法或結論引導學生,達到理解的升華和實現追根問底的目的。
(7)學生演示法:在課堂實訓或現場開發時,提供某些小的技術操作問題,讓部分學生自己親自演示并向其他學生解說,使學生增強解決技術問題的自信心。
(8)任務驅動法:教師提供一些實際的技術問題,要求學生在指定的期限內給出最恰當的解決方法。
7 完善生產性實訓和頂崗實習,構建與工作崗位“零距離”的實踐教學環境
以職業能力培養為主線,遵循學生學習專業知識和掌握專業技能的規律,以基本技能訓練、綜合技能訓練、崗位適應性訓練、創新能力、頂崗實習為主要環節,構建實踐教學體系。從第二學期到第四學期,每學期利用四個周的時間,進行實訓課程教學,每學期實訓側重于不同方面能力的培養。第二學期側重于基本技能訓練,主要進行程序設計能力的培養及數據庫的設計與管理,主要在校內實訓室展開;第三、四學期側重于綜合技能訓練,主要進行Web開發方面的能力訓練和軟件測試能力的訓練,以在校內實訓室進行為主,鼓勵學生到企業尋求實際的開發項目,同時利用相關工作室對學生進行創新能力的培養;第五、六學期,主要在校內生產性教學工廠(軟件開發中心)或校外實訓基地展開,同時完成畢業設計任務。在開發中心,學生被分成若干個開發小組,開發的項目均是企業實際項目,學生根據自己將來的發展方向和單位的實際需要重點發展以上所述的一個或二個方面的能力,從而完成畢業生從學生到職業開發人員的角色變化,實現“零距離”就業。
積極拓展校外實訓基地,為學生頂崗實習創造機會。完成9個校外實訓基地的建設,與青島軟件園、中科院計算所、中國軟件人才培養辦公室、上海智廣科技公司、北京華育發培訓中心、威海奧博軟件公司、威海農友等軟件企業合作建立實訓基地,已簽署協議并掛牌。
8 加強師資隊伍建設,以“蛙式雙棲”模式為主培養雙師素質教師
在示范院校建設中,師資隊伍的質量直接關系到專業建設的成敗,我們提倡大力加強師資隊伍的職業實踐能力和職業教育教學能力培養培訓。通過合作辦學,利用合作單位的優勢,每年安排3至5名專業骨干教師參加前沿知識與實踐能力的培訓,自2003年開設計算機專業軟件方向以來,通過合作單位培訓20多人次,使軟件專業的教師能夠始終掌握軟件技術的較前沿技術。尤其是示范校建設以來,我們先后選派10名教師赴韓國、新加坡參加了為期20天以上的研修培訓;選派6名教師到國內高校或培訓機構參加專業培訓;選派15名教師到企業進行為期1至2個月的頂崗實踐。同時從周邊軟件公司聘請6名技術主管作為軟件專業的實踐課指導教師。
我們出臺了“雙師”素質教師培養的有關規定,規定教師必須通過“蛙式雙棲”途徑來培養,就是說教師不僅要完成學校的教學任務,同時必須有相關專業的企業的工作經歷,即每年安排教師到企業工作,參與企業的研發項目與管理過程。
[論文關鍵詞]任務驅動 項目導向 案例教學 多元整合
一、引言
軟件工程課程是高職軟件專業類學生的專業核心課,是理論和實踐緊密結合的典型課程,主要培養學生軟件開發能力和項目管理能力。但在實際教學過程中,因為缺乏明確工作任務并涵蓋課程理論知識的綜合項目,學生對軟件工程理論感到十分抽象,對實踐操作也只是囫圇吞棗,根本體會不到軟件工程在企業項目開發中的寶貴作用。
針對軟件工程課程,國內職業教育課程在借鑒外來職業教育課程開發理論的基礎上,也有自己的創新。有一部分學校已經在這方面進行了改革和探索,但大多是單一的、松散地進行,這一狀況的形成,一部分是因為現實客觀條件的制約,另一部分還在于職業教育課程理論研究的不全面、不深入所致,因此重視和加強高等職業教育課程多元整合是提高高職職教課程開發質量的一個中心環節。
本文將以高職軟件工程課程為例,將“任務驅動、項目導向、案例教學”多元整合的創新教學理念引領教學過程,強調動手能力,將工作過程的職業環境融入學習過程中,將學生對知識、職業能力的掌握程度提高到了實踐這一層面,使得學生能真正進入到“在學中做,在做中學”的理想學習環境中。
二、多元整合創新教學理念
軟件工程課程涉及軟件項目計劃、軟件需求分析、軟件設計、軟件測試、軟件配置管理、軟件項目管理等軟件開發過程中的各種問題。浙江商業職業技術學院(以下簡稱“我院”)所在浙江省高新中小企業眾多,發展主要依靠技術進步以及科技來推動,對人才的需求也明顯高移。經調查發現,目前浙江省軟件行業在軟件設計、軟件測試和軟件維護方面的人才缺口大,供不應求。因此,我們將教學重點放在了軟件設計、軟件測試和軟件維護方面。以一個典型、完整、實用的項目“學生選課管理系統”為載體,將軟件工程項目開發中用到的各項工作技能按照工作過程分布階段任務,將項目分解成一個個案例,以任務驅動的方式完成技能的案例教學,同時也體現了工作過程的完整性,將“任務驅動、項目導向、案例教學”多元整合的創新教學理念貫穿于教學過程。
(一)明確工作崗位,分析工作任務,任務驅動學習
任務驅動學習是讓學生完成教師精心設計的培養職業能力的工作任務,構建真正屬于自己的知識和技能,提高分析和解決問題的能力。如何確定軟件工程課程的工作崗位和工作任務是進行任務驅動學習首先要解決的課題。
為此,我們邀請軟件行業專家、專業教師參照國家相關職業標準一起分析、論證軟件工程工作崗位的工作過程和技能要求。在進行分析論證過程中,根據我院所在浙江省高新中小企業發展實際,結合高職學生學習特點,將軟件工程課程培養的人才方向定位在軟件設計、軟件測試和軟件維護三個崗位。我們明確了這三個崗位的典型工作過程,并詳細分析了典型工作過程中的典型工作任務。
1 軟件設計崗位的典型工作過程主要包括軟件項目計劃、軟件需求分析、軟件設計階段。這些工作過程的典型工作任務有:(1)軟件項目計劃包括:軟件項目計劃內容的描述;度量項目的成本、規模、工作量和開發周期;確定項目開發過程模型;制訂軟件項目計劃;(2)軟件需求分析包括:定義需求工程過程模型;采用UML獲取項目需求;采用UML分析項目需求;編寫項目需求規格說明書;(3)軟件設計階段包括:策劃項目的設計階段;應用設計模式,執行系統的架構設計。
2 軟件測試崗位的典型工作過程主要是軟件測試階段。其典型工作任務包括:軟件項目單元測試用例設計;執行軟件項目單元測試;軟件項目功能測試用例設計;執行軟件項目功能測試;軟件項目性能測試用例設計;執行軟件項目性能測試;軟件項目壓力測試用例設計;執行軟件項目壓力測試。
3 軟件維護崗位的典型工作過程主要包括軟件配置階段和軟件項目管理階段。這些工作過程的典型工作任務有:(1)軟件配置階段包括:創建軟件項目配置管理計劃;對軟件項目實施版本控制;(2)軟件項目管理階段包括:對軟件項目進行項目估算;對軟件項目進行風險管理;對軟件項目進行質量管理。
(二)設計教學項目,培養職業能力,項目導向教學
項目導向教學是指通過一項完整的項目工作而進行教學活動的教學方法,它以項目導向、任務驅動,引領教學過程,強調實訓環節,將工作過程的職業環境融入學習過程中,將學生對知識的掌握程度提高到了實踐這一層面,使得學生能真正進入到“在學中做,在做中學”的理想學習環境中,使學生在學習過程中培養工作崗位職業能力。
我院軟件工程課程定位的軟件設計、軟件測試和軟件維護三個崗位有不同的職業能力要求,通過與專家分析論證,我們明確了三個崗位要培養的職業能力:
1 軟件設計崗位。要求要培養的職業能力有:理解、實施軟件項目計劃的能力,編寫、制定軟件項目計劃文檔的能力;獲取、分析軟件項目需求的能力,編寫軟件項目需求分析文檔的能力:理解項目數據模型、項目的架構設計的能力;編寫軟件項目設計規格說明書的能力。
2 軟件測試崗位。要求要培養的職業能力有:設計和實施單元測試用例、功能測試用例、性能測試用例、壓力測試用例的能力;撰寫測試計劃、報告的能力。
3 軟件維護崗位。要求要培養的職業能力有:實施軟件項目配置計劃、管理的能力;實施軟件版本控制的能力;估算項目成本、規模、進度的能力;預測、監控、計劃、管理軟件風險,實施軟件質量保證計劃的能力。
為了與崗位工作過程相適應,能夠在項目教學過程中培養學生的職業能力,在設計教學項目的選擇上我們從以下幾個方面進行了探索:第一,項目必須包含上述崗位的基本工作過程,能夠培養學生職業技能;第二,項目難度適中,符合高職學生的知識、技能結構特點;第三,項目開發周期相對較短,能夠在教學時間內完成;第四,項目內容容易理解,貼近學生經驗,以便學生集中精力完成軟件工程工作過程的學習。
為此,我們精心設計了“學生選課管理系統”來進行項目教學,引入企業真實項目“網上書城”系統來進行模擬訓練。這兩個項目背景高職學生易理解、掌握和操作,并且包含了上述三個工作崗位職業能力。通過幾個學年的教學實踐發現,學生基本能掌握三個工作崗位的職業能力,并根據自己的興趣有所側重,完全達到了我們項目導向教學的目的。
(三)分解教學項目,激發學習興趣,典型案例教學
案例教學實際上是一種“做中學”的形式,在經驗和活動中獲取知識和技能,增進才干。軟件工程案例教學的實踐反映出,案例選擇是否合適、案例運用是否科學將直接影響到案例教學作用的發揮。
對于軟件工程這樣一門理論和實踐都比較注重的課程來說,案例教學就顯得特別重要。我們在案例教學中進行了以下探索和實踐:第一,案例貼近學生生活,刪繁就簡,能適應課程教學時限要求;第二,案例有代表性和針對性,能基本涵蓋基本的工作任務;第三,案例能讓學生參與并易于模仿實踐。如講解軟件項目計劃時,針對學生選課管理系統這個項目,由老師描述項目計劃應該要確定的內容,并引導學生分組討論確定項目中角色一人員責任矩陣,利用甘特圖等工具制訂初步軟件項目計劃。這樣學生不僅僅是去強記那些固定的原理、規則。學生通過案例更深刻地理解了工作過程中需要掌握的技能。
三、多元整合教學的探索與實踐
任務驅動、項目導向、案例教學的教學方法各有特色,如何將這些教學方法整合在一個具體的教學項目中并讓各種教學方法發揮其優點是我們要重點解決的問題。按照軟件工程項目開發中典型的工作過程,我們將“學生選課管理系統”項目分解成一個個的小項目,每一個小項目對應著一個具體工作過程。對每一個小項目我們分成六個步驟進行項目教學:
第一步,確定每一個小項目的工作任務。不同的小項目對應的工作任務不同,有的工作任務比較獨立、花費時間少,可以在—個教學單元中完成,我們稱之為小任務;有的工作任務需要多個教學單元的綜合實踐才能完成,我們稱之為大任務;在教學過程中,對大任務我們又將其分為若干小任務,并在各個小任務完成后進行分析總結,以便學生系統全面地掌握相應的職業能力。
第二步,教師進行案例場景描述,并通過典型案例演示項目中的具體任務。教師先對案例進行場景描述,讓學生明白真實工作過程中這個小項目要做什么。然后通過典型案例的演示讓學生體會到這個小項目要怎么做。
第三步,學生分組討論,明確項目分工。軟件的開發過程是一個團隊合作的過程,將學生從成績、性格、表達能力等方面進行分組,讓不同的學生組合成一個團隊進行項目的開發,既培養學生團隊合作的精神,又讓學生能發揮各自特長,調動學生積極性。在此步驟中,教師可以根據實際教學班組從整體上對團隊的組合進行優化調整,對于一些比較難分工的項目,教師可以對團隊進行指導,幫助團隊進行分工。
第四步,學生根據不同分工完成典型案例的工作任務。通過項目分工,團隊中每個學生有了明確的任務,可以根據教師典型案例的演示進行工作任務的模擬練習。通過這一步,讓學生對工作過程和工作任務有真正的感性認識,有利于培養學生的職業能力。
【摘要】根據高職軟件技術專業人才培養合格率低,培養方式落后的普遍現象,本文以長沙民政職業技術學院軟件技術專業為例,通過對專業課程體系工程化改造的探索與實踐,提出了課程工程化改造的思路與措施,實踐證明效果顯著,具有一定的借鑒意義。
【關鍵詞】軟件技術;專業課程;工程化
信息產業的迅速發展對軟件技術從業人員提出了更多要求;盡管國內高校軟件人才的培養數量不斷攀升,但真正能夠融入軟件開發團隊的人并不多,這嚴重阻礙了我國信息產業的發展。造成這一現象的主要原因是軟件技術相關專業的人才培養模式落后,基礎理論+實驗室上機實踐構成了教學的主體,普遍缺少對學生素質和工程化實踐能力的培養,同時也缺乏工程化[1]實訓必備的教學環境,因此很難培養出符合軟件公司要求的實踐型技能型軟件人才[2]。長沙民政職業技術學院軟件技術專業教師團隊通過對學生職業素質和核心技能培養方面進行了一系列的探索與研究,通過對高職軟件技術專業課程進行工程化改造的探索與實踐,在教學過程中產生良好的教學效果。本文以長沙民政職業技術學院為例對此教學探索實踐活動做了一個闡述與總結。
本院軟件技術專業培養目標通過對面向對象的軟件工程方法、數據庫、.Net/Java/移動應用/WindowsStore/云應用開發技術、軟件測試技術等專業理論基礎知識的學習,使學生掌握程序員及相關崗位必備的理解軟件設計、掌握從事軟件開發先進技術、熟悉測試、實施以及現場管理等專業理論基礎知識,具備良好的職業道德、職業素養,培養德、智、體、美全面發展,心理健康,具有“愛眾親仁”道德精神和“博學篤行”專業品質和較強學習能力、創新能力的高素質技術技能型軟件技術專門人才。本專業教學團隊通過對北京中軟強網、杭州TCS公司、上海漢得信息技術有限公司等數十家公司核心崗位所需人才的能力需求調查分析與研究,發現IT行業人才所需能力主要分為三類:職業核心能力和職業核心素質。其中職業核心能力主要包括軟件分析能力、軟件設計能力、數據庫編程能力、界面編程能力、程序編碼能力、軟件測試能力和系統維護能力;職業核心素質主要包括分析與解決問題能力、自主學習能力、團隊合作能力、表達溝通能力、探索創新能力和抗挫抗壓能力。本專業教學團隊根據調研情況,對課程進行工程化體系[3],為了實現教、學、做一體化的教學目標,在講義或教材的運用上重點闡述項目實施的方法和步驟,按照軟件開發過程對教學內容進行了重構,形成新的“工程化”課程體系。
在本專業教學中采納特色教學法ISAS教學法、項目教學法和榜樣教學法。工程化課程內容組織循序漸進,從簡單到復雜,從實踐到理論,再到實踐不斷循環,使學生對技術的應用能力不斷提升。項目實踐劃分為“四個應用層次”:①驗證性項目:學生在解決一個與教師示范或操作規程中類似的、或更復雜的問題,學以致用,鞏固基礎知識。②訓練性項目:學生借助相關輔助工具完成的項目,主要培養學生的對技能的熟練程度。③設計性項目:設計性項目是在一個訓練單元結束進行的綜合性項目,由學生綜合運用本單元所學理論解決實際的問題,主要培養學生的分析問題、解決問題的能力和必備專業核心技能。④創造性項目:創造性應用層次是在課程結束后給出課程的課程設計題目,由學生綜合運用本課程所學理論解決實際的問題,主要培養學生創新能力和抗壓抗挫的能力。基于工程化的課程體系的改革與實踐成果為培養更多優秀人才和提高專業人才的合格率奠定了堅實的基礎。
通過多年的課程工程化改革的探索與實踐,我院軟件技術專業以就業為導向,緊跟行業的發展方向,依據行業人才的需求特點,全面實施學院與市場對接、學生與社會對接、教學與就業對接的培養機制,加強實習實踐環節,分期分批安排學生到企業實習、實訓,畢業生就業競爭優勢明顯,專業就業對口率顯著提高。
參考文獻
[1]梁艷華,潘銀松,黨慶一.“工程化”的應用型人才培養模式在計算機教學中的應用.四川職業技術學院學報,2015,2.
[2]臧斌宇,趙一嗚,李銀勝,葉德建,朱軍國.際化、創新型軟件工程特色專業建設.中國大學教學,2008(11).
[3]何婕.對高職院校軟件技術專業人才培養模式的研究與實踐.科技信息,2010(15).
作者:唐一韜 單位:長沙民政職業技術學院
關鍵詞: 軟件技術;實訓教學;基本教學任務;實訓能力
0 引言
當前高職教育實訓教學的內容都能以就業為導向來設定,也具有一定的技術綜合性。但是學校與企業聯系不緊密,就導致實訓內容的設置沒有緊隨企業的發展要求。一方面,學校沒有對企業進行真正的了解,沒有對企業人員崗位職業能力、職業知識及素質進行詳細分析;另一方面,學校也沒有請專業領域的專家和企業負責人真正參與到學校的課程設置。盡管許多高職院校與企業開展校企合作,但真正落實到實處的卻不是很多,大多數都只是形式上的一種合作。因此,學校在設置課程時往往滿足不了實際需求。
1 教學內容的確立
1.1 教學內容設置的思路 成立由校企雙方共同組建的專業建設指導委員會,在專業建設指導委員會的指導下,完成課程體系開發任務。吸納企業的技術骨干、行業專家參與課程的開發與建設,充分發揮校企合作理事會和專業指導委員會的作用,發揮企業單位優勢,進行企業行業調研,形成崗位能力和職業崗位任務的分析報告。通過分析在軟件開發過程中各工作崗位需要完成的典型工作任務,確定各軟件崗位的具體能力要求;根據能力要求的復雜程度歸納總結出軟件開發的行動領域,以行動領域為課程體系開發平臺,按照各崗位職業成長規律,將行動領域轉化為學習領域,構建由理論教學課程體系、實踐教學課程體系和人文素質教育課程體系構成的“平臺+模塊”的基于工作過程的課程體系。
1.2 明確專業培養目標和職業方向 專業建設委員會成員通過市場調研,企業崗位分析,確定該專業培養目標,明確該專業職業崗位。軟件技術專業培養目標是:該專業主要培養具有軟件項目開發方法和實踐技能、計算機軟件設計、開發管理及測試、3G手機軟件的開發等工作的高素質技能型專門人才。學生在具有必備的基礎理論知識和專門知識的基礎上,重點掌握程序設計方法,養成良好的編程習慣。精通三、四種平臺及其軟件開發技術,能按軟件文檔的要求進行具體的軟件編碼,并達到一定的熟練程度,能在各種企事業單位從事軟件設計、管理及測試。
1.3 確定人才培養模式 根據上面的分析,確定“行業與專業對接、生產與教學對接、崗位與課程對接”的人才培養模式,按照實際崗位工作要求,選取典型工作項目作為實訓項目;分析項目所需的知識、素質、能力,構建專業核心課程;按照“課程――專項訓練――綜合項目實訓”教學主線,實施“教學做”一體化的課程教學、專項訓練;經過綜合項目實訓、頂崗實習,實現與真實工作崗位的對接。
2 實訓教學內容的設置
下面以山東勞動職業技術學院信息工程與藝術設計系軟件技術專業為例,看看是如何設置和整合實訓教學內容的。
實訓教學內容按基礎實訓階段、專業實訓階段、社會實訓階段循序漸進的方式進行,同時將“雙證”納入教學計劃,突出實訓教學的地位。立足于專業人才培養目標,探討大學生創新創業素質模型內涵,并結合素質模型框架設計出創新創業教育課程體系,為有效地提高學生創新精神和創業能力提供思路和范例。制定完善創業教育課程體系建設。針對所有一年級新生,通過開設創新創業教育課程,培養學生的創業意識;針對二年級學生,以創新創業技能教育為主,對于有創業激情和能力的學生組建創業實習小組;針對三年級學生,結合就業創業指導課開展創業實踐。把創業教育課程和專業課程結合起來,在公共課程和專業課程中滲透創業教育的理念和內容,突出創業素質和實踐操作能力的培養。表1是實訓課程體系結構表。
以《手機軟件開發與實踐》為例,設置課程的實訓內容,達到理論知識、實踐能力、職業素質和綜合應用能力的目標。
使學生通過本課程的學習,達到如圖3的目標。
3 整合多門課程,設計實訓教學內容
軟件技術專業第二學年第一學期,開設了《Java程序設計》、《軟件測試》、《UML建模與設計》、《SQL Server數據庫設計》和《軟件工程》5門課程的內容,到學期末或第二學期伊始,由企業兼職教師和上述各門課程的任課教師一起,共同設計綜合實訓。讓實訓項目既包括上述各門科目的內容,又不孤立,作為一個不可分割的整體。使學生獲得的知識、技能真正滿足職業崗位的要求。將軟件企業中的軟件過程模式、軟件項目組織管理方式引入項目中,將職業工作活動與教學活動融為一體,使學生在經歷情境化的工作活動過程中熟悉軟件工作環境和開發流程,積累實際工作經驗,實現職業能力的發展。
內容整合的原則:①先進性原則。突出軟件技術專業當前先進的專業知識、技術技能及發展趨勢,體現職業與高職教育的發展趨勢,兼顧經濟社會發展的地域差異,各項要求既有前瞻性,又有現實性。②職業性原則。以國家職業標準和職業活動所需能力為依據,充分體現專業知識和專業技能相融合的教學理念,反映高職教育特色和一體化教學改革的整體水平,兼顧學生職業生涯發展需要,科學安排教學內容。
4 總結
按照上述思路對實訓教學內容進行設置和整合之后,可以讓學生在各門課程中學到的相對孤立的知識,運用到一個綜合的實訓項目中,使得學生更加理解各門課程的地位,以及課程之間承上啟下的聯系。對于掌握這些知識的目的更加明確,從而更有利于培養學生的相關技能。
參考文獻:
[1]強昌義.教學內容的選取與整合[J].中國學校體育,2010,03.
[2]張欣波,常雪峰.高等學校數控技術課程教學與實訓內容整合研究[J].中國電力教育,2014(05).
關鍵詞:醫藥類院校;信息技術;項目實踐
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)33-0140-02
Abstract: The computer science in medical colleges and universities has been a weak subject, how to combine the medical knowledge and computer technology, training with computer technology and medicine knowledge of the compound talent, worthy of exploration and practice. This paper proposes the teaching ideas of medical information technology in project practice oriented, based on the analysis of practice of computer professional courses in medical universities into the effect of the project, summed up the selection of training project and project training according to the computer technology and medical subject characteristics, to provide reference for medical information technology teaching in Colleges and universities.
Key words: Medical Colleges and universities; information technology; project practice
1 引言
計算機專業知識更新頻率快,計算機專業學生需要具備較強動手能力才能在就業時占據優勢。如何揚長避短地發揮醫藥類院校計算機專業的特色,尋求新的辦學思路,很多學者已經進行過探索[1][2][3]。郭鳳英[4]根據教育信息化發展情況,針對高等醫藥院校計算機專業教學改革提出了建議,從教學形式、教學內容等方面進行了分析。竇彥玲[5]分析,懂計算機技術的人不懂醫藥知識,了解醫藥知識的人在計算機技術方面沒有深入研究,原因在于計算機專業教學內容和醫藥行業的需求無法真正結合。應該將計算機專業的教學和醫藥行業的具體應用有機結合起來,培養出具備醫藥學背景知識的計算機類復合型人才。孫燕[6]指出醫藥院校的計算機教學存在不足,并根據教學經驗探索了教學內容改革和教學模式改革,促進醫藥院校的計算機教學不斷提高。
本文提出了以項目實踐為主導的醫藥信息技術教學思路,根據醫藥類院校中計算機專業課程融入項目實踐的效果分析,總結出要精選實訓項目,同時根據計算機技術和醫藥學科特性進行項目實訓,為醫藥類院校信息技術教學提供參考。
本文第二部分描述了醫藥類院校計算機專業開展實訓課程意義,第三部分是醫藥類院校計算機專業實訓課程探索,第四部分是結論。
2 醫藥類院校計算機專業開展實訓課程意義
智慧醫療越來越受到關注,它利用先進的物聯網和信息技g,通過打造健康醫療信息服務平臺,讓患者與醫務工作者和醫療機構進行有效溝通,提高醫療管理水平和服務水平。2015年最火熱的一個詞語是“互聯網+”,該詞語出現之前,互聯網醫療領域就已經炙手可熱。阿里巴巴集團和阿里健康信息技術有限公司達成合作意向,康恩貝以2.33億元收購浙江珍誠醫藥4230萬股股份,收購完成后將控股珍誠醫藥,意味著康恩貝全面入局醫藥電商。這充分說明醫藥+信息技術將會越來越重要。所以,探索以項目實踐為主導的醫藥信息技術課程教學體系,構建理論和實踐結合的課程教學模式,加強對醫藥信息技術方向學生的動手能力培養,提高他們的操作能力和項目實戰能力,意義深遠。
醫藥類院校計算機專業開展實訓課程意義重大。計算機專業對學生的實際動手能力要求高,需要多實踐。學生的課程比較分散,學完程序設計語言,數據結構,數據庫等課程后,不一定明白各門課程的搭配使用。理論知識學完后,需要進行大量的實踐,通過實訓項目進行鍛煉,提高靈活運用知識的能力。在項目實訓教學時,學生參與實訓項目進行實踐,通過實踐來深刻理解書本理論知識。學生在進行項目實訓時,首先是劃分成小組,選擇適合小組水平的具體實訓項目,根據實訓項目的要求,學生進行可行性分析,需求分析,總體設計,詳細設計,實施,把書上的原理運用到項目實訓中,學生們的分析能力、解決問題能力得到提高。實訓項目培養學生們團隊合作意識,相互合作完成更大的任務。每個實訓項目以組為單位完成實訓具體任務,組員之間相互學習、揚長避短,共同提高。
3 醫藥類院校計算機專業實訓課程探索
醫藥類院校在培養醫藥知識與計算機技術的復合人才時,需要精選實訓項目,既要滿足社會實際需求,又要兼顧學生們的實際水平。例如浙江中醫藥大學計算機專業依托學校醫藥背景,在醫院門診和住院系統、醫療儀器軟件開發、和移動手機應用項目等方向展開項目實訓,形成了與理論教學配套的課內實驗、項目實踐、畢業實習和畢業設計等實踐教學體系。
第一,通過網絡資料搜集、醫院調研和醫藥企業走訪的形式,搜集醫藥類信息技術實踐項目資源,并加工成適合學生水平的實踐項目庫。經過綜合評估,遴選出20個實踐項目: 醫院住院信息管理系統,醫院門診信息管理系統,掛號預約管理系統,中醫臨床診療支持系統,臨床路徑設計系統,健康養生微信平臺,藥店管理系統,基于手機二維碼的診療信息系統,健康隨手記移動軟件,醫院信息系統,方劑分析系統,高血脂癥自測試及食療系統,藥品采購管理系統,導醫咨詢系統,醫院門診叫號系統,電子病歷和健康分析系統,常見病輔助食療系統,藥物相關作用分析系統,在線問診手機軟件,醫藥知識大百科系統,每個項目都有簡介,需要掌握的技能,難度等級,便于學生參考選擇。
第二,合理評估參與項目實踐的學生水平,為他們的項目實踐制定科學的實訓計劃,讓他們對項目實訓充滿興趣,并能有效提高實際動手能力。
例如,某班級選擇了醫院信息系統的實踐項目。指導老師會評估該班級學生的實際能力,指導他們評選項目經理、選出技術總監,以4-5 名學生為一組,每個小組完成醫院信息系統一個子功能模塊,然后集成為醫院信息系統。學生們從軟件可行性分析、軟件需求分析、軟件概要設計、軟件詳細設計、軟件編碼、軟件測試以及軟件文檔書寫等體驗了醫院信息系統項目開發過程,
第三.對參與項目實踐的學生成果進行評測和點評,使得項目實踐效果更優。醫院信息系統開發完成后,需要進行成果演示和答辯,由3位相關課程老師組成評委進行點評和分析,并給出合理建議。學生們體驗了軟件開發過程,同時也培養了團隊合作精神,項目實戰能力大大提高。當學生們完成項目要求內容并進行演示和答辯后,取得老師的肯定,也激發了學生們學習熱情。
4 結論
本文提出了以項目實踐為主導的醫藥信息技術教學思路,根據醫藥類院校中計算機專業課程融入項目實踐的效果分析,總結出要精選實訓項目,同時根據計算機技術和醫藥學科特性進行項目實訓,為醫藥類院校信息技術教學提供參考。實訓課程設置和實踐項目的選擇還有需要改進的地方,例如需要根據社會實際需求經常更新實訓項目內容,κ笛迪钅拷行分類評估等。
參考文獻:
[1] 馬亮,王海舜,李文勝. 中醫院校計算機專業實訓課程改革研究[J]. 浙江中醫藥大學學報,2014,38(4):481-483.
[2] 沈俊輝,馬星光, 劉仁權.中醫藥院校計算機教學改革的探索與實踐[J].環球中醫藥, 2010(2).
[3] 閆朝升,李丹,李巍巍,等.高等中醫藥院校計算機基礎教育課程體系改革的探討[J].齊齊哈爾醫學院學報, 2009(4).
[4] 郭鳳英,韓愛慶,張未未,等. 高等中醫藥院校計算機課程改革的思考[J].中國教育技術裝備, 2013(3).
摘 要:本文提出了一種全新的軟件項目開發綜合實訓模式,該模式以實際項目貫穿始終,以軟件工程思想貫穿全線,圍繞學生完成一系列遞進的典型工作任務來組織實訓內容,覆蓋不同課程串聯不同知識。該模式是工作過程導向在軟件技術實訓教學上的運用,對當今高職院校進行課程改革具有重要的參考價值。
關鍵詞:工作過程導向;學習情境;典型工作任務;項目開發;綜合實訓
中圖分類號:G642 文獻標識碼:B
1 實訓教學的現狀和對策
我院的軟件技術Java開發方向主干課程的設置包括:“Java程序設計”、“數據庫基礎及應用”、“JSP程序設計”、“UML基礎與Rose建模”、“軟件工程”、“軟件測試”、“J2EE技術”。在每門課程的最后階段都安排了課程實訓,在此過程中,學生以個體或小組形式完成一個相對真實的工作任務。課程實訓可以訓練學生將該課程中不同的知識和技能串聯起來,加以綜合應用解決實際問題。由于各門課程相對獨立,即使完成以上所有課程的課程實訓,學生還是難以參與軟件開發的全過程,難以獲得對開發過程的整體把握。即使進入專業學習結束后的畢業設計階段,由于畢業設計教學環節與大學生畢業就業成為近年來我國高校的一個非常突出的矛盾,尤其是高職高專院校的畢業生面臨著嚴峻的就業形勢,許多學生在最后一個學期幾乎都在外出找工作,提前就業上崗。高職高專院校本來就學制短,畢業設計教學環節形同虛設,嚴重影響了正常畢業設計教學環節的實施和畢業生的水平。
在近幾年的專業建設和課程改革中,我們越來越認識到培養學生的軟件開發能力、團隊合作能力、工程應用能力的重要性。為此,我們專門針對高年級學生設計和開發了工作過程導向的、具有專業總結和綜合性質的項目開發綜合實訓,通過項目實踐開闊學生視野,鍛煉學生的團隊意識和工程意識,全面培養學生的職業素養和工程應用能力。
2 基于工作過程的高職軟件項目開發綜合實訓設計思路
基于工作過程的高職軟件項目開發綜合實訓設計思路包含“兩個貫穿一個分解一個覆蓋”:即“工程項目貫穿”、“軟件工程思想貫穿”、“典型工作任務分解”和“不同課程覆蓋”。
2.1 工程項目貫穿
“工程項目貫穿”,即以一個工程項目全線貫穿于整個實訓過程,學生從步入實訓基地開始接受項目,到最后提交一個按照操作程序、操作規范完成的,滿足一定質量標準的開發成果。在確定項目時,應該把握好以下兩個原則:
第一,實訓項目應具有一定的應用價值和實際意義。實訓項目最好以實際項目為背景,或者直接就是從實際項目提煉而來,與企業實際生產過程或現實商業經營活動有直接的關系。這樣的項目能培養學生的實戰經驗,極大地激發學生的積極性。但是要注意,業務流程太專業太復雜的項目不適于拿來作為全程的實訓項目,因為這類項目在前期的業務分析和理解上將耗費太多的時間和精力,不利于后續工作的展開。
第二,要根據教學內容和專業培養目標確定項目內容與項目難度。高職軟件技術Java開發方向旨在為社會輸送合格的熟練的Java程序員,而J2EE編程是Java程序員追求的最高目標,所以我們確定的實訓項目具有總結性和綜合性,并具有一定的挑戰性。經過前導課程“J2EE技術”的學習和實踐,學生已經具備了用Servlet+JSP+JaveBean (EJB)或struts框架來實現MVC架構的能力,在實訓項目中我們鼓勵學生整合Struts、Hibernate和Spring三個框架,綜合運用J2EE的組件、框架開發技術,開發一個滿足J2EE架構的多層的企業應用。
2.2 軟件工程思想貫穿
在傳統的“軟件工程”教學中,軟件工程是一門獨立的理論性較強的課程,學生們缺乏實戰經驗,難以在參與軟件開發的全過程中獲得感性體會,理解軟件工程的精髓。
為了培養軟件工程意識,使工程化思想成為學生從事軟件開發工作的行動指南,我們將軟件工程思想貫穿于整個綜合實訓的始終。綜合實訓以成熟的軟件開發模型為基礎,以具有一定應用價值和實際意義的項目為背景,學生以開發團隊的形式,按照軟件開發流程,在規定的時間點完成指定的任務,經歷需求分析、建模、設計、編碼、測試、部署的軟件工程全過程。綜合實訓模擬企業運作機制,模擬企業中實際存在的項目壓力和工作壓力,模擬真實企業開發環境,以項目的進度檢查作為監控,以項目開發成果作為最后的考評。學生在實訓過程中,都有機會承擔項目經理、設計人員、編碼人員、測試人員等全部或部分崗位角色的職責,學生的綜合能力得到極大的提高。
2.3 典型工作任務分解
典型工作任務是“基于工作過程”實訓課程開發的精髓。所謂“任務”就是要求學生做一件事,重要的是,這件事是按實際工作的要求來操作的,包括操作程序、操作規范、質量標準等。學生在完成各項“任務”后,會呈現出不同的“結果”。這個結果是非標準答案的,即每個學生或每個團隊的作品可以不一樣,對作品的評價不是簡單的對與錯,而很可能是好與差。而“典型工作任務”能呈現出職業的典型的工作內容和形式,在整個企業的工作大環境里具有重要的功能和意義。
在工作過程導向設計原則的指導下,結合軟件行業的崗位需求,通過分析完成軟件開發需要完成哪些典型工作任務,我們設計了基于工作過程的實訓流程。該流程以一個軟件項目貫穿始終,將整個軟件開發過程分解為一系列遞進的實訓情境,在每個實訓情境要求學生完成一個獨立的工作任務,完成所有的實訓情境就完成了整個軟件項目的開發。
基于工作過程的項目開發綜合實訓流程如圖1所示,整個實訓由遞進的6個實訓情境構成(水平方向),它們對應的工作任務依次為“需求分析”、“搭建開發環境”、“設計”、“編碼”、“集成和測試”、“項目部署”。垂直方向則反映了為完成某項工作任務所采取的步驟和要提交的工作成果。
圖1 基于工作過程的軟件項目開發綜合實訓流程
2.4 不同課程覆蓋
按照工作過程導向設計原則,將整個軟件開發過程分解為遞進的6個實訓情境,每個實訓情境覆蓋了不同的課程內容。表1列出了每個實訓情境對七門主干課程的覆蓋情況,可以看到,它徹底地克服了傳統的課程體系只重視每門課程自身的實驗,缺乏覆蓋不同課程,串聯不同知識和技能的綜合性實驗的重大缺陷,它使得相對獨立的各門課程整合在一起,使整個實訓成為一個有機的整體。這樣的訓練能使學生將以前的所學融會貫通,能有效地培養學生的綜合應用能力和創新能力。
3 基于工作過程的高職軟件項目開發綜合實訓的實施
3.1 實訓項目舉例
依照確定項目的兩個原則,我們把為我院開發“教學資源管理系統”定為綜合實訓的第一個項目,要求運用Struts、Hibernate和Spring三個框架,開發一個滿足J2EE架構的多層的企業應用。
該項目的業務需求是“主要完成對多媒體課件和各種多媒體素材資源的管理,方便對各種電子教學資源進行分類維護,包括瀏覽,查詢,下載;為教師提供一個方便快捷的課件渠道,把制作的課件或搜集的素材上載到該系統,實現資源共享。本系統分三級用戶:系統管理員,教師用戶、普通用戶(包括學生);包括以下四個方面的功能:普通用戶資源瀏覽和下載;普通用戶資源檢索;教師用戶資源上載;管理員系統維護”。
項目開始時,教師只給出較為粗略的業務需求,給學生留有足夠的發揮空間。因為“教學資源管理系統”就是為學生和教師服務,非常貼近學生的學習生活,理解起來沒有任何障礙。至于界面做到什么樣子,功能做到何種程度,留給學生在撰寫詳細的需求分析報告時去確定,教師需要把關的是工作量和技術難度,不能太簡單而達不到實訓的效果,也不能太難無法實現而挫傷學生的積極性。
3.2 實訓組織方式
實訓采用4個人一組,每人負責一個方面的功能開發,每組設一個項目組長,項目組長除負責一個方面的功能模塊開發外,還負責各模塊集成。由項目組共同提交一份需求分析報告。個人一旦選擇某方面的功能開發,就要全權負責該部分的設計、編碼和單元測試。此外,在測試情境中,開發小組進行角色轉換,變成測試小組,選擇別的小組開發的軟件進行測試。
3.3 實訓進度安排和任務要求
本綜合實訓歷時一個月,共72學時(4周*18課時),進度安排如表2所示,各院校可根據自己的情況作適當調整或根據需要增加學時。下面是每個情境的具體步驟、任務要求的詳細描述。
3.3.1 情境1:需求分析
本情境的典型工作任務是撰寫詳細的需求分析報告。
(1) 首先老師對實訓項目提出業務需求,講解應用的環境、功能要求、技術要求以及實訓組織方式。
(2) 實訓小組組成,組合出每個小組的成員,選出項目小組長。
(3) 每個小組對功能模塊分工分配,確定每個人所承擔的功能模塊。
(4) 各小組討論需求分析,每個人撰寫模塊的詳細需求分析報告。
本情境結束后,要完成以下任務:
老師要匯總出小組劃分、成員分工;
項目小組提交一份詳細的需求分析報告。
3.3.2 情境2:搭建開發環境
本情境的典型工作任務是搭建J2EE開發環境。我們選擇的開發環境為:
操作系統:Windows NT /Windows XP
Java 平臺:JDK1.6 以上
服務器:JBOSS 4.0.4
數據庫服務器:MySQL 5.0
開發平臺:MyEclipse 5.5
建模工具: Rational Rose
單元測試:Junit
功能測試:手工測試
(1) 首先老師對開發環境進行講解;
(2) 學生在自己的機器上完成以下任務:安裝JDK環境、安裝JBOSS服務器、安裝MySQL服務器、安裝MyEclipse集成開發工具、安裝Rational Rose建模工具、安裝Junit。
本情境結束后,要完成以下任務:
1) 學生在自己的機器上完成環境的搭建和測試。
3.3.3 情境3:設計
本情境的典型工作任務是撰寫詳細設計文檔。
(1) 老師對需求分析進行點評,指出其中的問題和修改意見。
(2) 老師以其中某個模塊為例,講解所使用技術和技術線路。
(3) 進行模塊設計和數據庫庫表設計,模塊之間接口的定義,數據庫中測試數據的準備。
本情境結束后,學生要完成的任務:
對需求分析報告進行修改和完善。
撰寫詳細設計文檔,包括類圖和時序圖。
詳細設計包括以下組件的設計:模型實現類和DAO組件;業務邏輯組件;MVC層組件;表現層組件
撰寫數據庫表的設計以及測試數據,數據庫表設計包括庫表名稱、字段定義,測試數據以表格的方式形成。
3.3.4 情境4:編碼
本情境的典型工作任務是依照設計進行代碼編寫,以及單元測試。
老師對學生的模塊設計和庫表設計進行點評,指出其中的問題和修改意見。
在編碼過程中,老師要對學生進行指導,幫助解決問題。學生之間應互相配合,及時修正模塊設計中的錯誤。
本情境學生要完成的任務包括:
修訂詳細模塊設計和數據庫庫表設計;
用測試數據填充數據庫;
制定編碼進度;
模型實現類和DAO組件的編碼和測試;
業務邏輯組件的編碼和測試;
MVC層組件的編碼和測試;
表現層組件的編碼和測試。
3.3.5 情境5:系統集成和測試
本情境的典型工作任務是小組模塊集成和功能測試。
(1) 小組成員之間相互配合,完成整個系統的集成。
(2) 選擇另一個小組開發的系統,根據他們的需求分析報告,撰寫測試用例。
(3) 進行功能測試并提交測試報告。
本情境完成,學生要完成以下任務:
將小組內各成員開發的模塊進行系統集成;
選擇另一個小組開發的系統撰寫測試用例,進行功能測試,并提交測試報告。
3.3.6 情境6:項目
本情境的典型工作任務是部署項目、提交成果。
(1) 學生將實訓成果進行演示
(2) 學生提交可以部署的包和按工程組織的源代碼
(3) 老師對各個項目小組的成果進行考評。
(4) 老師對整個實訓進行點評。
本情境完成,學生要提交以下程序和文檔:
源代碼和可以部署的包
實訓報告
4 新的綜合實訓模式對教師提出了更高的要求
基于工作過程的高職項目開發綜合實訓,覆蓋面廣,綜合性和工程實踐性強,要求按照軟件工程的要求,指導學生進行軟件項目開發實訓,因而對指導教師的教學素養、主導作用、工程實踐經歷提出了更高的要求。為此我們組建了一支以具有工程實踐經驗的核心教師為首,由各科任課教師組成的教師團隊。進入實訓項目的教師必須首先對項目本身有足夠的認識和理解,并且親自做過,才能在其參與指導的實訓情境中指導學生完成該情境所指定的典型工作任務。而核心教師經歷過企業軟件開發項目的全過程,熟悉軟件開發項目的管理過程,熟悉軟件開發程序的設計規范、調試過程、軟件質量測試方法,以“項目經理”的身份指導學生進行軟件開發實訓,其關鍵作用是不可置疑的。
同時,新的綜合實訓模式必須有新的教學觀念、講授模式和管理模式。在實訓過程中絕對不能再是“教師講授學生聽”,而是以學生為主體,以任務為驅動,教師重點放在講解每個任務的需求,完成該任務所要采用的知識、方法、工具和步驟,然后由學生自己進行分析、建立問題模型,自己掌握開發的進程。教師則更象一位項目經理,控制項目進度,評定軟件質量。
5 結束語
基于工作過程的高職項目開發綜合實訓,是一種全新的軟件項目開發綜合實訓模式。該模式以工程項目貫穿始終,以軟件工程思想貫穿全線,圍繞學生完成一系列遞進的典型工作任務來組織實訓內容,覆蓋不同課程串聯不同知識。該模式是工作過程導向在軟件技術實訓教學上的運用,對當今高職院校進行課程改革具有重要的參考價值,同時對指導教師提出了更高的要求。
參考文獻
關鍵詞:畢業實踐;軟件實訓;大學生就業
中圖分類號:G642 文獻標識碼:B
1引言
當前高校普遍采用“3+1”模式教學,目的是提高大學生的實踐能力,讓大學生通過實習提高實踐和動手能力,以達到企業需要的實際應用能力。但據我們這幾年的實際調研發現,絕大部分軟件專業畢業生由于知識和實踐技能不足,無法找到合適的實習崗位,而軟件公司基本不愿意花費人力物力培訓大學生,而是需要有工作經驗的人能立即進入工作狀態,為公司創造效益。
在將近八個月的畢業實踐期間內,部分同學由于找不到實習單位,無所事事,荒廢了提高自己的關鍵時機,將所學的專業知識也忘得所剩無幾。另一部分同學在無法找到合適實習單位的情況下,選擇參加各種培訓機構,而往往項目實際開發能力的提高也十分有限,實際效果與宣傳相差太遠。
如何真正解決以上問題,是我們義不容辭的責任。我們學院專門成立了工程實踐中心,從財政預算上向實踐教學傾斜,并下設各個專業的工程實踐中心,高薪聘請在公司工作多年資深的工程技術專家擔任實踐中心負責人,實行科學教育和工程教育并重的教學理念。
2問題的分析和解決對策
軟件大學生無法成功就業的根本原因就是欠缺實際開發項目的能力,再加上基本理論知識掌握得不夠扎實,就無法通過企業的第一輪筆試關,即使通過筆試,在第二輪面試中,因為沒有熟練的項目實際開發和解決問題的能力,無法回答企業技術主管的各種實際問題,最終難免被淘汰。
學院充分認識到畢業實踐在本科生培養中的重要性,專門成立了學院工程實踐中心,全面負責大學生實際能力的培養,在加強平時實驗和專業實踐教學的基礎上著重改革畢業實踐,校企合作,打造真正的畢業實踐基地。
以軟件工程實踐中心為例,在畢業實踐設計環節上進行了全面的改革和創新。專門安排八個月的畢業實訓環節、利用大連軟件外包城市的有力條件、與多家知名軟件公司合作,成立了校內軟件開發實訓中心,在實訓課程體系、實訓項目選擇、過程管理等方面完全模擬軟件公司的實際工作環境和氛圍,高薪聘任著名的系統架構師、項目經理擔任實訓負責人,按照企業的要求培養畢業生,對全院畢業生開放,自由選擇實訓方向(目前提供J2EE、、嵌入式、數據庫管理),全程免費。剛開始時,學生傾向校外培訓,報名人數較少,現在由于效果顯著,知名度不斷提高,選擇在校內實訓中心實習的學生越來越多。
3畢業實踐內容體系建設
軟件專業畢業生不能滿足企業需求的首個原因是所學知識落后于企業使用的最新知識和技能。據我們調查,大連高校軟件專業方向課在Java方向只講授到J2EE基礎,甚至有的只簡單講授了JSP,而企業已經全面使用了SSHA和RIA軟件開發框架體系。學生面試時被問起是否使用Struts、Hibernate、Spring和AJAX時,頭腦中簡直沒有這些概念,使用經驗更無從談起。
在實訓課程體系設計中,我們全面采用與企業銜接的最新軟件技術和架構,如Struts2、Spring、Hibernate、AJAX(熟稱SSHA)、SOA技術(Web Servie, SOAP, UDDI),尤其是最近兩年逐漸興起的WEB2.0、RIA開發技術,如DWR、DOJO、EXT JS和Flex等以及整合服務器端技術和客戶端技術的方法,這些已基本超越大連絕大多數培訓機構的內容,使我們的學生站在了軟件開發技術的前沿。
實訓軟件平臺全面采用企業最流行的產品,如數據庫使用Oracle、MySQL、DB2等,應用服務器使用JBoss、WebLogic、WebSphere、GlassFish和Tomcat。開發工具選擇大多數企業普遍使用的Eclipse、MyEclipse、NetBean、JDeveloper等開源產品。
畢業實踐中,學習和掌握這些最新的技術和框架與課堂學習有所不同,我們是在項目開發過程中邊學邊練邊使用,重在自學,重在應用,每個技術都在項目中大量使用,保證同學們都能熟練精通。由于反復使用這些技術,同學們不像理論學習那樣容易遺忘,他們基本能在不參考資料的情況下熟練編寫相應的軟件代碼,這正是企業技術人員必備的基本能力之一。
4實踐項目的選擇和開發策略
以往畢業實踐的課題都是學生成績管理、圖書管理、在線購物等簡單應用項目,脫離企業實際,應用范圍窄,實用價值小。
我們的畢業實踐選題是針對大多數軟件公司的熱點應用領域,選擇已開發完畢的實際項目來開發,實用性強,開發工作量大,能真正鍛煉學生的軟件開發能力和業務分析能力。經過認真篩選,確定了辦公自動化(OA)、通用進銷存、CRM、簡化ERP、連鎖店經營管理、物流配送管理等幾個實際項目,學生們在開發過程中參觀了實際企業的運作,如物流公司、服裝連鎖店等,實地了解軟件在具體業務中的使用流程。
我們也利用各種渠道與各行業企業聯系,免費為企業開發應用軟件,企業也愿意與我們合作,因為不用支付昂貴的開發費用。如我們為大連今冶機械有限公司開發了外貿CRM管理系統,由項目經理帶領15個實訓同學,開發為期14個月,已經投入試運行,取得了企業的信任。今年初與大連北市汽車配件城合作開發大連汽車配件網,其他項目也在進一步的洽談中。同時學院自己的所有項目完全由實踐中心自主開發,目的就是鍛煉學生,實現學院的無紙化辦公。
在開發策略上,所有項目采用團隊開發模式,每10~15人為一組,獨立承擔項目的分析設計和編程工作。在團隊開發軟件過程中,學生的團隊合作能力、溝通和交流能力、工作的分配和調節能力、工作目標的確認和跟蹤能力得到提高,這些是合格員工必需的,也恰恰是公司最看重而學生較欠缺的能力。在軟件開發過程中,項目經理不斷針對實際問題言傳身教,講解合作的策略、溝通的技巧,學生在潛移默化中提高了這些能力。
熟練運用軟件團隊開發工具也是軟件工程師必須具備的能力之一,這在理論教學中涉及很少,學生欠缺較明顯。在實訓項目開發中,全面使用企業流行的團隊開發工具產品,如CVS、Subvision、VSS等,所有學生都熟練掌握這些工具的使用,完成了項目的共享、更新、提交和版本管理等,為將來到軟件公司工作打下了良好的基礎。
5畢業實踐過程管理體系
管理出效益。沒有嚴格的管理,即使知識體系再先進,也無法保證每個開發小組都能按計劃完成各自的開發任務。現在的大學生雖然對新知識渴望,對新技術興趣濃厚,但做事普遍比較散漫,缺乏責任心,隨意性嚴重,這些都是工作中的大忌,不及早改正這些不良習慣和作風,必將在今后的工作中釀成大錯。
我們在實訓過程中完全實行公司化管理,為每個準員工配備工作卡,上下班使用電子指紋打卡器打卡,杜絕代考勤,將之與學分進行掛鉤,違反紀律就得不到相應的學分,嚴重的延緩畢業,甚至得不到學位證書。
項目經理為每個小組制定詳盡的日、周、月開發計劃和進度,每個小組長對經理負責。每天小組開會,總結項目遇到的問題,并布置開發任務,每個人都要求仔細填寫每日工作記錄表,并匯總遇到的問題。每周由項目經理召開總結會議,小組長匯報各自小組的開發進度、遇到的問題、解決方案、新思路新建議,并形成標準報告。這些環節和措施極大地鍛煉了學生分析問題、解決問題、獨立鉆研、工作總結、語言表達等綜合能力,而這些技能是在課堂教學中無法學習和掌握的,必須在長時間的工作實踐中才能領悟并潛移默化地掌握。
質量是產品的生命。當今軟件系統因為功能復雜,系統結構龐大,團隊開發,客戶要求高,開發時間短,因此對質量的要求更加嚴格。軟件公司普遍成立了QA部門,專門負責軟件測試、質量評估,對系統中的Bug進行檢測。而在校學生普遍缺乏質量意識,為提高進度和工作量,編寫的軟件穩定性極差,初期階段對此根本不介意,這也是歷屆實訓在開始階段一定會遇到的問題。
在軟件實訓中,專門強化學生對軟件質量的責任感。項目經理和QA成員每天對各小組的項目進行測試,每周編寫測試報告,統計Bug出現率,并進行學分扣除,每周召開質量會議,不斷地灌輸質量意識,提高每個學生對質量的重視程度。在項目的考核中,也把軟件質量作為第一指標,加大質量在考核中的份額。經過長時間的教育、引導、督促和考核,到實訓結束時,每個同學的質量意識都有了質的飛躍,有可能影響他們的一生。
軟件成功部署后,所有開發小組召開項目總結大會,對開發項目進行綜合評比,從文檔編寫、架構設計、代碼規范、團隊合作等方面進行全面考核,每個成員編寫項目開發報告,總結在實訓中的經驗和教訓、成功與不足。從每個同學發自內心的報告和發言中,我們真切地感受到他們確實成長了,穩重了,成熟了,責任心強了,經驗豐富了。
6改革成果和思考
經過我們精心打造的畢業生,得到了軟件公司的青睞,每期實訓生近70%能進入軟件公司工作,其中20%能進入較知名的軟件公司,這在目前經濟危機企業普遍減少用人數量的情況下是難能可貴的。用人單位普遍反映這些學生知識和技能嫻熟,到企業能很快適應,在質量意識、團隊合作、做事認真、工作細致、責任心強等諸多方面都符合企業的要求,有幾名同學剛工作1~2年就成為公司的主力,這些都說明我們的培養模式是正確的。
模擬軟件公司不如真正的軟件公司,我們計劃成立軟件開發公司,以零利潤接攬實際的國內和外包軟件項目。因為面臨無法按時交付受處罰的風險,強迫我們更要有強烈的責任意識,這是模擬軟件項目永遠達不到的。我們已經和多家軟件公司接洽了很長時間,他們也非常愿意把合作初期的非關鍵項目外包給我們,為他們節省巨大成本,同時鍛煉畢業生的能力。
近三年畢業實踐環節的改革和創新證明,加強畢業實踐對提高大學生就業起著非常關鍵的作用。大學生經過系統的畢業實踐鍛煉,自信心大大增強,就業競爭力提高迅速,能迅速地適應企業的要求,融入到實際項目開發中。
參考文獻:
[1] 龔威,王贏,謝媛媛. 科學與工程教育并重的新型IT人才培養模式[J]. 計算機教育,2009(9):136-138.
[2] 趙國冬. 實驗創新與大學生創新能力的培養[J]. 計算機教育,2009(9):30-31.
[4] 劉書勇,張國印,武俊鵬. 創新型人才培養體系研究與實踐[J]. 計算機教育,2009(8):14-16.
[5] 邱欽倫. 對軟件企業招聘應屆畢業生的思考[J]. 計算機教育,2009(9):23-25.
[6] 馬潤成. 計算機專業大學生供需現狀、就業形勢和工作對策[J]. 計算機教育,2005(10):68-70.
關鍵詞:軟件外包服務;課程體系;軟件專業;高職;工作過程
文章編號:1672-5913(2010)08-0064-04
中圖分類號:G642
文獻標識碼:A
隨著信息技術的日新月異,傳統的以知識傳授為主要特征的學科課程模式已不能適應社會的需求。一方面軟件多層次高質量人才匱乏,另一方面軟件專業畢業生面臨極大就業壓力,相當一部分學生無法在軟件企業找到合適工作崗位。通過仔細分析發現,問題出現在目前既有的軟件人才培養目標、方向、模式與軟件行業各崗位對人才的職業能力需求存在偏差,而引起偏差的原因又直接是軟件專業課程體系的設置不能滿足軟件企業對具體崗位人才的知識素養與職業能力的需求。怎樣才能培養滿足市場需要的軟件人才,尤其是急需的中低端軟件藍領,結論是必須采取多種途徑,“舉校企合作之旗、走工學結合之路”,最終必然要顛覆傳統的軟件課程體系,重新構建以工作過程為導向的軟件專業課程體系。
1 校企合作,開展軟件外包服務
1,1目的和意義
“舉校企合作之旗、走工學結合之路”是高等職業教育深化改革的方向,對推進高職院校人才培養模式的改革起到關鍵作用。現有研究主要集中于實訓基地建設、訂單式培養、師資隊伍建設等方面。本文借鑒國外工學結合培養模式的成功經驗,結合我市高職軟件專業教學改革與發展的實際情況,以校企合作開展軟件外包服務為切入點,研究和促進軟件專業工學結合課程體系的建設。該研究有助于從根本上解決軟件教學理論與企業需求脫節問題,開辟校企合作的新空間,從根本上提高軟件教學與軟件人才的質量培養。
1,2載體
采用校企共建方式,組建軟件外包工作室,學校提供專門的場所并配置專用硬件設備,在與企業簽訂保密協議和知識產權歸屬協議的框架下,從企業引入軟件開發平臺、軟件開發規范和各種軟件開發文檔,即軟件生產線,實現與企業的資源共享,開展工學結合的培養模式改革,分步實施,逐漸完善,以達到構建基于工作任務為中心的軟件課程體系的目的。
1,3管理
1,3,1組織機構及工作職責
采用分層分組管理的組織結構,學校負責場地、設備等資產管理和校企合作事宜,系部負責中心日常運作和學生的選拔,外包服務中心負責學生的組織,將學生分成若干項目組,一個項目組承擔一個項目的開發,項目經理由教師和企業技術人員共同組成。教師負責項目組織、實施與管理、主要的技術開發、協調企業技術人員;企業技術人員負責進行項目管理和業務指導。
1,3,2學生成員選拔與考核
項目團隊中學生成員主要從軟件專業二年級學生中選拔,參考其一年級的專業成績,經考核后進入候選庫。項目經理根據項目要求,從候選庫中選擇合適的學生組建項目團隊,對學生進行開發規范和基本素質的培訓,然后投入到項目開發的工作中。項目經理再根據其開發工作量、技能水平、職業素質等,每學期為每個學生成員評定一次成績。對一些綜合素質較高、責任心較強的團隊成員,經過嚴格篩選后推薦到企業實習。
2 基于工作過程的軟件課程體系構建過程
通過軟件外包中心業務的開展,分析軟件企業實際的工作過程,根據工作過程深入企業調研,有針對性地了解高職學生能勝任的職業崗位以及崗位所對應的工作任務和職業能力,與企業技術專家共同制定課程體系。具體過程如下。
2,1學生勝任的職業崗位群及實際工作過程分析
在我院軟件外包中心成立之初,計算機系即與重慶港澳大家軟件有限公司、重慶亞德科技股份有限公司等幾家軟件公司簽訂合作保密協議,開展外包業務。首先由公司的項目經理為軟件外包中心的老師和學生提供開發平臺,然后提出具體的開發項目,外包中心老師和學生在公司技術人員的指導下,按照給出的項目需求說明書進行項目的概要設計與詳細設計,然后進行編碼,分模塊進行測試。在完成幾個具體的外包項目之后,學生逐漸了解了企業的實際工作過程,即需求分析-設計-編碼-測試-維護。但經過仔細地分析、歸納與總結,結論是:高職學生所能勝任的是計算機軟件測試與研發崗位群,能具體參與的工作過程為設計-編碼-測試-維護。
2,2學生勝任職業崗位及企業需求量分析
在確定了高職學生能勝任的計算機軟件測試與研發崗位群后,組建項目調研小組,通過調查問卷、與企業技術專家交談、電話訪問等方式走訪30余家企業單位,對畢業生初次就業崗位、畢業生一年內崗位變動情況、崗位群工作任務、崗位群工作任務評價體系等進行調研,結論是:計算機軟件專業學生在企業能勝任的職業崗位需求比例如下:軟件技術文員占5%,Web軟件程序員占40%,工業控制軟件程序員占30%,軟件產品測試員占20%,其他崗位占5%。
2,3學生勝任職業崗位群典型工作任務分析
在分析企業調研結果后,我院計算機系曾先后召開軟件核心課程研討會,與企業專家共同探討各職業崗位的典型工作任務,具體如下。
(1)軟件技術文員:
使用Windows操作系統、使用互聯網、繪制圖形、編寫軟件文檔。
(2)Web程序員:軟件需求分析、網站規劃、網站腳本編寫、網頁與數據庫關聯。
(3)工業控制軟件程序員:軟件需求分析、應用組態軟件、開發高級串口通訊、開發TCP/IP通訊、二次開發CAD礦圖、二次開發綜合布線施工圖。
(4)軟件產品測試員:單元測試、集成測試、確認測試、編寫測試報告。
3
基于工作過程的軟件課程體系構建內容
根據各職業崗位的典型工作任務,分析、論證、歸納軟件測試與研發崗位群的可行動領域,并轉化配置為專業學習領域的課程(以軟件產品測試員為例,專業學習領域的構建過程見表1)。并對學習領域課程進行難度范圍分類,重構專業學習領域的課程框架。具體的課程體系見表2。
4 基于工作過程的課程體系的特點
(1)新的課程體系主要體現了以.Net為主,Java為輔的設計思路。
(2)新的課程體系體現了高職教育中崗證結合的理念。為配合學生參加程序員資格考試,在第3學期的前半段特開設了“程序基礎應用”與“數據結構實現”兩門課。
(3)第2、3、4學期采用分段學習的方法,目的是讓學生圍繞具體的項目展開課程學習,在項目實習中消化鞏固學過的知識,學以致用。
(4)第5學期的課程是按照國家信息化帶動工業化進程的需求,將信息技術與其他行業技術的綜合,擴大就業面,提高職業能力。
(5)新的課程體系是學習新加坡職教經驗,變學知識為學做事,每半學期集中學習做一件事,課程開設與項目實習配合,學完以后立即通過項目實習讓學生把所學技能運用于實際工程項目。
(6)新的課程體系體現以“基于工作過程系統化”作為課程體系設計總體思路。