?

面向工程思維能力培養的“軟件工程”課程改革

2023-07-11 16:40王榮存
科技風 2023年17期
關鍵詞:軟件工程創新意識

摘?要:“軟件工程”課程旨在培養學生運用工程化的方法和思維進行軟件的開發、運行和維護,以高效地開發高質量的軟件。針對該課程的特點及培養目標,以培養工程思維能力為導向進行課程教學改革,綜合運用多種教學方法,將創新意識和解決復雜工程實踐問題的能力培養融入教學環節中。通過教學改革,學生的創新實踐能力和工程思維能力得以提升。

關鍵詞:軟件工程;工程思維;創新意識

中圖分類號:TP3??文獻標識碼:A

The?Teaching?Reform?of?"Software?Engineering"?Course?Derived

by?Cultivating?Engineering?Thinking?Ability

Wang?Rongcun

School?of?Computer?Science?and?Technology,China?University?of?Mining?and?Technology?JiangsuXuzhou?221006

Abstract:The?purpose?of?software?engineering?course?aims?at?training?students?to?develop,function?and?maintenance?of?the?software?with?engineering?methods?and?thinking,so?as?to?improve?the?quality?of?software?and?reduce?the?cost?of?software?development.According?to?the?characteristics?and?training?objectives?of?the?course,the?course?teaching?reform?is?guided?by?the?training?of?engineering?thinking?ability.A?variety?of?teaching?methods?are?comprehensively?used?to?integrate?the?cultivation?of?innovation?consciousness?and?the?ability?to?solve?complex?engineering?practical?problems?into?the?teaching?process.Through?the?teaching?reform,the?students'?innovative?practice?ability?and?the?construction?of?engineering?thinking?were?improved.

Keywords:Software?engineering;Engineering?thinking;Innovation?consciousness

“軟件工程”課程是一門從技術(如數據庫、操作系統)到語言(如語法和語義),再到社會和心理學等[1]跨學科的課程。該課程旨在培養學生運用工程化的方法、思維進行軟件的開發、運行和維護,從而高效地開發高質量的軟件[2]。該課程對學生面向復雜工程問題求解的工程思維構建與實踐創新能力的培養至關重要。為此,需要更深入地探索更有效的教學模式,將創新意識和解決復雜工程實踐問題的能力融入教學環節中。這對學生創新能力的培養與工程思維的構建,特別是,通過課程改革為持續提升計算機科學與技術專業內涵,并充分發揮該一流專業在人才培養和專業建設中的示范作用具有重要的現實意義。

STEAM教育理念[3]源于美國,強調了跨學科融合的教育理念。其中,工程思維是該理念的核心。通過工程設計、研究和工程實踐培養工程思維,以綜合運用多門學科相關的知識解決現實中的復雜問題[4]。在“中國制造2025”背景下,教育部2016年發布的《中國學生發展核心素養》強調了實踐創新的本質是工程思維[5]。以實踐問題為驅動,以項目形式融入教學活動中,從而培養學生的實踐創新能力。鑒于“軟件工程”課程的特點,采用STEAM教學理念改革該課程是切實可行的。

1?“軟件工程”課程教學現狀

在實際教學過程中,存在過于偏重理論知識的講授,而忽略了實踐能力的培養[6]的問題。以教師講授為主的教學模式,學生的課堂參與度較低,導致學生學習積極性不高[7]。結合多年的“軟件工程”課程教學經驗,課程主要存在以下問題。

1.1?課程涉及知識面廣

“軟件工程”課程既包含分析(如需求分析)、設計(如界面設計、算法設計),又包含具體方法(如測試方法)與工具,課程內容眾多。課程知識之間存在一定的鴻溝,例如,如何從分析階段轉換到設計階段。另外,授課內容較為陳舊,當前新技術,比如微服務、低代碼開發等相關內容介紹得較少。

1.2?學生缺乏主動思考

以教師為中心的課堂教學模式使學生的課堂教學參與度較低,單向的、互動度較低的知識傳輸模式使學生長期處于被動狀態,缺乏批判性和創新性思維,致使教學效果不夠理想。

1.3?文檔書寫能力不足

學生對軟件開發過程中的相關文檔的撰寫與組織能力非常薄弱,缺乏專業文檔的認知和書寫能力。然而,這些文檔對軟件的開發、維護和不同人員之間的交流是不可或缺的。

