當前位置:學問君>學習教育>畢業論文>

試析案例驅動的軟件工程教學改革與實踐論文

學問君 人氣:9.6K

論文摘要:軟件工程是一門理論性和實踐性非常強的課程,是計算機軟件開發和維護的一門工程性學科。根據目前軟件工程教學的現狀和特點,結合從事軟件工程教學和科研的實際體會,提出了案例驅動的軟件工程理論教學模式和基於案例分析的實踐教學方法以及結合實踐的綜合能力測評,將對提高軟件工程的教學質量起到積極的意義。

試析案例驅動的軟件工程教學改革與實踐論文

論文關鍵詞:軟件工程;案例驅動;實踐教學

一、引言

軟件工程作爲計算機科學與技術專業本科的核心專業課之一,是一門應用性、實踐性、綜合性很強的專業課程。研究的範圍非常廣泛,包括技術方法、工具和管理等許多方面。近些年來,軟件工程發展迅速,新的技術方法和工具不斷涌現。是一門集理論、應用與實踐爲一體的學科。透過學習,使學生能夠掌握軟件項目從定義、開發到維護的一般過程,掌握指導軟件開發的各種方法,能夠利用工程化的原理、技術和方法進行軟件項目的分析、設計、實現和維護,爲今後從事實際的軟件開發工作打下良好的基礎。

二、軟件工程課程的特點

與計算機科學中的其它專業課程相比較,軟件工程課程具有以下特點:

(一)軟件工程發展迅速

爲了擺脫“軟件危機”的困擾,軟件危機從20世紀60年代末開始迅速發展,現在已經成爲計算機科學技術的一個重要分支,特別是隨着全球軟件產業的蓬勃發展,軟件工程已經成爲一門異常活躍的研究學科。在過去十幾年中,軟件開發方法百家爭鳴,除了傳統軟件工程和麪向對象軟件工程外,還出現了面向構件軟件工程和形式化軟件工程等,軟件輔助工具也層出不窮。

(二)文理綜合類學科

軟件工程是指導計算機軟件開發和維護的一門學科,採用工程的概念、原理、技術和方法來導軟件的開發和維護。主要講述軟件工程的基本原理、概念和技術方法,同時也涉及工程方法,管理,經濟等文科類學科,與理工類的其它學科相比,可以說軟件工程是理工類中的綜合文科類知識的學科。

(三)工程性要求高

軟件工程課程講述的軟件開發和維護的原理和方法,很多都是啓發性規則,即專家和學者在軟件開發,執行和維護實際工程中的經驗和教訓的總結,僅在課堂上講授理論就像紙上談兵,只有理論聯繫實際,透過將理論應用到實踐工程中去,才能達到學以致用的目的,才能更快的適應社會的需要。

三、軟件工程課程的教學改革

針對軟件工程課程的特點,傳統的只強調理論學習的教學方法很難取得良好的教學效果,我們從以下幾個方面對軟件工程的課程教學進行改革。

(一)案例驅動的理論教學方式

理論教學仍然具有非常重要的地位,首先要加強學生理論基礎知識的掌握。軟件工程講述的原理,技術和方法都是抽象的,爲了讓抽象的理論教學容易理解和接受,我們按照如下步驟逐步展開軟件工程課程的理論學習。

1、軟件工程產生的歷史背景以及它的基本原理、概念和方法;2、軟件生存週期,以及各個階段的任務、過程、使用的工具和具體方法;3、軟件工程的管理技術。

在理論講解的過程中,講解重要理論的同時,要結合案例進行分析,這樣一方面減少理論學習的枯燥性,提高學生學習的熱情,另一方面,理論聯繫實際,使學生更好的掌握所學理論,增強學生的實踐能力。

同時,在理論教學上可以採用多種教學形式相結合的方法,幫助學生掌握必要的理論知識。

