- 相關推薦
對軟件工程課程自底向上教學模式的探試索
摘要:根據軟件工程課程特點和教學研究現狀, 提出了一種自底向上的授課模式。該模式在教學內容安 排上以詳細設計一概要設計一需求分析為序, 其間貫穿完整案例。案例教學采用學生辯論方式進行授課。考核方式實行理論考核百分制與實踐五分等級制相舍的方式進行。實踐證明這是一條行之有效的軟件工程課程教學模式。
關鍵詞:軟件工程; 自底向上教學模式; 案例; 辯論
一、軟件工程課程特點
軟件工程是高等學校計算機專業一門重要的專業課程, 它是指導計算機軟件開發和維護的學科, 包含著指導人們更好地開發軟件的方法和原則。軟件工程課程內容豐富、知識關系復雜, 理論性和實踐性都很強。理論知識是從長期的工程實踐中總結、提煉出來的原則和經驗, 對實際軟件開發具有重要的指導意義。但是, 理論抽象、枯燥, 概念、原則繁多, 不容易學, 學生興趣不濃。實踐性知識是軟件工程教學的關鍵, 但是其規模龐大, 操作復雜, 學生難以入手, 難以掌握重點與精華, 可操作性差。
軟件工程是一門教學難度較大的課程。主要原因有:
第一, 軟件工程作為一門指導計算機軟件開發與維護的工程學科, 研究的范圍很廣。
第二, 軟件工程是一門邊緣學科, 涉及的領域很多, 內容十分豐富。
第三 , 軟件工程是一個年輕的領域, 尚未形成成熟的教學模式, 教材也少有提供較為成熟的設計、訓練和實踐內容。
二、軟件工程課程教學現狀
軟件工程的傳統教學模式是采用以軟件生命周期為序的單一的課堂講授方式。該模式重理論、輕實踐, 主要是以教師講授為主, 學生是知識的被動接受者。學過之后學生熟悉了不少概念和術語, 但動手能力差。由于缺乏足夠的軟件工程實踐, 學生對軟件工程原則和方法的理解只能局限于表面, 難于深人體會和把握軟件工程知識的精髓和本質, 更不知道如何運用軟件工程的技術和方法來開發、維護軟件。由于該課程是一門集方法性、思想性、標準和規范性于一身的學科, 理論抽象, 實踐可操作性差, 學生很難主動融人課程的教學中去,導致學生覺 得枯燥乏味,學習沒有積極性。另一方面,該課程傳統的考核方式是一卷制的原理、概念等知識的考核,導致學生考前突擊,死記硬背,應付考試。
針對軟件工程傳統教學模式的弊端,高校教師對該門課程的教學從教學思想、教學途徑、教學方法、學習過程等方面進行了研究,認為課堂教學采用任務驅動與案例教學法較為合適。任務驅動,主要就是教師根據教學主題設計特定的軟件設計任務,學生在完成任務的過程中學會并掌握軟件開發與管理的一些基本技能、基本原理和基本知識的一種教學方法。案例教學,就是利用案例作為教學媒介的一種教學方法,通過案例分析使學生掌握理論。
三、自底向上教學模式
作者通過多年的軟件工程課程教學,探索出了一種自底向上的教學模式。其主要思想如下:
1、授課順序
目前,軟件工程課程在授課內容的順序安排上,一般均以軟件的生命周期為主線,平鋪直敘。該授課順序對于從未接觸過實際項目的學生來說,過于枯燥、生疏,跳躍性大,學生接受起來較困難。筆者采用以“詳細設計一概要設計一需求分析” 為序的授課模式進行授課。該種授課模式既符合由簡單到復雜的認識規律,又符合IT人員工作職位晉級順序(程序員一設計師一分析師),且課程從程序設計逐步向上層講起,學生易接受,過渡平滑,無生疏感。
2、授課內容與授課形式
總體上說,這種授課形式主要是用倒敘的方式貫穿完整案例(包含警戒案例),以啟發、討論、辯論的形式,講授軟件工程的原理、方法及過程。
在詳細設計階段,首先,以程序警戒案例(是指不完全符合軟件工程編碼規范的)引入,讓學生討論該程序段是否為一段好的代碼。同時,啟發學生從程序的易懂性等方面考慮。‘如果學生存在著不同的觀點,則采用辯論方式。然后對學生討論的內容加以歸納、總結和補充,這樣就自然而然地將有關編碼風格方面的知識點也介紹了。
其次,以小組為單位,下發不同的樣本程序流程圖(學生在程序設計語言課程中已經學過),要求學生用一門自己熟悉的語言書寫符合編碼規范的代碼,交換各組的編碼,討論存在的問題,然后講解其它的詳細設計工具,如N—s圖等。
第三,仍以小組為單位,討論如何為自己的編碼(已調試成功)設計測試用例,掌握測試方面的知識點(此部分著重講解單元測試)。
在概要設計階段,還原詳細設計樣本的軟件結構圖,先由教師講解模塊的概念,再由學生討論模塊劃分的原理,最后教師總結、補充模塊劃分的原理、模塊的獨立性及其他概要設計的常用工具,并講授組裝測試的理論。
在需求分析階段,還原概要設計的數據流圖和E—R圖等,講解事務分析和變換分析的原理,進行系統的確認測試及其理論的講解。
最后,對整個系統增加若干個小功能,以小組為單位對原系統進行完善性維護(要求以生命周期為主線)作為大作業,同時講解其他維護類型。
3、考核方式
由于軟件工程課程的理論性強,一些原理、方法、規范要求學生牢固掌握。對于這部分內容,以閉卷的方式考核,采用百分制。而對于一些實踐性的內容、課堂討論的表現及最后的完善性維護的大作業,作為平時成績,以五級制記分。兩部分在期末總成績中各占50%。
自底向上教學模式是以軟件生命周期的逆序為授課順序,使學生不覺生疏,易接受,又符合IT從業人員的工作進程。自底向上貫穿完整案例,且在案例教學中穿插警戒案例,不僅傳授給學生什么是對的,而且傳授什么是錯的,為學生積累實踐經驗走了捷徑;在教學過程中的討論、辯論及其在期末成績中占有一定的比例,激發了學生的學習熱情與樂趣,促進了學生主動學習、勤于思考。最后的完善性維護大作業,使學生實踐了軟件開發的全過程,增強了該課程的實踐性。實踐證明,該模式無論在理論還是實踐教學中均取得了較好的效果。
參考文獻:
[1]楊志耘,劉建賓.軟件工程任務驅動教學模式的探索與構建[J].高等理科教育,2005,(6).
[2]隆巖.軟件工程1:1教學模式設計[J].濟南職業學院學報,2005,(1).
[3]孫為軍.“軟件工程”課程教學研究與實踐[J].廣東工業大學學報(社會科學版),2005,(9).
[4]P-鋒.軟件工程課程教學改革初探[J].長沙大學學報,2004,(12).
[5]張潤蓮,張向利,葉進.案例教學法及其運用[J].桂林電子工業學院學報,2004,(8).
【對軟件工程課程自底向上教學模式的探試索】相關文章:
談物流法律法規課程教學模式08-04
談高職《化工設備》課程車間課堂教學模式08-11
加強水利工程科技檔案的管理探試研05-03
統計學專業課程建設模式探究05-04
快樂體育教學模式的構建08-05
高職教育專業課程考試模式的實踐與思考05-10
淺析我國中高職教育銜接課程設置模式08-06