1.4?項目案例庫建設力度不夠

當前項目案例類型單一、案例較少且比較簡單,為此,應該加強案例庫的建設,尤其結合當前流行技術和應用趨勢,加強業內關注度高和流行的項目案例庫建設。

1.5?考核方式單一

以筆試理論知識為導向的課程考核方式導致學生重理論、輕實踐,重理論、輕實踐的考核方式既不利于學生綜合能力的培養,也不能客觀、全面地評價學生的能力。

2?教學改革思路

針對上述問題,確定從以下三個方面進行教學改革:

2.1?課堂教學內容與方法改革

以培養學生實踐創新能力與工程思維為目標,重構教學內容。同時,課堂教學內容應緊扣軟件開發技術發展的脈搏,適時地引入當前流行的軟件開發新技術涉及的相關知識。以提高學生工程思維與創新能力培養為目標,采取靈活多樣的多種教學方式,讓學生積極主動地參與課堂教學,從而提高學生學習的主動性與積極性。

2.2?案例庫的建設

案例庫的建設有助于讓學生全方位地、深入地理解軟件開發中的每一項活動具體含義。案例庫的建設既要緊跟當前技術發展和業界應用趨勢,還要考慮學生個性化的需求。以案例作為軟件開發的知識載體,通過案例分析與實踐將枯燥、抽象的“軟件工程”基礎知識進行實例化、具體化。案例庫的建設需要高度體現統一過程這一思想,即以某個具體的項目為例,貫穿軟件開發的全生命周期。同時,還需要根據授課內容提供更加多元化的、類型豐富的教學案例。

2.3?課程考核方式的改革

傳統的考核方式中,課堂及課下作業的完成情況占30%;期末閉卷考試情況占70%。平時成績的評定沒有充分考慮學生的溝通、交流、創新實踐等多方面能力表現,也沒有考慮學生成績評定的參與度。在課程成績評定中需要體現出學生創新能力與課堂參與的成績,以客觀、全面地反映出學生的綜合能力。

通過上述三個方面的改革,最終形成以軟件開發任務為主線,問題為導向,案例分析為手段,通過PREPAID方法的實踐,逐步培養學生的工程思維和實踐創新能力。

3?教學改革具體實施措施

3.1?課堂教學內容與方法改革實施措施

以教學大綱與工程教育認證能力要求為指導,將課程目標進行分解。采用文獻調研、實地調研與學生訪談相結合的方法重構“軟件工程”課程教學內容,將原有的授課內容中的結構化分析相關的授課內容進行壓縮,同時增加軟件項目計劃與軟件新技術相關內容。教學方法上采用PREPAID方法[8]進行實踐,鼓勵學生參與課堂討論,在教學中過程中強調創新思維、工程思維和批判思維的培養,逐步形成獨立思考和相互協作相結合的教學模式。

3.1.1?建立課程學習小組

課前,提供3~5個候選項目,并根據學生人數進行隨機分組?;陧椖康谋尘爸R和個人興趣,每組選定一個軟件項目,以項目開發為目標驅動課程教學。

3.1.2?成果答辯

采用軟件項目管理的方式組織教學,每個階段完成后以學習小組為單位展示階段性成果,以此推動項目的順利實施。最終,以成果答辯的形式分享項目成果。

3.1.3?產學、研學協同,賽教融合

采用產學、研學相結合的教學模式。一方面,與華為公司進行深度合作,在實踐環節,引入了華為公司敏捷開發的項目案例。通過校企深度合作的項目實踐,讓學生全面深入地理解敏捷開發模型;另一方面,結合筆者在“軟件工程”方向的研究進行教學,拓寬學生的視野,激發學生的學習興趣。

3.2?項目案例建設的實施措施

3.2.1?引發軟件危機的案例庫

收集各種引起軟件危機現象的軟件項目案例,讓學生從失敗案例中汲取教訓,充分認識引起軟件危機的根源及其危害。

3.2.2?軟件開發模型庫

全面總結當前的軟件開發模型,并對其優缺點及使用場景進行分析,以便讓學生了解并熟悉在不同開發過程模型下軟件項目管理的區別和管理的重點。

3.2.3?軟件項目管理文檔模板庫

