前言:尋找寫作靈感?中文期刊網用心挑選的啟發式教學實踐軟件工程論文,希望能為您的閱讀和創作帶來靈感,歡迎大家閱讀并分享。
1軟件工程專業課程的特點
軟件工程專業課程體系中與系統應用開發相關的專業課比較多,主要包括高級語言程序設計、數據庫系統與設計、基于UML的面向對象分析與設計、Web應用開發、Android應用開發、Web服務應用開發、嵌入式系統與開發、軟件測試、軟件項目管理、軟件體系結構、信息安全技術等,這類課程具有以下特點。
(1)知識點細小、量大、繁雜,抽象、不易理解,需靈活、綜合運用知識點才能解決實際問題。
(2)側重實踐教學環節,輔助說明知識點、方法和技術的運用。
(3)課外學時比重較高,需要學生課后自覺加強系統開發技能的學習和訓練。
(4)對學生綜合素質要求較高,特別是動手實踐能力。從易于學生理解、掌握的角度出發,為了培養和提高學生的自主學習和應用創新能力,筆者在分析軟件工程專業課程的特點和傳統教學模式的基礎上,探討并提出基于案例的啟發式教學實踐框架。
2傳統教學模式分析
軟件工程專業課程傳統教學模式主要包含兩部分:課堂教學和實驗教學。課堂教學“老師講、學生聽”,實驗教學“學生練、老師指導”,學時分配以課堂教學為主,實驗教學為輔,通過實驗環節加深和鞏固課堂講授的知識點。在近幾年的教學過程中,筆者發現傳統教學模式存在以下問題。
(1)課程知識點內容相對枯燥,課堂教學講授過程不易集中注意力,學生經常處于人在心不在的狀態,不能激發學生學習積極性和熱情。
(2)課堂教學以知識點為中心,先逐一講授各章節知識點,然后通過簡單的案例進行應用示范說明。這種正向教學模式雖然具有一定的知識連貫性,但從企業對軟件人才的需求角度來看,學生解決綜合問題的能力不易得到鍛煉,因此大部分學生期末考試基礎題容易得分,但分析、設計、綜合題等卻不一定能抓住問題關鍵。
(3)實驗過程中,一位指導老師通常要應對一個班或者幾個班學生的提問,這種一對多、串行處理的實驗指導模式導致部分學生等待答疑的時間偏長,實驗課時利用率不高,教學效果大打折扣。
(4)實驗教學環節雖然可以幫助學生鞏固所學知識點,提高解決問題的能力,但學時較短,不會超過總學時的25%,因此實驗課題的難度一般中等偏下,選題比較陳舊,以引導啟發為主,與軟件企業實際項目課題的規模相距甚遠。此外,學生動手實踐能力參差不齊,實驗過程中敢于問問題的基本都是積極、主動、對課程感興趣的學生,而很多同學遇到問題幾乎不咨詢指導老師,甚至出現實驗報告抄襲的情況。
(5)課程綜合考評以期末考試成績為主,附加實驗成績和平時表現成績,這種考核方式不利于體現學生開發能力的水平以及解決問題的綜合能力,學生必然在學習過程中忽視軟件開發能力的鍛煉和主動思維習慣的培養。針對以上問題,為了提高教學效果,培養學生學習與創新的能力,幫助學生解決實際問題,需要我們轉變教學思路和教學模式,在積累的教學實踐經驗基礎上探討并提出基于案例的啟發式教學實踐框架。
3基于案例的啟發式教學實踐框架
傳統的課堂教學方式是將知識點與應用實例分開講授,零散地講解知識點,然后通過實例說明如何應用。這樣可能會導致以下問題:講授新知識點的時候學生不知道有何用處,理解不透徹,似懂非懂;實例講解的時候忘了已學習的新知識點,總在給出答案時才恍然大悟。基于案例的啟發式教學實踐框架借鑒并融合了NIIT教學體系中基于榜樣的學習方法MCL(Amodelcenteredlearningarchitecture)、信息搜索和分析技能ISA(Sinformationsearchandanalysisskills)、PROJECT項目開發的教學思路。MCLA是印度NIIT教學模式的基礎和核心,以應用為導向,任務驅動教學,培養學生基本技能和動手能力。該模式由多個教學循環組成,從業界的實際問題入手,采用規范的分析、計劃、實施和驗證步驟來解決這個問題,學生參照此方法和步驟來解決另一個新的實際問題,培養獨立解決實際問題的能力。ISAS課程核心是提高信息檢索與分析能力、文檔處理能力、演講能力等,以小組的形式共同完成一項課題,組織、分工、信息檢索、材料整理、文檔撰寫、成果展示等全過程都由學生自己完成,鍛煉學生團隊合作能力、網絡信息檢索和分析能力、文檔和演示技能、交流和演講能力等。PROJECT強調實踐能力和編程能力,模擬現實環境,通過項目開發來提高知識理解與應用的能力,培養學生獨立解決實際問題的能力。該課程授課對象是大一下學期學生,對數據庫應用系統的使用并不陌生,比如網上選課會使用學校的教務管理系統,圖書續借需要使用圖書館管理系統等,但學生對后臺的數據庫系統如何設計與編程開發卻比較陌生。因此,從學生易于理解的角度考慮,教師選擇學生親身體驗過的數據庫應用系統為授課案例來展開課程教學內容。傳統的教學過程會按部就班地介紹數據庫定義、分類、關系類型數據庫、數據操作、數據管理等概念,內容枯燥,不易理解,也無法激發學生的興趣,而該教學框架首先以問的形式吸引學生的注意力,啟發學生思考,讓學生從“被動聽”的狀態轉為“主動思考”的狀態。教師應從圖書館管理系統應用案例出發,站在學生的角度提出問題,或者讓學生主動提出疑問,如需要管理哪些數據?數據在軟件系統中如何組織?以什么結構存儲數據?如何插入刪除數據?如何查詢數據?面對龐大數據量如何提高查詢數據的效率?問題的設定需要精心準備,不僅要有針對性,并且能與各章節重要知識點相關聯,這樣才能在問題的解答過程中引入知識點的介紹。針對上述“面對龐大數據量如何提高查詢數據的效率”這個問題,教師借鑒新華字典查找漢字的過程,引入“索引”這個概念,什么是索引,索引有哪些分類,如何創建索引,利用索引查詢數據的過程等相關知識點也就順其自然地引出來了。傳統教學方式中,授課教師會將這些相關知識點逐一講解,學生被動接受,但實踐證明這個過程并非雙贏,一方面學生的學習能力得不到鍛煉,另一方面授課教師也不能全面掌握學生的聽課效果。因此,在該框架中借鑒ISAS課程思路,將相關知識點以任務的形式布置給學生自主學習和協作學習,學生可以收集教材、參考書、網絡等各類學習資源,獨立完成任務學習報告,并將主要內容以PPT形式在講臺上進行闡述,與老師同學分享學習的成果和收獲,從被動學習轉變為主動學習,帶著問題和任務尋找答案,提高學生學習積極性,鍛煉學生的自主學習能力。在充分了解學生相關知識點的掌握情況后,結合課程內容或者擴展知識的需要,授課教師可以有針對性和選擇性地補充講解、知識點總結、代碼解釋、實例演示等。例如,針對“面對龐大數據量如何提高查詢數據的效率”這個問題,使用SQLServer軟件,對比索引建立前和建立后兩種情況數據查詢所耗時間的變化。通過實例演示給學生留下感官體驗的深刻印象,同時也加深學生對知識的理解。階段學習和講解結束后,學生分組進行項目演練,學生之間分工合作,互幫互助,針對項目需求共同完成軟件作品,如構建倉儲管理系統、客戶信息管理系統等。教師可以以多樣化的形式展現各小組開發成果,如課堂現場展示、手機或網絡平臺展示等,讓老師和同學都參與評價,獲得較全面的用戶意見;通過實踐開發環節,加深對知識點的理解與應用,鍛煉學生解決實際問題的能力和交流演講能力,培養團隊合作精神。綜合上述5個環節,教師改變傳統期末考試的片面評價方式,采用多形式、多角度的復合評價模式綜合評定學生的學習效果,包括學生自我評價、教師評價、學生互評等,通過任務學習報告、軟件開發作品、期末考試成績等多種方式從多個角度評價學生的綜合能力,包括自主學習能力、實踐應用能力、知識掌握水平等。采用人性化的復合評價方法的目的是為了鍛煉學生的綜合素質,同時也能反映教學效果,使授課教師能進一步優化教學模式。
4結語
軟件工程專業大部分課程具有工程化的特點,基于案例的啟發式教學實踐框架無論在教學還是考核過程中應盡量采用以人為本、學以致用的思路。計算機技術發展日新月異,學生學習過程中所收獲的編程經驗和應用創新能力遠比課程知識本身更重要,而授課教師在教學過程中不斷豐富案例,深入淺出地講授知識,不斷改進完善教學方法,也必將從中受益匪淺。
作者:毛燕琴 單位:南京郵電大學計算機學院 南京郵電大學軟件學院