黃 茹,舒新峰
(西安郵電大學 計算機學院,陜西 西安 710121)
進入工業4.0時代,IT行業對軟件人才的需求有增無減,并且對人才質量的要求有所提高,各高等院校也針對這一變化對相關專業的培養目標做出了調整。然而從現實情況來看,畢業生的質量仍然和企業的要求有一定的差距,具體表現在:畢業生能力的變化和發展跟不上IT行業迅猛的發展速度;在教學過程中,由于教學手段跟不上教育技術的變化,考核檢驗學生能力的方式單一,不能全面反映學生的專業能力和素養;教學過程中偏重理論性課程,實踐類課程難以達到理論聯系實際的效果[1]。軟件工程專業是一個實踐性要求非常高的專業,根據培養目標改革集中實踐環節的教學模式,培養有解決實際問題的能力和工程實施能力的軟件人才已成為相關專業的當務之急。
將理論知識用于解決實際問題的專業能力、軟件項目的工程實施能力以及在開發過程中展示出的創新能力,直接決定軟件專業畢業生的水平和就業質量,集中實踐環節為學生提供了平臺來培養這些能力。當前的實踐教學環節通常與具體的課程相關,例如高級程序設計語言課程設計、數據庫應用課程設計、軟件工程課程設計等。這種教學模式存在以下問題:
(1)實踐任務單人單題,因此設計的軟件規模較小,能解決的現實問題較少,需求設計存在思維定式,難以創新。
(2)完成設計、開發、測試的都是同一個人,因此有可能功能設計不合理、不全面,測試時難以發現項目中存在的問題。
(3)沒有設計開發團隊,在開發過程中難以體現出項目管理、軟件階段評審等工程性內容。
從以上問題可以看出,按照這種方式劃分集中實踐環節,破壞了軟件設計開發行業工作的系統性;教學過程中,學生容易忽視課程之間的聯系,難以在日后的工作中充分運用所學知識[2]。
傳統教學模式中,大部分教師和學生將注意力集中在通過學習掌握了什么樣的知識和技能上,考核反映出來的是學生對知識的記憶能力。因此,在實踐性非常強的軟件專業中,學生普遍存在“理論無法聯系實際”“動手能力差”等問題。
成果導向教育(OBE,Outcome Based Education)以完成學習后學生能夠做出什么作為衡量標準,反映了學習后學生將知識用于解決實際問題的認知能力。
OBE于1981年由美國人Spady提出,由于這一教育模式能夠清晰地反映出教育的實用性和教學成果的重要性,經過10年左右的發展,迅速得到了教育界的重視和應用。OBE教學模式要求以完成學習后學生能夠取得的最大學習成果為目標,所有的教學活動都為了確保這一目標能夠順利實現[3-4]。OBE的實施框架可以歸納為5個部分,包括核心目標、重要條件、關鍵前提、實施原則和實施要點。核心目標和重要條件見圖1。
3個關鍵前提是:第一,不要求所有學生都能在同一時間內,以同樣的途徑取得最大成果;第二,學生需要足夠的激勵,促使其滿懷必然成功的信念;第三,因材施教,不論學生基礎好壞,通過學習都可以成功取得目標成果。
4個實施原則是:第一,教學的重點在于完成學習后學生取得的最終學習成果;第二,教學設計時要充分考慮學生的個體差異,確保每個學生都能實現預期的成果;第三,教育者對學生的學習應提高期待,鼓勵學生更好地學習,愿意面對挑戰;第四,根據要取得的成果,教育者可以反推出課程的設計。
5個實施要點是:確定學習成果、構建課程體系、確定教學策略、自我參照評價和逐級達到頂峰。
結合OBE教學模式,學院軟件工程專業從2014級學生開始,對以往的集中實踐教學環節進行改革。實踐教學中,根據學生掌握的理論知識情況,模擬真實的軟件開發流程,將集中實踐環節重新組織成一個延續性的、迭代式的課程群,包括軟件工程課程設計I、軟件工程課程設計II和軟件工程課程設計III 3門集中實踐課程。
每一階段的課程設計任務設定為:以團隊合作的模式,開發一個具有現實意義的中型信息管理系統。例如,可以實現一個影劇院管理及售票系統或航空管理及售票系統。每一階段課程設計在上一階段的基礎上迭代增量展開,對使用的專業知識、技術要求不同,完成的軟件項目使用方式、場合和功能也不同,具體要求見表1。
實踐環節采用團隊合作開發的形式,能夠讓學生適應團隊開發的模式,培養其團隊協作能力、規范開發文檔的書寫能力和項目管理能力。
該專業的培養目標是培養高素質應用型軟件專門人才,這些人才具有學習能力、創新能力、專業能力和專業素質,能夠勝任與軟件設計開發相關的工作[5]。迭代式集中實踐課程群通過短時間、高強度的強化訓練,鍛煉學生的專業能力和專業素質;幫助學生融會貫通多門理論課程,提高學生的學習能力;培養學生創新能力、工程能力,力求將學生培養成高素質、具有實訓經驗的專業人才。由此可見,課程目標與專業培養目標一致。在此實施框架中,核心目標和重要條件的關系見圖2。

