余久久,張佑生,傅廷亮,蔡政策,梁月放
(1.安徽三聯學院 計算機科學與技術系;2.安徽三聯學院 信息與通信技術系,安徽 合肥 230601)
《軟件工程》項目教學思考與探索
余久久1,2,張佑生1,傅廷亮2,蔡政策1,梁月放1
(1.安徽三聯學院 計算機科學與技術系;2.安徽三聯學院 信息與通信技術系,安徽 合肥 230601)
根據軟件工程課程特點,詳細分析了當前該課程項目教學過程中所存在的一系列問題.分別從課程項目教學內容的選取、教學實施方案與考核方式三個方面進行教學思考,并探索教學改革思路和方法以提高教學效果.
軟件工程;項目;教學;思考
軟件工程課程旨在培養學生軟件開發的實踐能力,通過運用現代化信息系統項目管理學的基本原理、技術與方法等從事計算機軟件開發、管理及維護工作.該課程的教學中除包含計算機本身外,還涉及到從多其他領域知識,如現代管理學、經濟學、心理學、人機工程學等[1].課程的學習目標不僅要求學生具備扎實的程序設計能力,尤其強調了現代軟件項目運作過程中的團隊合作精神及項目管理思想.
鑒于課程強調學生動手能力及培養其分析、解決實際問題能力,大多數教師往往依據學生現有的知識結構,課堂教學聯系項目實踐,較多采取實際案例教學或項目實踐的教學方式.通過選擇難度適中的案例作為學生學習、實驗、實訓的載體,完成項目教學過程.但是從實際教學效果來看,教學效果一般.學生沒有體現出濃厚的學習興趣,實際動手能力亦沒有得到顯著提高.作者基于近幾年該課程實際教學經驗,深入思考并分析教學過程中所存在的主要問題,積極探索該課程項目教學改革的新思路與新方法,在提高教學效果的同時也對于培養出合格的軟件技術人才具有重要意義.
2.1 教學內容嚴重脫離實際
隨著軟件開發新技術、新工具、新方法的不斷涌現,課程主體教學內容已經從十年前的軟件結構化分析與設計方法逐步發展到當今面向對象的軟件工程復合體系.基于構件的軟件開發思想、安卓平臺下開發軟件的過程、軟件逆向工程以及軟件二次架構等內容已成為當前學科領域的主流.可是目前許多院校針對軟件工程課程的項目教學與實踐內容仍然以傳統的結構化開發方法為主,嚴重脫離實際.例如在教學中教師仍然指導學生選擇傳統的瀑布開發模型對單機版的軟件進行開發講解來作為教學案例或實踐項目,然而這些項目已隨著web時代的到來逐步推出舞臺[2].學生所學習或實踐的是逐步被淘汰的內容,與當前信息產業技術發展嚴重脫節.項目實踐時效性差,學非所用.
2.2 多數教師缺乏實際項目經驗
軟件工程課程內容中所涉及到項目領域覆蓋知識面廣泛,要求任課教師不僅精通本專業知識,更要熟悉現代化軟件項目的運作及管理方式.在國外,該課程任課教師大多由具有豐富的項目經驗軟件企業工程師擔當,但是國內很多高校的教師,大多是從學校到學校,長年固定教授一兩門課程,少有實際項目實踐經歷,更談不上項目經驗了[3].基于此,這必然造成教師只能照本宣科來灌輸“空洞的書本理論”,無法把書本上理論知識與實際項目相結合來指導學生完成實踐教學過程.有些高校甚至取消了該課程項目實踐教學環節,而讓學生閱讀教師事先準備好的現成企業項目相關資料或者僅僅要求學生網上搜索與填寫出項目各階段的開發文檔取代課程項目教學的內容,教學過程中缺乏有效的過程監督與管理.學生接觸到的永遠是抽象的理論概念,理解困難,產生厭學情緒,更無法促進實踐能力的提高.
面對當前軟件工程課程項目教學效果不甚理想的狀況,作者從課程實踐內容的選取、實踐教學方法與考核手段的制定三個方面嘗試對課程項目教學進行思考并積極嘗試探索.
3.1 項目實踐內容的選取
項目教學過程中,項目的制定、實施、完成、以及對完成項目情況的評估成為教學中心環節,學生不把學習當任務,而是根據項目需求來學習,由被動的接受知識變為主動的尋求知識[4].就軟件工程學科而言,項目內容的選舉一定要融入當前軟件開發中的新技術與新方法,培養學生學以致用的能力.教師對實踐項目的選取要摒棄對不適用或已過時技術方法的講解(比如取消面向過程的開發技術,取而代之的是選擇基于web環境下面向對象以及基于構件開發技術為主線的項目案例等).項目的來源可以取自教師自行編寫的項目案例手冊(教材),或者上網搜索,也可以選擇近三年教材上所附的能夠反映出軟件工程最新發展動態的案例,但是要根據實際作相應改動.
此外,選擇項目案例要以教學內容為依托,題材來源于生活實際并且規模適中.所涉及到的行業背景及實施難度不宜復雜,應當在學生充分了解范圍之內.教師可以采用一個完整并成熟的項目案例通過分解子模塊分階段實踐的方式貫穿項目實踐教學全過程,也可以選擇若干不同的規模并非很大的項目案例作為每次項目教學的內容.教師對所選項目應非常熟悉,最好是親自開發過的,有利于項目實踐中全面指導學生[2].
最后,在選取的軟件項目中設置彈性化的模塊完成要求用來滿足不同能力層次學生的實踐需要,以激發學生的創造性和主動性,從而增加學習興趣.
3.2 項目教學實施方案
毋庸置疑,教師作為實踐教學環節過程中的重要因素將直接影響教學效果的好壞.在開展項目教學同時,學校嘗試聘請當地企業一線從事相關專業生產、研發人員到學校擔任項目兼職教師,彌補教師在項目教學法中經驗的不足,并以此帶動教師的項目實踐能力[5].項目教學過程中,作者不建議學生以個人為單位進行項目實踐活動,學生自由組合進行三至四人的分組,但是每組學生要涵蓋“好、中、差”三個層次,共同參與并完成項目中所包含的各項任務.項目實施中,教師原則上不干預組內成員的具體任務分工,但允許學生在課堂時間之外完成實踐.教師可以提供必要的技術書籍或相關資料,但是不參與學生具體實施過程.
項目完成后,教師首先檢查每個項目組是否按照預定要求實現了項目中的功能.客觀的對每個項目組的項目完成情況進行評估,充分肯定項目組中每位同學的成績和付出,并給與相應評價[6].在時間允許的前提下,可以組織小組內部答辯、小組與小組間答辯等相互評估活動來調節學習氣氛.最后每個項目組通過提交詳細的實踐報告與公開演示項目作品,總結學習心得體會.
3.3 考核方式的改革
基于軟件工程課程的特點,作者不提倡該課程采用傳統的卷面筆試或上機命題的考核方式.由于實踐項目所要求的功能性結果在完成后所涉及到的非功能因素還有很多(比如軟件界面美觀因素、人機交互友好因素等),制定同一的考核結果判斷準則不現實.這里作者嘗試以每次項目實踐的綜合評估結果結合相關技術文檔或相關實踐報告的質量,輔以學生平時參與項目實踐活動的出勤記錄作為課程考核的依據.項目完成后的小組匯報,項目組(組內成員)的現場答辯活動等都可以成為課程考核方式.每位學生的分數包括權值各不同的自評、他評(其他項目組同學評分)和教師評分三部分組成,最后匯總采用“優/良/中/不及格”四個級別作為最終得分的判定層次.
成績評定過程中需要注意的是教師對學生每部分評分分值的權重比例要劃分合理,例如:自評20%,他評40%,教師評分40%.評估標準的判斷要具有開放性與客觀性.如項目實踐中資料的選取是否全面、可靠、實用,項目計劃是否嚴密、完整,解決方法是否合理、有創新等.實踐證明,開放客觀的評估準則,教師對項目實踐過程中重鼓勵、重引導的評估思想深受學生親睞.
對于綜合性與實踐性較強的軟件工程課程,基于項目實踐教學的改革探索勢在必行.新形勢下要求教師具備一定的項目開發及運作經驗,使得該課程教學效果顯著.通過在教師指導下,學生分組參與項目實踐,讓學生的分析及解決問題能力、知識的綜合運用能力、以及團隊協作能力都得到相應程度的提升.激發學生學習興趣的同時,極大鍛煉學生動手實踐能力,也為培養學生今后實習與就業中的實際工作能力打下良好的基礎.
〔1〕馬燕,張根耀,王文發.軟件工程實驗教學模式改革與實踐研究 [J].教育與職業,2006,12(36): 149-150.
〔2〕胡洋,蘇琳.Web軟件時代的《軟件工程》課程改革與建設[J].中國成人教育,2010(5):111-112.
〔3〕譚玲.項目教學法與計算機教學[J].科技創新導報,2008(26):251.
〔4〕張哲,張濤.高校IT實訓改革與探索[J].電腦知識與技術,2009,5(27):7701-7702.
〔5〕余久久,張林,張健.項目教學法在高職院校開展的幾點探討[J].皖西學院學報,2010(2):42-44.
〔6〕余久久,張佑生,張繼山,等.計算機應用基礎課程項目教學研究與實踐[J].赤峰學院學報,2010(11):197-198.
G642
A
1673-260 X(2013)10-0238-0 2
2011年安徽省高等學校省級質量工程項目(2011074);2013年安徽三聯學院科研基金項目(2013Z002)資助