軟件開發涉及多個開發活動,每個活動的階段性成果都是通過各種文檔體現的。通過提供全面文檔模板庫,進一步提高并規范使用文檔的能力。

3.2.4?軟件項目工具庫

“軟件工程”涉及軟件開發的全生命周期,在每個階段都有一些流行的自動化或者半自動化工具,收集當前流行的、與每個階段相關的工具,如原型設計工具Aux?Pro;需求分析工具Visio;測試工具Load?Runer、Test?Manager;代碼管理相關工具SVN、Git;面向對象分析與設計工具Star?UML與Rational?Rose等。

3.3?課程考核方式實施措施

針對“軟件工程”課程的特點及其培養目標,進一步提高平時成績的考核力度,豐富平時成績的考核方式,期末試卷增加綜合應用能力的考核,強化學生工程意識和實踐能力的培養和考核。平時成績與期末成績各占50%,平時成績包括課程作業、課堂討論與課堂小組答辯等。課堂討論與課堂小組答辯兩部分的成績由教師與學生打分綜合計算,分別占60%與40%,學生打分是通過組間打分完成的。

4?教學改革效果評價

從教學的內容、效果、考核方式和方法四個維度設計了問卷,以評價教學改革的效果。針對授課的班級共發放問卷66份,有效回收問卷62份。問卷分析的統計結果如下圖所示。

觀察上圖所示的問卷調查評價結果可以發現,圍繞四個維度開展的教學效果的滿意度較高。另外,在第十一屆中國軟件杯大學生軟件設計大賽中所指導的學生獲得二等獎、三等獎各一項。這進一步表明,面向工程思維能力培養的課程教學改革取得了較好的結果。

結語

首先分析了現階段“軟件工程”課程教學中存在的主要問題,闡述了教學改革的必要性,進一步明確了以培養工程思維為導向的課程教學改革思路,并從教學內容與方法、案例庫的建設、課程考核方式三個方面進行了教學改革。最后,針對教學改革的效果進行了問卷調查。結果表明,面向工程思維能力培養的“軟件工程”課程教學改革取得了較好的結果。

參考文獻:

[1]Claes?W,Per?R,Martin?H,et?al.Experimentation?in?Software?Engineering[M].Springer?Heidelberg?New?York?Dordrecht?London,2014.

[2]Naur?P,Randell?B.Software?engineering:report?on?a?conference?sponsored?by?the?NATO?Science?Committee[J].Scientific?Affairs?Division,NATO,1969(1):231232.

[3]Connor?A,M,Karmokar?S,Whittington?C.From?STEM?to?STEAM:strategies?for?enhancing?engineering?&?technology?education[J].International?Journal?of?Engineering?Pedagogy,2015,5(20):3747.

[4]周光發,盧天鳴.實踐性研究的工程思維方法[J].實驗室研究與探索,2018,37(4):254257.

[5]核心素養研究課題組.中國學生發展核心素養[J].中國教育學刊,2016(10):13.

[6]胡勁松,張亮,黃海軍.項目驅動的啟發式教學在軟件工程課程中的應用[J].計算機工程與科學,2016,38(1):228231.

[7]楊楠,李童.案例教學視域下軟件工程“一體兩翼”教學模式的構建與實踐[J].高等工程教育研究,2020(01):177181.

[8]田文洪,祝峰,向艷萍.計算機專業英文教學PREPAID方法探討[J].計算機教育,2009(17):115116+107.

基金項目:中國礦業大學教學改革一般項目(2020?YB34)

作者簡介:王榮存(1979—?),男,博士,中國礦業大學計算機科學與技術學院副教授,碩士生導師,研究方向:軟件測試、軟件維護與軟件安全。

猜你喜歡
軟件工程創新意識
依托工作室的軟件工程實踐教學研究
應用瀑布模型的MOOC制作方法
融合APTECH體系的軟件產業人才培養探究
基于工程教育認證的《軟件工程》課程教學質量建設研究 
數學教學中培養學生創新意識的幾點嘗試
高中化學教學中學生創新意識的培養
關于如何創新和完善計算機軟件工程管理的探討
高中體育教學中創新意識的培養
淺析農村小學數學教學中如何培養學生創新意識
素質教育背景下音樂欣賞教學的實踐與思考
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合