王靜
摘要:隨著大數據時代下軟件產業的蓬勃發展,高校迫切需要深入改革軟件工程專業教學體系和教學模式。在分析現有教學模式存在問題的基礎上,結合河南理工大學研究生課程教學實踐,提出以案例庫為導向的現代軟件工程案例庫教學模式,在完善教學內容的同時,使課程內容更接近企業和社會需求,激發了學生的興趣,取得較好的教學效果。
關鍵詞:現代軟件工程;教學模式;案例庫;研究生
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2018)16-0139-03
一、引言
目前最活躍的技術要素便是軟件,軟件對于我們生活以及生產方式產生了極大的影響,同時軟件廣泛應用到了各個行業之中。例如,在游戲領域、教育領域、娛樂領域以及藝術領域等,均有軟件的應用。軟件產業逐漸轉變為了國家戰略型產業,軟件產業發展會對我國的經濟與社會產生重大影響,甚至會影響到國家安全,作為培養軟件開發人才的軟件工程教育日益突顯其重要地位。
現代軟件工程學科屬于綜合性的學科,其擁有非常強的實踐性。以往在開展軟件工程課程教學活動中,很多情況下是應用“填鴨式”的教學方式,整個教學工作重視“教”的過程,而學生的“學”則完全處于被動狀態。軟件工程課程由于設計的理論知識較多,學生往往感覺課程知識較為枯燥與乏味,失去了學習的熱情。采用案例教學的方法,能夠顯著的提升課堂教學效果,不過,卻無法全面挖掘出學生所擁有的自主學習能力,也不能使學生的創新能力得以提升[1]。因此,建設軟件工程案例庫,引入案例教學充實課程內容,切實加強軟件工程的教學模式創新與改革至關重要。現階段,我國本科教育改革持續深化,軟件工程課程的教學模式也得以持續創新。我國復旦大學把軟件工程實驗課程劃分成不同的層次,分別為認知性實驗課程、方法性實驗課程以及綜合性實驗課程[2]。北京大學對自身多擁有的軟件開發環境加以全面利用,通過建立不同的項目小組,讓學生在具體的項目實施過程中完成軟件開發的學習與實踐[3]。北京航空航天大學把已經趨于成熟的軟件工程實踐教學方法應用到課程教學過程中,使得學生的實踐能力得到極大提升[4]。山東科技大學通過建設具有個性化特色的軟件工程案例庫網絡輔助教學資源平臺,將軟件工程案例通過網絡資源平臺有效地收集管理和展示,為學習者提供案例研究的學習環境,可以改變傳統的教學模式,輔助軟件工程教學,提高教學效果和學生解決問題的能力[5]。武漢科技大學就軟件工程課程教學過程中出現的各種實際問題,依照學校以往積累的軟件開發經驗,從實戰的角度構建了軟件工程課程教學新模式[6]。本文結合河南理工大學研究生課程教育改革的實際,以現代軟件工程案例庫教學為例,探討了現有教學過程中存在的問題,并提出了以案例庫為導向的現代軟件工程教學模式,在完善教學內容的同時,使課程內容更接近企業和社會需求,激發了學生的興趣,取得較好的教學效果。
二、“現代軟件工程”課程內容及特點
現代軟件工程是指利用工程化一些理論以及工程技術,完成軟件開發工作以及軟件維護工作,將一些成熟的管理理論與制度與現階段先進的技術與工程相融合,以期用較少的代價獲取高質量的軟件。在軟件工程課程中,包含有七大主要專題,分別為軟件過程、軟件生命周期、需求分析、軟件進化、軟件模擬工具以及環境、軟件編碼以及測試、軟件項目管理等。上述幾個主要的專題包含有軟件開發中涉及的相關概念、理論以及方法等,其把軟件開發工作劃分成為不同的過程,重點闡述不同過程中軟件開發的步驟、技術以及工程等。高校之所以開設軟件工程這門課程,主要是為了使學生能夠全面的掌握軟件開發的過程,了解一些常用的軟件開發方法與技能,指導進行軟件開發時需要遵循的有關原則,讓學生擁有軟件開發以及軟件維護的技能[7,8]。
在進行現代軟件工程課程教學工作時,對于課程內容的選擇更加重視成熟性、先進性以及基礎性,要讓學生能夠接收到系統以及深入地實踐學習,讓學生能夠擁有創造性軟件設計能力,在軟件設計過程中可以自主的發現問題、分析問題與解決問題。在學習現代軟件工程課程以后,掌握軟件工程開發應當遵循的原則,可以利用相關的方法與技術完成一般性質的軟件工程開發工作。現代軟件工程應用面廣,涉及眾多學科領域,課程具有如下特點:
1.內容廣。軟件工程涵蓋了軟件開發和維護全過程,涉及軟件開發的過程與模型、方法和技術、工具和環境、標準和規范以及軟件工程管理等方面的內容,每一方面內容都包含許多相關理論知識點。
2.發展快。經過近半個世紀的發展,軟件工程已建立起了一系列有效指導軟件開發的最佳實踐,相關的技術方法更新迅速。
3.案例多。軟件工程的理論與應用中均包含大量案例。隨著軟件工程相關技術與方法的不斷發展,一部分新的案例不斷積累,舊的案例在教學實踐中逐步被淘汰。
三、基于案例庫的教學模式
1.建設軟件工程案例庫,豐富課程教學內容。現代軟件工程會涉及非常多的計算機學科知識,而計算機學科知識更新周期非常短。在計算機學科之中,一般以十年作為一個周期,會出現較大幅度的理論、方法以及技術的更新,但是,更新的新理論與新技術卻無法及時、全面的反映到教材之中,使得軟件工程課程所使用的教材內容相對陳舊,里面包含的大量案例均和現階段的理論與技術不相符。軟件工程教材的內容更新速率相對較慢,和軟件工程領域的前言技術更新比較而言存在顯著差距。而研究生則非常需求軟件工程學科一些前沿理論與技術,才能更好提升自身分析問題以及處理問題的能力。因此,在建設案例庫時要充分注意這些問題,案例的更新必須與時俱進,不斷地改進與發展。在進行案例的設計以及選取工作時,包含的工作量非常大,而且存在較大的困難,應當依靠長期教學實踐中的積累與探索,才可以確保案例設計更為科學與合理,才能確保案例擁有的作用能夠得以充分發揮。依照現代軟件工程相關課程內容,其案例庫建設內容主要可以包括軟件工程原理案例庫、軟件開發方法案例庫、軟件開發實例案例庫、軟件開發文檔案例庫、軟件項目管理案例庫等。例如,在軟件開發方法案例庫中,主要包括結構化方法類(系統功能建模、加工邏輯說明、系統行為建模、事務型軟件結構設計、變換型軟件結構設計、結構化程序設計、白盒測試用例、黑盒測試用例),Jackson方法類(Jackson程序設計、Jackson數據結構圖設計實現、Jackson程序結構圖設計實現、綱要邏輯),面向對象方法類(對象分析與設計模型、動態分析與設計模型、功能分析與設計模型、用例視圖設計實現、邏輯視圖設計實現、并發視圖設計實現、組件視圖設計實現、配置視圖設計實現)。上述和課程內容存在較強關聯性且高于課程內容的一些實際案例,能夠確保研究生的視野更加開闊,使研究生的見識有所增長,還能夠提高其學習和研究興趣,促使其變被動學習為主動研究,將自己的個人研究興趣與時代發展緊密結合在一起,確保能夠在未來就業過程中以及職業發展過程中占據制高位置,確保達到個人以及社會協調發展的目標。
2.引入案例教學環節,改革創新教學模式。對于現代軟件工程課程來說,理論教學與實踐教學是相輔相成的,要培養出具有高素質、綜合能力強的軟件人才,必須加強理論知識的教學。因此,在現代軟件工程課程教學中,要充分利用案例庫,將實際案例作為教學活動的導向,將學科內的前言知識及時引入至課堂教學中,發揮案例教學應有的作用,深入挖掘學生學習的能動性,確保學生能夠更加自主的開展學習活動[9]。在實際的課程教學中,應當依照不同學生掌握課程知識的具體情況,開展有針對性的教學活動,全面、深入地講解重要知識點,更好地利用啟發式教學方式,確保課堂教學效果的提升[10]。因為在目前很多的軟件工程教材之中,包含的一些案例存在不連貫以及項目規模的選擇不夠科學與合理等問題,因此,需要在基礎理論內容之后專門補充一些和理論知識存在緊密聯系的案例,作為理論知識學習的引導,選擇學生熟悉的、規模中等、有代表性的各類軟件開發案例,并且應自始至終貫穿于教學,充分體現典型性和全面性。比如,手機網上商城、新聞閱讀客戶端、社交網絡平臺等常用的移動平臺應用軟件。通過應用上述課程教學方法,首先,能夠讓學生在學習理論知識以及技術方法以后,確保處于不同基礎水平學生可以主動彌補以前未掌握的相關理論知識。其次,在案例的有效引導之下,能夠更好地提出課程學習重點內容,也可以讓學生了解到目前軟件工程學科之中的前言理論與技術。此外,在教學案例的選擇上還應注重現代軟件工程的新理論、新技術和新方法,把能體現需求分析、軟件設計、編程、測試和維護軟件開發全過程的案例引入課堂教學。這樣一來,采用案例教學的方法,除了能夠有效增強學生學習熱情,改善課程教學的效果。另外,采用案例教學的方法,還能夠讓學生非常自然地過渡到類似軟件系統開發過程中,把課堂上學習到的理論知識應用到實踐之中。
3.建立案例庫網上教學平臺,學習形式多元化。隨著互聯網的逐漸普及,涌現了一些新型的教學模式,如課程網站、慕課、賽課等。要想確保教學效果有效提升,就應當跟上時代的發展,通過采用網絡教學的手段,構建基于網絡的教學平臺。通過應用現代化的教學方法,構建網絡案例庫平臺,把教師在長期教學工作中所積累的案例,利用構建的網絡案例庫平臺進行全面收集以及展示,能夠使學生擁有更加良好的案例學習條件,轉變以往課程教學中教師占指導地位的局面,讓學生能夠成為課堂學習的主體,學生可以更加自主地開展學習活動,從而有效提升學生分析問題以及解決問題的能力。依照現代軟件工程教學工作具體情況,構建網絡教學平臺可以確保教師在教學過程中更加方便的獲取案例,同時還能為學生學習案例提供良好的環境。構建網絡案例庫平臺時,應當首先把一些設計以及精選的案例資源輸入案例庫之中,在平臺長期運行時,對案例資源持續的進行挖掘以及積累,確保平臺的案例資源得以日益豐富。另外,構建網絡案例庫平臺能夠打破以往課程教學中教育資源、方法以及模式的束縛,使得教學資源不受時間與空間的限制,能夠被教師與學生隨時隨地獲取。平臺還擁有非常強的交互功能,能夠有效地激發學生學習熱情,改善學生學習效率,使得學生學習質量顯著提升。
四、結語
當今社會的發展,對軟件人才也提出了新要求,要求軟件人才更加的專業化、層次化和國際化。高校在對軟件人才進行培養的過程中,也逐漸朝著高端化、實用化以及復雜化的趨勢發展。要想確保學校培養學生能夠達到現代軟件開發工作的具體要求,要確保學生能夠掌握科學的方法,擁有較強的理論知識,同時還要能夠熟練使用英語軟件開發過程中的各種管理工具,具備優良的職業素養。所以,在現代軟件工程教學中采用引入案例庫教學平臺,更加的有利于專業學位研究生學習現代軟件工程領域中前言知識,不僅會對其后續的研究工作帶來啟發,也有助于在將來的工作中正確的使用軟件工程的相關技術、方法和工具,提升自己的實踐能力和創新能力。在軟件工程課程的教學工作中,采用全新的教學方法,使學生實踐技能、合作意識、溝通技能、解決問題能力以及創新能力等均得以顯著提升,確保學生的綜合能力得以增強,確保我校“實踐育人”辦學目標的實現。
參考文獻:
[1]曾紅衛,劉悅,劉煒.軟件工程實踐教學方法探索[J].計算機工程與科學,2011,33(A1):15-18.
[2]彭鑫,趙文耘,錢樂秋.軟件工程實驗教學研究與實踐[J].計算機教育,2007,(20):15-17,28.
[3]孫艷春,王立福,梅宏.軟件工程本科教學的探索與實踐[J].計算機教育,2009,(16):112-115.
[4]劉超.關于“軟件工程”課程體系的基本架構及課程系列設置的探討[J].計算機教育,2009,(21):22-26.
[5]孫紅梅,賈瑞生.基于網絡的軟件工程案例教學資源平臺建設[J].實驗室研究與探索,2010,29(11):48-51.
[6]杜立智.軟件工程教學與實戰剖析[J].計算機時代,2011,(8):57-58.
[7]肖宿.軟件工程課程教學方法初步探索[J].電腦知識與技術,2012,8(14):3328-3329.
[8]盧瑩,林蔭.《軟件工程》課程教學改革與實踐[J].教育教學論壇,2014,(2):42-43.
[9]李天宇,張東輝,等.軟件工程課程實踐教學的改革與研究[J].長春工程學院學報(社會科學版),2013,14(4):155-157.
[10]趙淑芳,陳立潮.基于項目導向的啟發式軟件工程教學模式研究[J].大學教育,2015,(11):165-166.