宋婉娟,楊 鶴,曹茂峰
(湖北第二師范學院 a.計算機學院;b.湖北省教育云服務工程技術研究中心,武漢 430205)
成果導向教育(Outcome Based Education,簡稱OBE)[1]作為工程認證的重要理念,不僅對認證工作起著導向作用,同時也對應用型本科專業建設提出了新要求。專業建設的核心要素是課程設置,高校將數據結構課程作為計算機相關學科專業的基礎核心課程,在學科知識體系中占據重要位置。我校計算機科學與技術專業開設了數據結構課程,基于我校的應用型本科辦學定位和工程認證的科學體系,數據結構課程旨在培養解決復雜工程問題的計算機方向的應用型人才。
新工科建設計劃[2]和工程認證標準對數據結構課程的教學模式提出了挑戰,有如下問題亟待解決:(1)教學方式傳統陳舊,教學中沒有融入前沿的教學理念,學生解決復雜問題時不能靈活運用;(2)課程建設時照搬精品課程,沒有重視實踐環節,本校本專業特點無法得到體現;(3)信息化教學技術利用不充分,教學手段不夠多元化,教學過程枯燥,教學效果較差;(4)缺乏人才培養的數據跟蹤和反饋,無法持續有效改進教學模式和教學過程。
針對上述問題,結合OBE思想和雙在線教學平臺(超星學習通和Educoder實踐平臺)對數據結構課程進行教學改革,設計滿足工程認證標準、適應新工科建設要求的教學模式,給予多元化的評價方式,建立科學的反饋機制促進課程的持續改進。課程建設要依據畢業要求重構課程體系,對照工程認證標準調整課程結構;強化實踐導向,優化課程內容;注重培養效果,實施課程教學;聚焦目標達成,科學開展課程評價。實踐證明,課程體系的有效重構、實踐教學的加強和科學的評價機制以及持續改進是提升課程與教學質量的根本保障。
秉承科學設計、科學實施和科學評價的原則,基于OBE理念,聚焦產出成果和畢業要求,以實踐為導向,結合在線教學平臺,以計算機科學與技術畢業要求為基點進行反向設計并基于畢業要求和課程目標達成評價情況以迭代優化的方式重構課數據結構課程體系與教學模式。具體的課程體系建設流程和教學模式如圖1所示。

圖1 課程體系重構流程圖
數據結構課程是一門實踐性較強的課程,是計算機程序設計的重要理論和實踐基礎,開設在大二上學期。基于數據結構課程特點和本校應用型高校的建設宗旨對畢業要求指標點進行拆解對應,數據結構課程與計算機科學與技術專業工程認證的畢業要求相關的指標點如表1 所示。

表1 數據結構課程畢業要求指標點
依據工程認證培養學生解決復雜工程問題的能力要求,基于課程目標對畢業要求的支撐原則,我院重新制定了可行、可評和可達成的課程目標。具體內容是:學生能較好地掌握常用的數據結構,理解數據結構內在的邏輯關系、數據與關系在計算機中的存儲表示以及基于數據結構上的運算和執行算法;培養學生具備解決實際應用問題的基本能力,具備發現問題、分析問題、解決問題的能力以及創新精神,為學生后繼專業課如算法設計與分析、人工智能的學習打下堅實的基礎。課程目標和畢業要求支撐情況如表2所示,M代表中等程度支撐,H代表較高程度支撐。

