陳蒙,李學志
(新疆理工學院 信息工程學院,新疆阿克蘇 843100)
為進一步有效推動工程教育改革創新的實效,2017年教育部首次正式提出了新工科的教學理念。新工科的理念也正式融入全國各大高校的教學中,由此開啟了新工科建設的新篇章。“軟件工程”課程涵蓋軟件工程學基本理論、基本原理、基本方法和技術,有助于幫助學生培養綜合能力,構建學生對問題系統的分析和求解能力,培養學生使用工程的方法和對于問題系統進行管理和維護的能力[1]。“軟件工程”課程作為高等學校計算機相關專業的一門核心課程,綜合性比較強,主要是用工程的思想和方法指引軟件開發。在工程教育新理念下,“軟件工程”課程現有的教學模式和教學方法需要及時更新,以適應新工科的要求。
在“軟件工程”這門課程的實際教學過程中,課程涉及的理論內容比較多,另外課程存在著一定的綜合性和實操性,故授課難度比較大。而課堂授課一直以來都是以傳統的教學模式為主,任課教師使用多媒體PPT 講解,教師是主體,學生在課堂中的學習往往是被動接受的狀態,雙方互動有限,再加上課程中的基本理論較多,知識點過于抽象,出現的結果往往是學生一時無法很好消化課堂內容,更不用說要將理論知識與實際應用融會貫通。對于課程的實踐教學環節,部分任課教師和學生缺乏足夠重視,相關院校也沒有設置專門的實踐場所,課程的教學學時有限,導致理論教學環節與實踐教學環節脫節。
“軟件工程”課程目標主要是培養學生的軟件開發設計和對軟件產品的工程管理能力。然而,現實情況是由于學時和課程內容的緣故,課堂教學的重點往往是傾向傳統的軟件工程學原理、方法和技術來開展,教學主線圍繞“可行性研究階段”“需求分析階段”“總體設計階段”“詳細設計階段”“實現階段”這一程序開發流程[2],由于教學內容和學時的緣故,實踐環節往往難以達到預期效果,沒有讓學生真正地從實踐環節的設置認識到軟件開發的流程以及如何通過科學的方法進行項目管理。再者就是對于課程的考核多是以期末閉卷考試進行,單一的考核方法不能對學生進行全面的考核。
基于新工科建設背景和軟件行業的發展以及“軟件工程”課程在專業建設中的核心地位。針對課程教學中出現的一系列問題,以培養學生的實踐能力為出發點和目標,以培養出軟件工程科技人才為長遠目標。首先需要明確課程的培養目標,“軟件工程”課程的培養目標是根據課程的性質和特點制定,授課重點放在學生對軟件工程基本思想的理解上,使其運用軟件工程的方法、原理和技術去解決實際存在的問題。
2.1.1 培養解決實際工程應用問題的軟件工程人才
在新工科背景下,既要培養專業素質過硬,具有真本領、真學識的應用型人才,又要與課程思政緊密結合,深挖課程中的典型思政案例,緊密結合專業知識,反映新時代課程發展的動態前沿,鼓勵學生學好課程知識,能夠利用課程知識解決實際工程應用問題。
2.1.2 培養崗位適用的軟件工程人才
緊密聯合周邊的行業企業,培養一批能夠滿足周邊崗位需求、社會適應度高的軟件工程人才,使得學生畢業后能夠順利走向工作崗位,能夠利用課程專業知識舉一反三、推理演算,解決企業現場難題。
2.1.3 培養具有國際視野的軟件工程人才
專業知識要與國際社會接軌,培養學生的國際視野,打破壁壘吸納先進的技術轉化創新,結合工程案例開發設計軟件,針對某一領域進行技術研究,攻關克難。
2.1.4 培養終身學習的軟件工程人才
學生要具備終身學習的素養,學校不僅要培養學生調研發現問題、團隊協同創新、組織領導決策、總結方法途徑的項目管理能力,更要培養學生愛國主義情懷,具有社會責任感的工程素養,能夠不斷提升專業能力。
2.2.1 優化“軟件工程”課程教學體系和內容
根據課程的教學目標和特點,將“軟件工程”課程內容整合與優化,根據專業學生的培養目標,有針對性地設計課程教學大綱以及制定相應的教學內容。“軟件工程”課程內容涉及的理論知識點比較瑣碎,知識體系也比較龐大,在有限的學時內達成原有的課程目標是比較困難的。一般情況下,任課教師注重講授傳統的軟件工程學方法,而忽視面向對象的軟件工程學方法的講授,這樣導致的結果就是學生接受的知識體系不夠完整,故我們可以把傳統的軟件工程學的方法和理論以軟件生命周期為時間線整合在一起講授,把面向對象的軟件工程學方法和理論結合UML 統一建模語言放在實驗環節進行講授。任課教師在課程教學的過程中注重培養學生的計算機思維和解決工程問題的能力[3]。
2.2.2 課堂教學多元化
眾所周知,傳統的教學理念和教學手段往往是以教師為主體,任課教師一味講授,學生則只能被動接受。這種教與學的方式已經不太適合現在的教學環境,而且教學效果也不是很理想。借助于新課改,我們采用線上與線下相結合的方式來開展新的教學活動,充分利用網絡資源的優勢,讓學生不只是在課堂中學習,在自己熟悉的網絡世界中亦能很好地去學習。
課堂理論教學可以利用雨課堂工具,讓其成為一個連接教師與學生之間的有力樞紐,把課前預習環節、課中學習環節和課后反思環節都緊密聯系在一起,比如任課教師可以把與課程有關的備課資源推送給學生,讓學生提前熟悉上課內容;而課堂考勤、課堂提問也可利用雨課堂這一工具,改變傳統課堂統計不便、浪費時間等問題;同時,將網絡資源作為課程理論教學中的有力補充,讓學生在課堂之外也能沉浸式學習,與課堂的教學做到有效結合。
2.2.3 完善考核評價體系
課程考核方法與評價反饋機制是整個教學過程的一道重要屏障,應該要貫穿整個教學活動。對“軟件工程”課程的考核除了期末考試的卷面成績之外,還需要包括平時課程的過程性考核部分,我們需要對與課程的過程性考核方案進行全面升級與優化。
過程性考核方式著重考查的是學生的實操能力和解決實際問題的能力,針對傳統的軟件工程學方法,從可行性研究、需求分析、總體設計、詳細設計到實現與維護,每一個階段都進行小組討論,重點針對某一個問題系統進行問題定義、問題分析和問題求解。授課教師根據各小組的完成情況進行考核賦分,成績按照一定的比例計入總體評價中。針對面向對象軟件工程學方法,可以結合UML 統一建模語言,從面向對象的分析、面向對象的設計、面向對象的實現等階段進行問題建模,具體在課內實驗環節去考查,成績按照一定的比例計入總體評價中。
為了更好地適應新工科的建設要求,從專業人才培養的角度出發,實踐課程的培養目標既要包括現實問題的解決能力,培養學生的工程思維模式,又要保證實驗開出率百分之百,這無疑是對課程建設提出的新要求。針對本校“軟件工程”課程實施情況,實踐學時一直占有很大的比例,2021 級軟件工程專業修訂后的培養方案中“軟件工程”課程的實踐環節又加大了比例,這無形中對課程實踐建設提出了新的要求。
2.3.1 實驗課程教學目標調整
教學改革的最終成果要落實在學生身上,通過學生的教學感悟去體現課程改革的價值與目標。為了達成這一教學成果,首先,我們要及時把握行業發展動態,掌握行業前沿發展技術,動態更新課程培養目標和課程的體系框架,主要目的是讓學生具備基本的軟件開發能力和工程思維方式。
2.3.2 實驗課程體系構建
任課教師應改變原有的教學理念,以新工科、OBE為抓手,課程實踐教學改革重點關注課程實驗環節、課程實訓環節、畢業論文(設計)環節,有針對性地設計實驗實踐教學體系[4]。
實驗環節:根據實驗學時安排,結合理論知識要點,總結選取代表性章節的理論開展演示、驗證、綜合實驗。根據實驗難易程度、設備數量、班級人數合理分組分段進行實驗,給學生足夠的時間進行推理、驗證和總結。根據授課計劃安排,學院統一安排實驗時間,避免因設備稀缺造成實驗沖突的現象。同時可以適當應用虛擬實驗平臺或遠程鏡像實驗平臺,減少因設備故障所需的維護,學生可以充分利用課余時間自主完成實驗,更好地總結理論知識。
課程實訓環節:集中實踐是訓練學生合作共贏的有效場所和孵化基地,既可以使學生相互討論學習,又能以實踐為載體、任務為導向,在課程設計過程中鍛煉學生創新設計開發軟件的能力。
畢業論文(設計)環節:畢業設計可以是學生自主選題、指導教師課題或企業橫向課題,畢業設計要利用軟件工程專業知識解決某一特定或綜合性的問題,要有一定的工作量的考核和評價標準。學生在完成畢業論文的(設計)過程中,通過查閱資料、撰寫論文、畢業答辯,能夠將知識融合,可為以后的工作提供經驗和思路。
2.3.3 課堂教學與實驗教學相結合
課程教學一般指的是課程的課堂教學和實踐環節教學兩部分,授課教師需要把兩者很好地融合和貫通。比如在講授面向對象軟件工程學方法時,可引入UML統一建模語言來對問題系統進行建模,這也是一種很好的面向對象的分析方法。借助Visio 或者Rational Rose 可視化的建模工具,用面向對象的軟件工程學方法對問題模型進行分析和求解。通過模型可以更好地理解問題定義,體會軟件工程學思想,進一步加深學生對課堂教學的理解。在課程對應的集中實踐環節中,課程內容可設置為模擬一個小型的軟件開發系統,從問題定義、問題分析以及問題解決階段,用課程學習的知識去解決真實場景中存在的問題。
結合學科的課程特點,借助大學生創新創業訓練計劃平臺,支持鼓勵學生參與進來,檢驗其理論聯系實踐的能力。通過這樣的訓練,讓學生了解專業前沿以及學科發展的動態,還可以培養學生的動手能力。其次,可以有選擇地讓學生參與任課教師的科研課題,讓學生們切切實實地感受到書本中的知識是如何幫助我們解決實際問題的,進而實現課程教學與科研課題的有力結合,拓展大家的思維方式和視野[5]。
近幾年學校和學院都制定了學科競賽獎勵制度,鼓勵學生參與各種各樣的學科競賽[6]。通過這種途徑的實踐,一方面鍛煉了學生的創新創業能力,另一方面也鞏固了課堂教學的成果。為了突出實踐教學,以學科競賽為引導,對涉及的課程信息加以總結和分析,提煉出問題,開展專項訓練和講座。同時根據競賽制定課程實踐計劃,有針對性地去設計課程實驗項目。
在新工科的背景下,按照新工科的要求對“軟件工程”課程改革進行了探索,使課堂教學、實踐教學、教學系統、評價體系不斷完善,力爭培養出適應地方軟件產業發展需求的人才。