(1)多媒體教學。理論課採用多媒體教學手段,製作大量課件。這些課件可以形象化地講授軟件工程基本原理,並且在同樣的一節課內能比以前傳授更多的知識。由於課堂時間有限,我們將部分內容製作成課件供學生自學,以便於學生課外擴展自己的知識面。

(2)雙語教學。軟件工程嘗試實施雙語教學。採用國外優秀的原版教材,課件和作業大部分採用英語作爲工作語言,並鼓勵學生使用英語進行交流;同時,給學生提供英文的課外閱讀資料,以使他們及時瞭解國際最新發展。 (3)研討式教學。軟件工程課程的特點也要求師生互動,組織學生展開討論。讓學生參與教學過程,有機會發表自己的.看法。用理論和經驗去引導和啓發學生,鼓勵學生勇於發表意見特別是提出新見解。討論之後,同學們進一步理解和掌握了課程內容的方法和步驟,這個過程讓學生覺得感受很深、收穫頗大,透過課堂討論和分析實驗,使理論有實踐做支撐,抽象的知識變得看得見,用得着,大大激發了學生學習的興趣和自信。

(4)遠程教學。在軟件工程的教學中,透過建立軟件工程學習論壇網站,爲學生更好學習提供了一個平臺。網站爲學生提供學習資料,下載相關業界資訊;瞭解軟件工程發展動態。學生也可以透過網絡進行在線、離線的交流;同時,網站也經常開展課程的專題討論和專家在線講座。

(二)案例分析應用的實踐教學方式

1、各生命週期實踐分析。在進行理論學習的同時,加入上機實驗環節,對於軟件工程的每個生命週期,計劃適合的小規模案例,學生透過對每個生命週期案例的分析和設計,掌握每個生命週期重點要解決的問題,以及如何具體的解決問題,提高學生解決每個生命週期中遇到的具體問題的能力。爲以後的完整案例設計打下基礎。

2、綜合知識運用的完整案例設計。在這一過程中,主要透過小學期的課程設計來完成,是軟件工程實踐的集中環節,在這一環節中,學生透過對一個完整系統的研發,理解軟件開發的流程和方法,使學生建立正確的軟件工程思想。要選擇具有目的性、典型性、完整性、真實性、易於理解的軟件案例。這一過程主要步驟如下:

(1)選定一個規模適中的軟件系統。

(2)對指定軟件系統做可行性研究,在系統可行性的基礎上,進行詳細的需求分析,根據需要選擇畫出數據流圖、數據字典和實體聯繫圖,狀態轉換圖等,寫出需求分析說明。

(3)對該系統進行總體設計和詳細設計,畫出軟件結構圖,判定樹等。

(4)編碼實現該系統,並使用白盒測試技術或黑盒測試技術等對系統進行測試。

(5)驗收所作軟件系統,進行答辯。

另外,除了上述步驟提到的各種圖形工具之外,也可以藉助其他輔助開發工具。

(三)結合實踐的綜合能力測評

現行的考試模式在很大程度上仍然是傳統的考覈方式,採用理論考試,雖然能在一定程度上評測學生對知識的掌握能力,但是難以考覈學生的動手能力和具體案例分析及知識運用能力,無法單一的根據筆試試卷很好的評估學生的學習情況和專業素養。應該從多種形式考覈學生的知識掌握程度,實踐能力和綜合專業素養等。結合軟件工程課程的特點,考試的形式採用理論考試和實踐考試相結合的形式,分別所佔比例爲:平時表現佔總成績10%,理論考試佔總成績50%,實踐環節佔總成績40%。透過多種形式的考查手段,能夠更充分的瞭解學生對知識的掌握狀況和知識的實際運用能力。

四、結論

綜合軟件工程課程的特點,運用多種形式的教學手段,理論和實踐相結合,發展案例驅動的教學模式,有助於減輕學生對抽象的理論學習的枯燥感,增強學生的學習主動性,並且在實際的案例分析和設計中,增強軟件開發的實際動手能力和項目經驗。培養出符合社會發展需要的複合型人才。