婁蘭芳 任滿杰 賀秉庚
摘要:“軟件工程概論”是軟件工程專業(yè)的重要的核心基礎課程,也是一門理論和實踐性都較強的課程。針對該門課程的教學,提出了加強學科知識體系課程間的關聯(lián)、改革教學方法、基于項目驅動的實踐教學環(huán)節(jié)和創(chuàng)新考核方式等若干教學改革措施,這些措施促進了課程建設,有效地提高了教學質量。
關鍵詞:軟件工程概論;教學方法;教學改革
中圖分類號:G642 文獻標識碼:B
1引言
“軟件工程概論”是軟件工程專業(yè)的一門專業(yè)必修課程,是一門理論和實踐要求都較強的課程。通過對該門課程的學習,學生要比較系統(tǒng)地了解軟件工程的原理、方法和技術,提高分析問題和解決問題的能力,了解軟件開發(fā)過程,具有初步的軟件開發(fā)能力。但是該課程覆蓋的內(nèi)容比較多,除了軟件開發(fā)技術外,它還涉及工程方法、管理學、度量學、經(jīng)濟學等學科,因此學生往往感到課程內(nèi)容抽象、不好理解。這就要求教師在教學過程中如何把抽象的原理和方法采用類比法、案例的形式講解,在實驗課時,怎樣引導學生理解和消化課堂上的理論,如何加強學科間知識體系的關聯(lián)來培養(yǎng)學生的實踐能力、動手能力和綜合能力。
2教學方法的改革
2.1案例教學
在教學過程中,開展以學生為主體的案例式教學,克服了傳統(tǒng)的“教師教、學生學”的模式,在講授每一種開發(fā)方法時,并不是孤立地講解理論,而是通過案例分析,以使學生理解這種方法。在教學過程中,給出具體的案例,即提出問題,引導學生在問題中學習,給學生時間思考、討論以解決問題,使學與用一體化,從而更深入地學習。案例的選擇也是非常關鍵的,盡量選擇學生比較熟悉的領域,如圖書管理系統(tǒng)、課程注冊系統(tǒng)、教學評價系統(tǒng)、學籍管理系統(tǒng)等,這些貼近學生日常生活的領域有助于學生對案例需求的理解。課程開始,將學生分為若干個項目小組,并為每個小組確定一個負責人,課下以小組的形式去調(diào)研、討論。在課堂上教師以一個完整的項目案例貫穿于整個理論教學過程中,學生則帶著自己項目中的問題去理解、思考教師所講授的內(nèi)容。學生的作業(yè)主要是開發(fā)每個階段應該提交的文檔,注意在每個階段結束時以小組為單位進行匯報,大家討論,教師發(fā)現(xiàn)問題及時糾正,最后進行總結。這樣不但強化學生的參與意識,而且加強學生的動手能力的培養(yǎng)。
2.2類比法和多媒體技術
類比法也叫“比較類推法”,是指由一類事物所具有的某種屬性,可以推測與其類似的事物也應具有這種屬性的推理方法。與其他思維方法相比,類比法屬平行式思維的方法。“軟件工程概論”課程的教學內(nèi)容具有較強的抽象性,傳統(tǒng)教學手段無法直觀、形象地描述一些理論的技術,使用類比法講授相關理論可以使抽象、陌生的概念變?yōu)榫唧w、熟悉的知識,降低知識理解的難度,讓學生更容易理解,從而加深對教學內(nèi)容的理解和掌握。例如:在講授軟件設計的基本的概念時,為了幫助學生理解模塊獨立性、內(nèi)聚、耦合等概念,把模塊類比成家庭,把模塊間的聯(lián)系和模塊內(nèi)部語句之間的聯(lián)系類比成家庭之間和家庭成員之間的關系,將抽象、難以理解的概念轉換為比較形象的容易理解的概念,以加速學生的理解過程。利用類比法采用多媒體技術,借助于動畫使教學形象化。如測試的流程等就可以做成Flash動畫,讓學生更清楚直觀地看到測試基本過程。在教學過程中注意要把板書、多媒體課件和軟件開發(fā)環(huán)境有機地結合起來。
2.3加強學科知識體系間的關聯(lián)
“軟件工程概論”是一門工程學科,它必須與其他學科相結合才能產(chǎn)生有價值的成果。在整個軟件開發(fā)的過程中,將會涉及到各種其他學科的知識,教師在設計任務時必須注意與其他多種學科結合,這就要求教師加強與同課程體系教師間的相互合作和交流。對軟件工程專業(yè)同時開設的主要課程進行分析,找到關聯(lián)緊密三門課程,數(shù)據(jù)庫、JAVA編程、軟件工程概論,任課教師間應該多溝通,如何讓學生把所學的各門知識集中在一起,融會貫通。這就要求相關課程的任課教師,可在開學前一周,協(xié)調(diào)教學計劃,也可采用同一項目。例如,通過“課程注冊管理系統(tǒng)”共同完成三門課程的講授,項目的開發(fā)分為后臺數(shù)據(jù)庫設計以及前臺界面的開發(fā)。在數(shù)據(jù)庫設計方面,數(shù)據(jù)庫任課教師完全可以從項目的數(shù)據(jù)庫設計來講解所有的教學內(nèi)容。然而在前臺界面的開發(fā)上,JAVA編程教師則可以引導學生進行相關編碼。而整個項目開發(fā)過程則可以用軟件工程的方法進行開發(fā)和管理,尤其是分析、設計和相關文檔的提交。這樣通過一個項目的完成,三門課程的內(nèi)容也得以消化,學生也能理解課程間的相互關系。學習的目的性也更加明確,學習效率也會更高。
3開展項目驅動的實踐教學,提高學生解決問題的能力
本實驗課程主要讓學生掌握應用程序從系統(tǒng)分析、功能設計、數(shù)據(jù)庫設計、模塊設計到編程、測試、軟件發(fā)布等一系列軟件開發(fā)過程,使學生具有一定的軟件開發(fā)能力。
把實踐教學和項目開發(fā)相結合,實施基于項目驅動的實踐教學環(huán)節(jié)。學生在實踐環(huán)節(jié)中主要完成理論學習過程中形成的分析、設計文檔,以小組成員分工協(xié)作的方式共同開發(fā)一個完整的項目,學生的學習活動是在項目開發(fā)的各項過程和活動的驅動下完成的。教育家皮亞杰認為:教學以學生為中心,利用情景、協(xié)作、會話等學習環(huán)境要素,使學生成為知識意義的主動建構者。在實踐教學中加強各門課程實驗之間的聯(lián)系,強調(diào)以學生為主,教師為輔的教學模式,在時間上實驗課程應集中安排在相關課程學習的后半個學期。開展項目教學,在軟件工作室內(nèi)進行教學,學生以項目開發(fā)為主線,在教師的全程指導下進行專業(yè)課程的學習。
基于項目驅動的實踐教學環(huán)節(jié)側重培養(yǎng)學生發(fā)現(xiàn)問題、獨立分析問題和解決問題的能力以及團隊合作精神,使學生初步體會到軟件開發(fā)項目全過程。
4創(chuàng)新考核方式
利用考核環(huán)節(jié)的杠桿作用,在考核方式、考核內(nèi)容的選擇上均應體現(xiàn)知識、能力、素質三位一體的思想,促進學生學習能力的提高。
重視實驗的考核,加大實驗在成績中所占的比例。但為了防止同一組中個別同學濫竽充數(shù),可采取以答辯形式進行考核。從項目立項開始,進行系統(tǒng)需求分析、設計、實現(xiàn)與測試、評價等各環(huán)節(jié),每個階段應提交相應的文檔,并進行檢查和交流,對檢查中發(fā)現(xiàn)的問題和不足要進行改進和完善,才可進入下一個階段的工作。每一個階段都要求嚴格控制。項目結束答辯時,先讓小組長對他們的項目的功能及基本情況作一個陳述,然后讓每個同學說明在整個項目開發(fā)過程中所完成的任務,老師可針對每個同學的實際負責的部分進行提問,了解每個同學所完成的任務及對知識的掌握程度,給出公正客觀的評價。在項目驗收之后,除遞交系統(tǒng)和文檔外,每個同學還必須總結項目開發(fā)過程中的心得體會。
5結束語
在“軟件工程”概論的教學過程中注重學科間的關聯(lián),在教學方法采用了以案例為主的啟發(fā)式教學模式,在實踐的教學上采用了基于項目驅動的教學環(huán)節(jié),在考核方式上采用多種手段相結合重視實驗考核等若干教學改革措施,這些措施促進了課程建設,有效地提高了教學質量。
參考文獻:
[1] 宋海玉,李錫祚,王玲芬,等.面向對象程序設計課程建設的探索與實踐[J].計算機教育,2009(5):91-93.
[2] 馬建珍.利用類比法培養(yǎng)學生的創(chuàng)新思維[J].甘肅聯(lián)合大學學報:自然科學版,2005(19).
[3] 張宇晴,鄭小建. 高校軟件專業(yè)實驗教學與管理改革的研究[J].計算機教育,2009(5):84-86.
[4] 何克抗.建構主義——革新傳統(tǒng)教學的理論基礎[J].電化教育研究,1997(3):3-5.
[5] 黃明和,雷剛,郭斌,等.“導師制下項目驅動教學模式”的研究與實踐[J].計算機教育,2007(1):30.