表2 課程目標與畢業要求支撐關系
具體的課程目標如下:(1)掌握數據結構的基本概念,掌握線性表、棧和隊列、串、數組、廣義表、樹、圖等常見的數據結構,了解這些常見的數據結構解決實際工程問題的基本方法。(2)從數據的邏輯結構出發,掌握線性表、樹和圖等常見數據結構的適用場景,以及基于這些數據結構的插入、刪除等基本操作方法。能夠通過分析實際問題,抽象出數據的邏輯結構,選擇一種或多種合適的數據結構對數據進行抽象表達,并設計有效的算法解決實際問題。(3)能夠理解課程基本原理并熟練應用,能夠創造性地應用各種數據結構和算法,設計性能優、效率高、可讀性強、易維護的程序,掌握經典的查找和排序算法,并能對算法進行分析和評價。(4)具備從實際的工程案例中發現問題、提出問題和分析問題的能力,能對算法的時間復雜度和空間復雜度進行評估,找出最優的算法。
修訂后的課程目標以畢業要求為導向,不再強調知識點的機械記憶,而是強調常用數據結構的基本原理的理解和綜合運用,更加側重培養學生利用學科基本原理和常用數據結構解決實際復雜工程問題的能力。
我院所構建的教學模式是基于3P模型的混合式教學模式[3]-[4],該教學模式強化實踐過程,與企業導師合作進行實驗授課,采用Educoder實踐平臺將學生實踐任務過程化,將課程內容融入在線教學平臺并建立科學的評價反饋機制,迭代優化課程結構和教學內容。數據結構課程包含課堂教學、實驗教學和課外教學三個五一節,線上教學平臺始終貫穿了這三個教學環節,課外環節和課程任務的提交、考核主要依賴于線上教學平臺展開。
課堂教學(48個學時)在教室授課,采用理論授課、習題講解分析、課內小組交流討論、翻轉課堂等教學方式。實施時主要分為兩種形式,一種主要采用教師授課為主,師生-生生討論交流為輔,另一種主要采用翻轉課堂的形式,以學生討論為主,教師點評講解為輔。
實驗教學(16個學時)采用學生在機房上機完成實驗任務,教師面對面輔導的方式,單元課程結束、期中和期末等階段性節點,進行實驗講評和一對一答辯,2學時的課程邀請企業導師講解綜合性實驗項目。
課外通過兩個在線教學平臺(超星學習通和Eudcoder 實踐教學平臺)提供教學資源供學生預習、完成課后任務和復習并開展教學活動便于師生在線討論交流,以使學生達成課程目標。
3P 教學模型倡導以學生為中心,以成果為導向(Outcomes Based Education,OBE)的教育理念,它將教學按時間節點分成前提(Presage)、過程(Process)和結果(Product)3 個教學階段。結合超星學習通教學平臺和Educoder實踐教學平臺進行混合式教學,基于3P教學模型將數據課程學習分為課前、課中和課后三個階段,具體的教學設計如圖2所示。學習通平臺發布課前的預習任務和學習資料,課中發布簽到、分組討論、問卷、隨堂測試等課堂活動;Educoder實踐教學平臺主要用于課后實驗任務的發布和檢測。Educoder實踐教學平臺除了具備普通教學平臺具備的對學習任務的管理功能之外,最重要的是提供了云端的編程環境并支持可定制的運行環境,可以實時檢測學生編寫的代碼是否符合要求,因此課程的實驗任務全部在Educoder實踐教學平臺完成,平臺依據標準答案可自動判分。

圖2 混合式教學設計
翻轉課堂[5]-[6]近年來在課程教學中應用非常廣泛,一定程度上調動了學生的積極性和參與性,但是在實際教學中翻轉課堂存在著應用瓶頸,如翻轉課堂的效果高度依賴于學生的課前準備和教師評價,翻轉課堂不適用貫穿整個教學過程,只適用于部分章節。基于此現狀和數據結構課程的特點,我們進行了適應性翻轉課堂設計。
數據結構課程內容有很強的邏輯性和規律性,依據數據結構的課程內容,將每種數據結構的學習分為了兩個層次。以線性結構為例,線性表、棧、隊列、數組和串都屬于線性結構,整個授課和學習模式都比較類似:首先介紹線性的邏輯結構,然后分別介紹順序存儲和鏈式存儲的實現,最后進行綜合應用實踐。因此,針對線性結構,教師首先講解線性表內容詳細,余下的棧、隊列、數組和串這些線性結構的基本原理和線性表類似,難度相對降低,可以采用翻轉課堂的方式以學生為主進行討論式學習。查找和排序章節綜合應用案例豐富,教師講解基礎的查找排序算法后,后續部分可采用學生充分討論,教師補充點評總結的教學方式。基于學生的實際情況和數據結構課程的難度和特點采用上述適應性翻轉式授課方式教學,讓學生既有章可循,也能充分引導學生主動探索、思考,避免了課堂完全翻轉的學生不適應、討論學習效率低下的問題。具體的翻轉課堂內容設計如表3所示。

表3 翻轉課堂設計
實驗教學是數據結構課程非常重要的一環,理論知識的學習目的是更好地完成編程實驗任務。計算機程序使用數據結構,本質上是為了支持算法邏輯,而不是應用層數據的組織[7],因此實驗教學應該作為數據結構課程的導向,重視并強化上機實踐教學環節,實驗任務的完成情況相比于理論課表現更能反應學生數據結構課程的學習效果。同時,通過編程實踐加強學生對各類數據結構存儲表示與運算的掌握,幫助學生進一步理解邏輯結構、存儲結構與運算結構之間的關系。
實驗內容的設計和實驗考核方式決定了實踐教學的效果。數據結構課程實驗內容的設計基于數據結構的五種基礎模塊(線性表、棧、隊列、樹和圖結構)展開,分為基本運算和綜合應用兩個層次,課堂詳細講解基本運算在理論,因此實驗教學主要以這五種基礎模塊的綜合應用為主,綜合應用全部為設計性實驗,查找和排序的內容融合進這些綜合應用中,這樣既考查了學生對基本數據結構原理的理解水平,也培養了學生解決復雜問題的能力。在實驗教學中,教師需要及時輔導,進行一對一答辯掌握學生實驗任務的完成情況,并根據學習情況組織學生或者教師本人進行實驗講評,充分、有效地落實實驗任務。
為了充分調動學生主動學習的積極性,強化實踐過程,考核評價包括過程性考核和總結性考核兩部分,兩者所占權重各為50%。鑒于既往學生在實驗環節存在落實不到位、抄襲嚴重的問題,針對實驗的考核方式除了采用Educoder實踐平臺以外,增加了一對一實驗答辯環節,并加大了實驗環節的考核比例。過程性考核包括學習通平臺和Educoder 實踐平臺的綜合得分(占30%)和實驗答辯得分(占20%),總結性考核由教務處期末統一組織,一般以紙質試卷的形式考試,占總成績的50%。在線教學平臺可以實時、完整記錄學生的學習過程并動態呈現學生的學習效果,引導學生重視線上學習過程,為總結性線下考核奠定堅實基礎。
持續改進是工程認證標準的考查重點之一,科學的評價機制是持續改進的基礎,通過課程目標的達成情況分析可以得到綜合的反饋信息,有利于課程體系和課程結構的反復迭代優化和持續改進,圖3所示為課程目標達成情況評價機制。

