路 紅 劉紅英
(南京理工大學紫金學院,江蘇 南京 210023)
隨著工程教育認證體系的逐步完善與成熟,其對高校的教育質量提出了更高的要求,已成為各大高校提升教育質量的重要途徑之一。工程教育的核心是成果導向教育(Outcome-based Education,OBE),是以學生學習成果為導向的教育理念,即教學活動的目標是學生通過一段時間學習后所取得的成果[1-3]。與傳統(tǒng)的以學習內容為驅動的教學模式不同的是,成果導向教育更看重學習者在學習過程結束后所具備的能力和水平。OBE教學理念要求根據完成職業(yè)崗位工作任務所需要的知識、技術以及素質要求確定教學內容,讓學生在工作之前明確自己應該學些什么、做些什么,使學生能夠持續(xù)職業(yè)發(fā)展。
應用型本科院校的計算機相關專業(yè)重點關注培養(yǎng)和增強學生實踐能力,這與OBE教育理念相吻合。因此,在應用型本科院校的計算機課程中應用OBE教育理念實施教學可以提高學生的編程能力,并能使學生具備依據所學知識解決實際應用問題的能力,且提高自身就業(yè)競爭力和今后崗位適應能力。為此,目前已有很多高校基于OBE理念開展計算機課程教學改革,通過教改制定“學習產出”課程目標,梳理支撐課程目標的教學知識點,建設優(yōu)質線上線下教學資源,開展各種豐富的教學活動,并注重過程評價和形成性評價考核方式,以達提升教育質量的目的,已成為應用型本科院校開展課程教學改革的重要趨勢之一[4,5]。
數據結構是一門計算機類相關專業(yè)的專業(yè)核心課程,主要是培養(yǎng)學生的計算思維和數據抽象能力,要求學生掌握數據結構基本知識點之后,能夠根據實際問題選擇恰當的數據結構,設計合理的算法和存儲結構,并對算法的時間和空間復雜度進行分析[6]。而傳統(tǒng)的教學模式以教師課堂講授為主、以理論知識為主要內容,學生學習課程的主動性較差,課程學習結束后不能獨立自主地運用所學知識解決實際問題[7]。OBE教學理念倡導一種以學生為中心、以成果導向為目標的課程教學模式,可以有效解決傳統(tǒng)數據結構存在的問題。為此,本文以提高數據結構課程的學習效果為目標,借助OBE教學理念針對數據結構課程實施教學改革,使學生能夠利用數據結構所學知識點獨立解決實際應用問題,完成深度學習,并以期達到優(yōu)化教學的目的。
結合筆者自身在應用型本科院校多年數據結構課程教學實踐情況,總結目前數據結構課程教學現狀如下:
(1)注重理論教學
數據結構傳統(tǒng)的教學中較注重理論教學,課上教師主要講解各類數據結構的基本運算及經典應用算法,且考核方式通常為卷面考試,學生大都以通過期末考試為目標[8]。通常學生僅僅知道數據結構的課程地位以及是一門重要的考研課程,但通過一學期學習后,大部分學生僅僅掌握了能順利通過期末考試的知識點,并不清楚如何在實際應用中使用數據結構中的知識點,更有很多同學不能獨立將所學經典算法通過編程方式在電腦中調試實現。
(2)知識點抽象難懂
數據結構具有知識點繁多、經典算法抽象難懂的特點。學生在學習時經常會出現上課時感覺自己能聽懂老師課上講的算法和例子,但是在課下練習時發(fā)現所學算法解決所做題目時出現障礙,或者不能獨立完成練習中類似較復雜的題目。在遇到上述問題時,學生課下又無法及時與教師或同學確認課上所講的內容,造成不能完全掌握知識點,久而久之就會出現“厭學”的問題。
(3)課程評價通常以考試為主
受傳統(tǒng)課程評價方式影響,數據結構課程評價通常是期末卷面考試,試卷內容以理論知識點為主,編程應用較少。課程評價方式決定了學生如何學習,為順利通過期末考試,學生往往采用題海戰(zhàn)術,對經典算法的編程實現甚至出現考前突擊、死記硬背。
基于OBE理念的數據結構課程改革實施過程如圖1所示。首先,依據國家工程認證標準、IT行業(yè)發(fā)展需求、專業(yè)培養(yǎng)目標、人才培養(yǎng)方案確定畢業(yè)要求,在深刻理解畢業(yè)要求基礎上,結合OBE教育標準要求,制定基于OBE的“學習產出”課程教學目標;其次,深入剖析所設定的教學目標,梳理要完成各個子目標所需要的知識點,以此來確定課程內容并選定合適的參考教材;然后,在課程實施過程中,教師運用恰當的教學方法和教學手段開展教學,例如線上線下混合教學法,引導學生獨立自主使用數據結構所授知識點解決實際應用問題,以實現事先所設定的教學目標;最后,依據所制定的課程目標,建立一套形成性教學評價指標,以此衡量學生學習效果和發(fā)現教學中所出現的問題,并由此產生如圖1中兩個循環(huán)以實現課程優(yōu)化。
圖1 基于OBE理念的數據結構課程改革流程圖
“學習產出”目標是支撐OBE課程改革的關鍵部分,它定義了畢業(yè)要求中的工程基礎知識,以及課程思政的要求,為課程內容選定、教學實施和課程評價提供的重要依據。因此,在課程改革初始階段,我們首先制定出符合工程認證標準、行業(yè)發(fā)展需求、專業(yè)培養(yǎng)目標、人才培養(yǎng)方案和課程思政要求的課程目標,使學生能夠通過學習數據結構課程,掌握線性結構和非線性結構的邏輯結構、物理結構以及基本運算,并理解經典算法的實現過程,從而學會在實際應用中能根據實際問題選擇合適的數據邏輯結構和存儲結構,并能設計相應算法。通過一系列的實踐任務,逐步達到具備分析問題、數據抽象和解決問題的能力,并能養(yǎng)成良好的程序撰寫習慣,為后續(xù)的課程和工作打下良好的基礎。具體課程目標如下:
3.1.1 工程基礎知識目標
(1)掌握數據結構的基本理論和方法;
(2)掌握數據關系的四種基本結構的邏輯結構、存儲結構和操作運算;
(3)掌握常用的查找、排序算法的基本原理和實現步驟。
工程基礎知識目標主要是讓學生掌握常用的數據結構的邏輯關系、存儲結構、操作特點及有關應用,從而深入理解數據結構中的基本概念、經典算法解決問題的基本思想,以及優(yōu)缺點。
3.1.2 問題分析目標
在理解經典數據結構和算法設計的基礎上,能夠根據實際問題的應用場景抽象出所解決問題的定義,且能恰當選擇和設計數據結構以及數據元素的構成和邏輯關系,形成計算思維模式,并能靈活高效地解決各種計算機典型應用問題,具備計算思維能力。
3.1.3 研究目標
針對計算機領域復雜工程問題,會綜合運用數據結構的基本理論和設計方法,獨立自主設計合理的數據結構,具備抽象思維能力,并能對所設計實現方案進行可行性驗證和評估。
“學習產出”目標為學生設計了學習成果藍圖之后,教師需設計符合完成所制定的學習目標的教學內容。數據結構課程包含的知識點較多,課程需要講解線性和非線性等十幾個數據結構以及具體的運算實現,包括數據結構的創(chuàng)建,數據的增、刪、改、查找和排序等,這些運算中有許多算法(如圖型關系中的算法)比較抽象難懂。此外,由于課程知識點較多,傳統(tǒng)以教師講授為主的教學模式,師生互動較少,學生興趣不足,即使是那些編程能力較好的學生,在實現和調試這些算法時也有一定難度,久而久之,學生習慣于接受,不善于思考。因此,在教學內容上,借助案例教學法,在重難點部分增加相應算法案例,由教師選擇典型且難度適宜的項目,以恰當的形式把學生帶入一種特定的真實項目或模擬項目情境中,在教師的引導下,學生利用已有的知識背景,發(fā)現問題、分析問題和解決問題,達到培養(yǎng)學生解決實際問題的能力。數據結構課程內容與教學目標的關系,如表1所示。
表1 課程內容與教學目標的關系
目標A,針對所涉及的數據結構,通過多項式操作、迷宮問題、銀行業(yè)務操作流程、家譜系統(tǒng)、導航系統(tǒng)、排行榜系統(tǒng)等案例引入,導出其定義、存儲結構和實現方法,讓學生了解其應用場景,激發(fā)學生學習興趣。
目標B,經過學習基本知識點后,運用所學內容完成目標A中的實際案例,讓學生學會分析所要解決的問題的定義,根據問題目標使用恰當的數據結構和算法實現,并分析實現方法的優(yōu)缺點。通過完成這些案例,讓學生掌握數據結構的基本理論和實現方法。
目標C,在講授完基本知識點后,引入一定的綜合案例的實現,例如,醫(yī)院叫號系統(tǒng)、文件系統(tǒng)、暢通工程等,讓學生會綜合運用數據結構的理論和實現方法解決計算機領域較復雜的問題,幫助學生獲得最大程度的成果感。
數據結構教學過程主要包括課內教學和課外教學兩個環(huán)節(jié),其中課內教學包括課堂教學和課內實驗;課外教學包括課后練習和實戰(zhàn)、在線課程資源學習等。由于數據結構基本運算較多且經典數據結構算法較難理解,經過多年教學,學生普遍反映難以在課堂中快速消化所講的算法。即使學習成績較好的同學,在課堂學習時間內僅能掌握課堂所講算法,很難達到舉一反三,導致課后做練習和實驗時無從下手。為解決該問題,在課堂理論授課時使用線上和線下混合的教學模式,利用“知識回放”方法,解決學生有針對性地強化知識難點的理解和掌握的問題,幫助學生在有限的時間內較好完成繁重的學習任務。線上,教師事先錄制好重難點知識的微課視頻,如經典算法及應用實例講解過程,然后將微課視頻和課程所需PPT上傳至線上平臺,例如釘釘群,讓學生能在課前預習、課后練習和復習時通過“知識回放”鞏固強化難點,以保證學生有針對性地鞏固知識難點。線上階段,教師可以通過釘釘群簽到進行考勤,還可以通過視頻回放時間記錄學生學習情況。線下課堂教學,教師講解所學知識的應用場景以及實現方法,并讓學生參與討論實現方法的優(yōu)缺點。
此外,為加深學生對所學知識的理解,教師需建設一套練習題集和實驗訓練題庫。習題集可以每次課后通過線上平臺實施在線練習,以檢測學生的掌握情況,根據學生完成情況調整教學進度和教學方法。實驗訓練題庫提供相應編程題目,可供學生實驗課使用,幫助學生鍛煉算法運用。通過完成習題集和實驗訓練題庫,學生掌握了數據組織方法和常用數據結構的設計與實現方法,從而培養(yǎng)了學生高級程序設計技能。
教學評價主要是檢驗學生學習狀況是否達到了所制定的“學習產出”目標,而OBE教學理念注重課程學習過程中和結束后的所取得的學習成果,因此在教學評價時應以過程性評價形式進行考核。以本課程實施教學考核為例,課程總成績由平時成績、實驗成績和期末成績組成(如表2所示),其中平時成績占30%,包括課堂考勤、課堂討論參與情況和作業(yè)完成情況;實驗成績占20%,主要考核實際應用能力和獨立思考能力;期末成績占總成績的50%,該成績通過期末考試給出。
表2 課程考核評價表
本文以成果導向教育理念為指導,結合數據結構存在的問題,實施了課程教學改革。首先制定了“學習產出”式教學目標。然后,依據教學目標制定了相應的教學內容,應用經典的項目案例引導學生開展課程內容的學習,促使學生積極主動地參與到課程學習活動,并體驗到課程學習的樂趣。其次,因數據結構知識點繁多、經典算法難懂等問題,教師建設在線課程視頻資源和習題庫,通過知識回放形式,幫助學生掌握在課堂講授時未消化的知識點,從而培養(yǎng)學生的計算思維和解決復雜工程問題的實踐能力。最后,打破傳統(tǒng)課程評價方式,在課程考核中加入了過程性考核,調動了學生積極性,以達到畢業(yè)要求的各個標準?;贠BE的數據結構課程改革在加強學生應用能力的基礎上,改善了教學效果,提升了教學質量,達到了優(yōu)化教學的目的。