郭東恩,劉黎明
(南陽理工學院 軟件學院,河南 南陽 473000)
工程教育專業認證是國際通行的工程教育質量保證制度,2016 年6 月中國正式成為國際本科工程學位互認協議《華盛頓協議》的會員國,代表我國的工程教育質量得到了國際的認可[1]。工程教育專業認證中,課程達成度評價是其中的核心環節,它將人才所具備的各種能力細化,對應于相應課程的各種指標,因此,工程教育專業認證背景下基于達成度的課程考核評價改革變得尤為關鍵[2-3]。
面向對象程序設計課程在軟件工程專業課程體系中是一門專業基礎和面向實際應用的課程,屬于理論和實踐緊密結合的軟件類核心課程,以培養學生的實踐動手能力、創新能力為主要目的。該課程的目標主要有4 個:①掌握面向對象程序設計的基本理論知識;②掌握封裝、繼承、多態等面向對象程序設計的基本原理和編程方法;③具備應用面向對象程序設計思想進行軟件分析和設計的能力;④掌握應用面向對象進行編程的技能,具有利用開發工具解決實際問題的能力。該課程不同于其他傳統課程,有其自身特點:①注重實踐;②較強的靈活性和開放性;③對學生創新思維和綜合應用能力要求較高[4-5],因此對該類課程的考核評價不能單純使用傳統的考核評價方式。
工程教育專業認證中的課程達成度評價是指根據學生課程考核材料和考核成績定量評價課程目標的達成情況。該課程以前考核評價方式,主要包含3 部分:平時考核、實驗考核和期末卷面考核,對于前兩個課程目標,使用卷面考試的形式進行考核,而后面兩個目標涉及分析設計能力及具體應用能力的考核,主要通過實驗考核和平時考核來完成,但由于平時考核和實驗考核往往流于形式,導致后面兩個課程目標難以落到實處,存在的主要問題如下。
1)平時考核難以監控,流于形式。
平時考核主要以課下作業為主,教師根據授課內容布置課下練習作業,學生完成作業以電子文檔形式上交。由于缺乏有效的監控過程,一大部分學生直接復制粘貼別人作業上交,教師難以甄別,所以批改時應付了事,導致成績不能真實反映大部分學生的平時表現,同時導致學生不重視平時考核,教師也無能為力。
2)實驗考核驗收困難,難以落實。
雖然設置了實驗課程,但是,由于實驗過程的監控和驗收費時費力,大部分老師只是通過實驗課上簡單的輔導,課下批改學生提交的實驗報告給定實驗成績,大部分學生實驗課不認真做,課下拷貝別人的實驗報告,教師難以區分,實驗成績無法區別學生的實踐動手能力。最終導致學生對實驗存在應付心理,對動手實踐不重視,從而影響了學生創新能力和動手能力的培養[6]。
3)評價體系不夠合理。
該課程目前雖然包含了平時考核、實驗考核和期末卷面考核,但各部分所占比例和具體考核體系不夠完善,不能很好地考查學生的實踐編程能力和創新能力,從而無法保證課程目標的實現。
這些問題導致學生“重知識,輕能力;重記憶,輕創新;重理論,輕實踐”的現象,不能綜合應用所學知識解決現實問題。這種狀況限制了學生創新思維能力和空間,與培養較強實踐能力和創新能力的軟件工程人才培養目標相違背[4,6]。另外,由于平時和實驗考核成績不能真實反映學生的實際動手能力,所以基于課程達成度的評價難以反映課程目標的達成情況。
由于軟件類課程考核評價體系中存在的問題,為進一步深化教育教學改革,引導培養具有較強實踐能力和創新精神的應用型、創新型軟件人才,結合學習產出的OBE 理念和CDIO 工程思想[7],以“考能力,重過程”為指導思想,提出以能力考核為中心的過程化考核和終結性考核相結合的評價體系[8-9]。過程化考核應充分利用信息化手段實現學生的動手能力和創新能力的考核;終結性考核應注重利用信息化手段實現課程基本理論內容的考核。其中過程化考核包含4 部分:隨堂評測考核、實驗評測考核、綜合項目考核和社團評測考核。具體的成績構成和各部分考核項目和重點如圖1 所示。

