黑龍江 王智慧
工程任務課程化在軟件編程課程中的應用
黑龍江 王智慧
工程任務課程化是在教學過程中以實際項目為教學主線展開,把相關的知識點融入到項目的各個環(huán)節(jié)中。本文采用工程任務驅動教學法對軟件編程課程的意義和實施進行了探討。
工程任務課程化;工程任務
作為一名高職高專的計算機教師在長期的教學中筆者深深的感到傳統(tǒng)的教學方法往往拘泥于對課程知識結構的分析,注重于每一個知識點的講解,學生缺少綜合應用知識點的訓練。特別是對于程序語言課程來說,如果僅注重書本中知識點的學習和單一實例的練習,其結果往往是學生在學了一大堆語法基礎、編程思想等知識之后,仍然對如何開發(fā)實際項目很茫然。傳統(tǒng)教學方法已經(jīng)難已滿足軟件類專業(yè)課程的教學要求,要改善教學效果,培養(yǎng)學生實踐動手能力,就要對現(xiàn)在的教學方法進行改革。將實際工程任務引用到軟件類專業(yè)教學實踐中是一次很好的嘗試,本文結合筆者近年教學工作實際,對該方法的實施過程、教學效果進行了探討。
所謂工程任務課程化教學法是指在教學過程中以一個實際項目為主線來展開,把相關的知識點融入到項目的各個環(huán)節(jié)中去,層層推進項目。通過對問題的深化或功能擴充,來拓寬知識的廣度和深度,直至得到一個完整的項目解決方案,從而達到學習知識、培養(yǎng)能力的目的。
工程任務課程化教學方法是一種具有系統(tǒng)性、多樣化、實用化的教學方法,其主要思想是將工程任務分解為與各章節(jié)知識相關的一個個任務交給學生,學生在教師的指導下,按照實際工作的完整程序進行信息搜集、項目決策、項目實施、系統(tǒng)評測、評估總結的過程。與傳統(tǒng)教學法相比,該方法強調“學生為主體,教師為主導”的思想,學生是認知的主體,是知識意義的主要建構者。對于計算機軟件類專業(yè)課程而言,如程序設計課程,工程任務課程化教學方法的思路是將一個完整的軟件開發(fā)項目貫穿于整個教學過程中,以項目的構建過程為主線安排教學進度,教學過程由項目分解后的各個任務驅動。教學實踐中,學生參與到一個實際項目的分析、設計、實現(xiàn)全過程中,教師指導學生分析項目及任務內容,學生通過實踐教學環(huán)節(jié)勤學苦練,在任務完成或整個項目完成后,通過學生自評、互評和教師評價發(fā)現(xiàn)問題,并分析找到解決問題的方法,加以實施,實現(xiàn)了“教、學、練、評”的有機結合。在這個過程中學生不僅完成了理論知識的系統(tǒng)學習,而且從整體上掌握了課程的精髓,將理論知識與開發(fā)實踐活動結合起來,提高了在實際工作中分析問題、解決問題的能力,同時也培養(yǎng)了學生自主學習能力和團隊協(xié)作精神。
(一)工程任務的選擇
課程教學以一個與企業(yè)需求為目的的實際項目為引導,但對于軟件類專業(yè)的學生而言項目僅僅是一個抽象的概念,他們還無法將課程知識與具體項目有機聯(lián)系起來,因此,如何選擇項目對于課程教學實施的成功與否至關重要。所以工程項目的選擇就需要包括多方面的知識,并有針對性的選擇項目。項目不宜過大,也不宜過小。應選擇覆蓋整個課程知識體系的,且難易適中的項目。
(二)工程任務的模塊劃分
項目選擇后,教學的實施就變成了教學內容和教學項目開發(fā)過程的研討和講解,又是實訓項目開發(fā)的引導。這時候教師就可以根據(jù)課程知識點和軟件項目的特點進行功能模塊的分解,將一個軟件項目分解為一系列的問題即任務。這種分解應是多維的,橫向來看這一系列任務組合起來應具有項目的完整性、系統(tǒng)性和課程知識的全局性,縱向來看每一個任務都是課程知識點的不同集合,具有一定的相對獨立性。通過分解過程后,一個完整的項目被劃分為更容易理解的子模塊,而且課程知識點也融入到了各個子模塊中,不僅使學生在完成模塊任務的同時也掌握了知識點,又可充分調動學生學習的主動性,提高學習效率。
(三)教學過程實施
全課程以核心內容貫穿,同時每次課也從有關的實際問題入手,由實例引入本堂課的內容。這樣,無論是對整個課程還是對每堂具體的課程,學生的學習目標都十分明確、具體。教師授課時把這部分知識與能完成項目模塊的知識點緊密的聯(lián)系起來,使學生在明確任務的同時產(chǎn)生濃厚的興趣。還有就是教師要明確每次項目拓展所引出的程序設計中的知識點及學生應掌握的技能,使其能夠涵蓋章節(jié)中程序設計的所有基本內容。如完成存儲模塊設計時,必須學習以下知識:掌握文件的建立、打開、讀、寫等操作;系統(tǒng)的數(shù)據(jù)輸入、修改、查詢、統(tǒng)計、輸出等功能,必須掌握函數(shù)的調用;數(shù)據(jù)內容的組織涉及數(shù)組、結構體、鏈表,必須掌握數(shù)組、結構體、鏈表等數(shù)據(jù)對象的操作;每一個模塊設計時還必須設計算法控制流程,掌握不同的流程圖表示方法。教學的實施過程就是教學內容和教學項目開發(fā)過程的講解,又是實訓項目開發(fā)的引導。整個過程充分體現(xiàn)以學生為主體,教師為主導的特點。
(四)教學的評價
以往的教學考核是以理論考核為主即筆試,而試題都是一些標準化的試題。為了考取一個好的成績,學生只是機械地背誦一些概念。這樣的考核方式使學生失去了對學習的興趣,也屏蔽了學生的動手能力。而工程任務課程化教學方法要想實現(xiàn)由“知識考核”向“能力考核”轉變,軟件開發(fā)類課程的考核形式采取“項目設計”的方式是最佳的選擇。在教學結束后,由同一課程學習的同學和任課教師組成答辯小組。被考核同學完成答辯后,由全體同學和教師根據(jù)程序設計、程序講解、答辯三個方面分別給出評價。學生評價的平均分占該同學課程成績的30%,教師評價的平均分占該同學課程成績的70%。
通過工程任務課程化教學法在軟件課程教學中的實施,提高了學生學習的積極性,培養(yǎng)了學生實踐應用能力和團隊協(xié)作精神,實現(xiàn)了教學培養(yǎng)目標。經(jīng)過一年教學實踐檢驗,工程任務課程化教學法在改善教學效果、提高教學質量方面取得了一定成效,并且使學生在就業(yè)競爭力和工作能力方面都得到了加強,特別是參加了實際項目開發(fā)的同學能夠很快進入崗位角色,并在學習過程中設計完成的項目給企業(yè)帶來了實惠,學生也有了一些收入。
[1]羅凌.基于項目驅動的“ASP.NET程序設計”課程創(chuàng)新教學法研究[J].計算機教育,2009(13).
[2]李天飛.淺談計算機教學現(xiàn)存的問題及對策[J].科教文匯(下旬刊),2009(5).
[3]史志才.軟件工程專業(yè)人才培養(yǎng)模式的改革與創(chuàng)新[J].大連大學學報,2005(6).
[4]曹春華.高職軟件開發(fā)課程考核模式的探索與實踐[J].電腦知識與技術,2008(25).
(編輯 李艷華)
(作者單位:齊齊哈爾工程學院)