圖2 迭代式集中實踐教學模式的核心目標和重要條件

圖3 迭代式集中實踐課程群的關鍵前提和實施原則
在實踐教學過程中,指導教師和學生都要明確集中實踐環節的目標是通過實踐,融會貫通理論知識,培養具有學習能力、創新能力、專業能力和專業素質的應用型軟件人才。教育者要時刻遵守圖3列出的關鍵前提和實施原則。
通過完成每一階段的實踐教學任務,使學生掌握不同學習階段的基礎理論和軟件工程學科的知識、技術、方法與主流的工具;通過實踐過程培養學生的工程實踐能力和團隊協作精神,同時鼓勵創新,逐步成為高素質軟件人才。
重新安排集中實踐環節與相關理論課程的順序[6],確保學生有足夠的理論知識完成集中實踐環節。除此之外,為保證學生融會貫通理論課程,在實踐開始前要下發資料,要求學生自主學習;指導教師要提前介紹后續課程的基本知識,并以文獻、微課的形式給學生提供學習資料,保證理論課程和實踐課程的順利銜接。
各階段集中實踐環節教學以小組討論、問題解答為主,大規模講授理論為輔。大規模講授理論知識安排在實踐環節的前3個學時,主要講授集中實踐要完成的任務、內容,實踐過程中要使用但還未系統學習過的理論知識。之后的時間里,指導教師以小組討論、小規模指導的方式指導項目組制訂工作計劃、解決學生遇到的問題,并鼓勵學生深度學習,成功完成任務。
各集中實踐環節結束后,通過項目組答辯和項目驗收情況評定成績。以上兩項內容以項目組為單位,指導教師和其他項目組組長共同參與。新的集中實踐教學開展以來,每次實踐環節結束后,都會根據實踐任務的完成情況和總體成績分析評分標準的合理性,完善評分標準。
這一系列集中實踐環節的設置,是為了推動學生逐級達到培養目標頂峰——成為高素質應用型軟件人才。除此之外,每一階段的實踐都為下一階段奠定了基礎。兩次實踐環節之間,絕大部分學生都有能力徹底理解上一階段的學習內容,成功完成實踐任務,從一定程度上避免了因學生能力和基礎的差異而無法實現集中實踐環節的目標。
截至目前,這一系列的集中實踐教學改革已在學校軟件專業實施了3年,顯著提高了學生的專業綜合能力、工程實踐能力和專業素質,具體體現在以下幾個方面。
1)提高了對抽象理論課程的理解。
迭代式集中實踐課程群,提供給學生大量與實際工程項目相似的實訓環境,學生切身感受到了軟件工程、軟件項目管理、軟件質量保證等需要工程背景的課程的重要性。結束集中實踐后,在其他課程中,絕大部分學生主動將這些工程理論應用到軟件開發過程中。
2)增強了學生的創新意識和團隊合作精神。
實踐環節的題目與現實生活接近,學生樂于創新。團隊合作開發的方式不同于課內實踐小組,實踐開始時制定的工作計劃和任務的工作量保證了所有人必須參入開發,協同合作。
3)適應了實際軟件開發工作,提前進行職業角色規劃,有利于更好的就業。
實踐過程包括設計、分析、實現、測試、維護、管理等工作,與實際的軟件開發工作相似。學生通過這一環節了解到軟件開發每一階段的工作內容,可以結合自身的能力和意愿,提前做出職業角色規劃,鎖定意向單位和適當的職位,從而在學習中做到有的放矢,對就業非常有利。
基于OBE的集中教學實踐環節改革以培養學生成為具有專業能力、學習能力、創新能力和團隊合作精神的高素質應用型軟件人才作為目標,分階段迭代式開展集中實踐教學,幫助學生將專業課程有機融合,促進理論課程與實踐環節的緊密聯系,有計劃地訓練學生系統地進行軟件項目開發,為學生在軟件行業實現高質量就業提供了保障。從實施情況來看,基于OBE的集中教學實踐環節也存在著一些需要完善的地方,在后續的實施過程中,筆者將不斷探索和改進教學技術和策略,引入大量具有實際意義的實踐項目和教學資源,提高對實踐結果考評的自動化程度,培養出更多符合行業要求的高質量應用型軟件人才。
[1]張劍波, 方芳, 袁國斌. 軟件工程專業實踐教學體系改革[J]. 計算機教育, 2013(12): 37-41.
[2]徐玲, 張小洪, 文俊浩, 等. 軟件工程專業實踐教學體系的構建[J]. 計算機教育, 2010(11): 137-139, 149.
[3]李志義, 朱泓, 劉志軍,等. 用成果導向教育理念引導高等工程教育教學改革[J]. 高等工程教育研究, 2014(2): 29-34.
[4]申天恩. 論成果導向教育理念的大教學戰略構想[J]. 吉林師范大學學報(人文社會科學版), 2016(3): 83-88.
[5]舒新峰, 王博, 王曙燕. 軟件工程專業系統化實踐教學模式探索與實踐[J]. 計算機教育, 2015(17): 79-83.
[6]王金水. 軟件專業實訓課程體系研究[J]. 計算機教育, 2014(14): 128-132.