圖3 課程目標達成情況評價機制
對21級計算機科學與技術專業85名學生的綜合成績進行課程達成度計算,得到了課程目標1、課程目標2、課程目標3和課程目標4的達成評價值分布圖,如圖4、圖5、圖6和圖7所示。數據分析可知,課程的總體達成度為0.733,課程分目標達成度如下所述:

圖4 課程目標1達成評價值分布圖

圖5 課程目標2達成評價值分布圖

圖6 課程目標3達成評價值分布圖

圖7 課程目標4達成評價值分布圖
課程目標1達成度為0.820,及格值為0.6,教學期望值為0.7,有4位同學未達到期望值;
課程目標2達成度為0.843,及格值為0.6,教學期望值為0.7,有7位同學未達到期望值;
課程目標3達成度為0.710,及格值為0.6,教學期望值為0.5,有25位同學未達到期望值;
課程目標4達成度為0.562,及格值為0.6,教學期望值為0.5,有37位同學未達到期望值。
達成度分析說明學生充分理解數據結構的基本概念和基本運算,掌握了常見的數據結構解決工程問題的基本方法;通過分析實際問題,抽象出數據的邏輯結構,并設計有效的算法解決實際問題的能力良好;熟練應用基本數據結構和算法,設計并從多維度分析算法和程序的能力較好;面對復雜工程案例時的抽象問題、解決問題的能力還有待加強,這種綜合應用能力在后續實踐課程數據結構實訓中會單獨加強訓練。
教學的效果一般用課程的期末考試成績來衡量,但是這種評價方式過于單一,因此從學生滿意度、學生專業持續能力和考試成績三個維度來評價教學效果,也是圖3中直接評價中關鍵的一個環節。本教學模式在2021級計科1班(42人次)和2021級計科2班(43人次)兩個班實施。
針對傳統課堂出現的問題和所研究的新教學模式的教學目的,設計了如圖8所示的四個問題對學生進行滿意度調查,最后一列為四個問題回答“是”的百分比。
數據結構課程的后續課程為算法設計與分析,數據結構課程也是計算機學科競賽的關鍵課程,因此數據結構課程的學習效果也可以通過學科競賽和后續課程的學習來反映。采用新的教學模式學習的學生參加學科競賽的參與率和獲獎率都明顯升,相比2020級計科學生為傳統教學模式授課,2021級學生的競賽參與率提高了15.38%,獲獎率提高了4.34%。與此同時,關聯后續課程算法設計與分析的考試成績也得到了明顯提升,平均分由75.34分提升到了82.55分。
混合式教學模式的過程性考核由任課教師給分,總結性考試由教務處組織,統一命題、閱卷。因此,只將數據結構課程的總結性考試的成績進行對比。2018、2019和2020級計科學生為傳統教學模式授課,2021級計科學生為改革后的教學模式授課。四個年級的均分分別為75.31、78.92、77.67和82.02,可以看出,教改后的2021級學生的均分明顯提高。
從以上三個維度進行混合式教學模式的評價統計,可知學生對混合式教學模式的接受程度很高,尤其對實踐能力的培養得到了學生們的認可,對學科競賽和后續關聯專業課程都有顯著的推動作用,考試成績明顯提升。
基于多元化的評價和反饋數據,數據結構課程還可以從以下方面繼續改進:(1)繼續多方位地加強實踐教學,針對課程目標3和4進行改進提升;(2)進行分層教學,可以有效抑制在學習難度較大的內容時出現的兩級分化狀況;(3)充分分析學生性格特點和專業掌握能力,提高翻轉課堂的活躍程度和效率。
我校計算機學院計算機科學與技術專業的工程認證申請已經通過,正處于進校考察的準備期,提出的教學模式得到了充分實踐,重構之后的課程目標、教學大綱以及教學設計得以貫徹實施,實踐結果一定程度上驗證了新教學模式的效果。線上線下結合的混合式教學模式解決了傳統課堂的諸多問題,充分激發學生興趣,由“被動學”變為“主動學”,培養了學生解決實際工程問題的能力,培養的計算機專業應用型人才更適應企業需求。