圖1 學生最終成績構成
通過推行以能力考核為中心的過程性和終結性相結合考核方式,將考核的重點從知識傳授向實踐動手能力培養、創新能力提升的方向轉變,提高能力考核在總考核成績中的權重賦值,加強對學生學習過程的管理,重視學生創新能力的培養,實現考核內容向注重綜合能力考核轉變,成績評定向綜合性轉變,使考核真正成為學習手段而不是目的[5]。并且考核過程中應充分利用信息化手段自動記錄考核過程和考核結果,使得基于課程目標達成度的評價更加真實可靠,保證課程目標的達成。
為了實現軟件類課程過程化考核改革,軟件學院充分利用互聯網和自身優勢,基于“互聯網+教育”理念開發了在線評測系統,該系統目前只針對面向對象程序設計和數據結構課程,實現了以能力考核為中心的過程化考核方式[5,10]。通過在線評測系統,可以實現隨堂評測、實驗評測、項目評測和社團評測等多個階段的學生實踐能力的考核,把對學生的能力考核放在不同階段,由軟件量化記錄。通過系統不僅提升了教師的課堂教學效果,使課程的過程性考核簡單易行,同時可使學生更加重視實踐動手能力,激勵學生主動學習,規范了學習行為,提高了學習的有效性,促進了學生綜合能力的培養。
除了通過在線評測系統對學生能力進行過程性考核外,課程的期末考核利用學院開發的“在線考試系統”進行考核[7,11],試題涵蓋教材的重點內容,側重考查學生對基礎理論的掌握程度,學生試卷根據組卷策略生成,做完后大部分題目自動批改,部分題目需要教師審查和批改,最終生成期末考核成績。
為了對學生的動手實踐能力和創新能力進行考核,切實保障課程的后兩個目標的達成,我們采用了自行研發的在線評測系統實現以能力考核為中心的過程化考核過程,具體包含4 部分:隨堂評測考核、實驗評測考核、綜合項目考核和社團評測考核。
課堂是學生與教師直接接觸的主要場合,學生在課堂的表現可以考核學生課堂參與度。以往的課堂表現考核主要通過考核學生的出勤率、課上主動回答問題和提出問題的參與情況來評定。但實施起來難度較大,教師記錄、統計不方便,也沒辦法全部覆蓋,無法實現達成度的計算,對大部分學生也不公平,因為真正愿意主動回答問題、提出問題的還是少數同學,而考勤更是流于形式,以往的課堂表現考核并沒有起到應有的作用[4]。
在線評測系統進行隨堂知識點的評測,具體過程為:教師根據課程安排,提前在評測系統設置隨堂測試題目,這些題目只關注某個知識點,相對簡單,為了節省學生錄入大量代碼的時間,教師可以提前預設程序主體,只留考查知識點對應的部分讓學生填寫,學生完成后進行程序編譯運行,并保存測評結果。通過這種形式,可以邊講邊練,讓學生及時動手,在課堂掌握重要知識點。為了引起學生對隨堂測試的重視,把該部分設置為課程最終成績的10%,并且,只記錄隨堂測試時間段提交的成績,并且設置學生只有全部通過對應階段的隨堂測試,才能進行下階段的實驗評測。
隨堂考核主要考查學生課堂聽課效果及關鍵編程知識點的掌握應用情況。通過在線評測系統進行隨堂知識點的評測,可以讓學生專注于老師講解的重要知識點,通過隨堂動手實踐掌握這些知識,提高學生編程基礎能力。從另一個角度來看,也起到了督促學生認真聽課的作用,同時增加了學生動手實踐的成就感和學習信心。
軟件類課程以往的實驗考核,老師提前布置實驗內容,學生在固定的時間固定的機房完成實驗,然后提交實驗報告,課后老師通過批改實驗報告給定實驗成績。這種組織形式,導致好多學生對課程實驗不重視,實驗課隨便應付,課下抄抄別人的實驗報告提交系統萬事大吉,因為學生應付,老師批改實驗報告也不認真,導致實驗考核沒有達到應有的目的[9]。
通過在線評測系統進行實驗考核過程為:老師按實驗教學大綱規定提前設置實驗題目,隨堂評測全部通過的學生可以完成對應階段的實驗,實驗內容控制在實驗課程規定的時間完成,完成后系統自動判別并記錄每次實驗成績及其他相關信息,另外,學生還需要通過系統提交實驗報告,對實驗進行分析總結;該部分成績包含兩部分:課堂實驗成績+實驗報告成績,占最終成績的30%。
實驗評測考核主要鍛煉學生編程實踐能力,同時通過實驗把理論和應用結合起來激發學生學習興趣。實驗的內容按照實驗大綱要求,并由課程組老師精心組織成適合于通過評測系統自動評測的內容。通過評測系統自動判別記錄實驗結果和成績,不僅實現了學生實驗的實時監測,一定程度上避免了學生拷貝其他同學的實驗內容,還把教師從繁重的驗收工作中解脫出來,可以專注于課程內容的準備和教學方法的改革。
為了檢驗學生綜合應用能力和創新能力,在課程考核中增加了綜合項目評測,教師在課程進行一半以后,通過在線評測系統設置難度相近的多個項目,讓學生自主選擇,提前準備,提前設計,并最終進行編碼實現。通過綜合項目檢測學生的綜合應用能力、創新能力和解決實際問題的能力。綜合項目考核在課程結束后提交,通過系統編譯,能正常運行自動記錄成績,并且還要求學生提交相應的項目文檔,鍛煉學生的文檔組織能力。綜合項目考核占總成績的15%,主要考核學生的綜合應用能力和創新能力。
項目考核主要考查學生分析解決問題及編程實踐的能力[12],即考查學生由理論轉化為實踐的能力。通過綜合項目考核,學生真正把課程的所學的知識進行綜合應用,并結合實際的場景進行創新設計,不僅提高了學生的實踐動手能力和創新能力,還鍛煉了學生文檔組織能力和解決實際問題的能力。
軟件學院建立各種學習類社團20 多個,每個社團依托某個專業方向申請一個實驗室作為開放實驗室,學院鼓勵學生參與社團管理的開放實驗室,每個社團定期由上一屆學生為下屆學生進行培訓及評測,社團可以通過在線評測系統設置評測題目,讓學生提前學習課程內容,或者進行知識點強化和適當知識擴充。該部分作為社團加分項,記錄成績,占最終成績的5%。
社團考評主要考查學生課外實踐練習的參與情況。通過社團考評,可以實現社團以老帶新,促進學習氛圍,還為學生提供了大量的課外實踐練習的機會;另外,通過社團的提前培訓和強化培訓,讓學生提前學習課程知識點和強化重要知識點,以便更牢固地掌握課程知識;同時,通過擴展知識的培訓,讓學生了解掌握更多課堂外的相關知識和應用,提高學生學習課程的興趣。
通過采用以能力考核為中心的過程性考核和期末考試相結合的考核方式改革,期末卷面考核主要考查學生基礎知識和基本理論掌握程度,隨堂評測考核主要考查學生課堂聽課效果和編程基礎的掌握情況,實驗評測考核主要考查學生基本的編程實踐能力,而綜合項目考核主要考查學生分析解決問題及編程實踐的綜合能力和創新能力,社團考評主要考查學生課外參與課程實踐練習的情況。新的考核方式從多個方面實現了對學生全面的考核,并且通過“在線評測系統”和“在線考試系統”保證了考核結果的準確性,保障了課程目標達成度計算結果能真實反映學生的知識掌握情況和相關能力。
通過以能力考核為中心的過程性考核提高能力考核所占比例,使期末考試成績僅占總成績的40%,既能考查學生對基礎知識的掌握水平,也能較好地考核學生的實踐動手能力、綜合能力和創新能力,在一定程度上減輕了學生死記硬背理論知識的負擔和壓力,提高了學生動手實踐的積極性,激發了學生的創新精神,同時也增強了學生的創新能力,從整體上提高了學生綜合分析問題和解決問題的能力。
從2017 年秋季學期開始,軟件學院在面向對象程序設計課程考核中采用新的考核評價方法,課程結束后,通過問卷調查和學生打分了解到,學生對編程基礎和理論知識的掌握程度,尤其是編程實踐能力和創新能力方面,都有了顯著的提高。另外,考核方式改革后,學生參加大學生程序設計競賽的熱情顯著提高,獲獎人數和級別也有了新的突破。2018—2019 年在國家級和省級各種程序設計競賽獲獎200 多人次,最高獎項為“藍橋杯”國際大賽一等獎。可見,新的考核方式改革是較成功的。
通過在面向對象程序設計課程考核中使用以能力為中心的過程性考核和期末考試相結合的考核體系,教學效果已初顯成效。通過過程化考核的在線考核跟蹤,有效激發了學生學習的積極性和主動性,學生充分意識到動手實踐的重要性,養成了課堂、課下積極動手實踐的良好習慣;通過綜合項目考核,提高了學生綜合應用能力和創新能力;通過過程化的在線評測系統和在線考試系統,讓課程考核更方便,把教師從繁重的課程考核中解放出來,專注于教學方法的研究和考核內容的設置。