楊智明,楊天晴
(保山學院 信息學院,云南保山 678000)
數據結構是計算機科學與技術專業重要的專業課程,傳統教學把學生束縛在應試教育的框架下,學生疲于應付各種考試,畢業后從事的工作與用人單位需要的合格人才存在一定的差距。2019年10月31日,教育部發布《關于一流本科課程建設的實施意見》,提出建設適應新時代要求的一流本科課程,推動高等教育改革發展的要求。該文通過分析數據結構傳統教學存在的問題,從工程教育專業認證的角度探討數據結構課程改革,堅持成果導向,優化課程內容,加強學生的賦能教育,培養學生解決復雜工程問題的能力,提高人才培養質量,解決合格人才供給不足的矛盾。
工程教育專業認證是國際社會評價高校工程人才培養能力的一種重要手段,由工程教育專業認證協會對高等學校工科專業,以培養目標和畢業要求為導向,進行的“第三方”質量評價,其核心是確認工科專業畢業生達到行業認可的既定質量標準要求。在工程教育專業認證背景下,數據結構課程教學改革是圍繞以“學生中心、產出導向”的課程改革,主要從學生能從數據結構課程中學到什么,如何落實產出,再聚焦到學生學習成果的達成。圍繞培養目標—畢業要求—課程體系—教學活動—教學效果評價這個教學過程,通過工程認證正向施工和反向設計[1],把學生畢業要求的指標點與數據結構課程的培養目標建立起聯系,并在教學過程中強化學生的能力培養,使得教學目標達成。
近幾年來,學院多次修訂人才培養方案、教學大綱和教學計劃等多種教學材料,由于傳統的數據結構課程的教學目標不明確、不具體、不可測,一般用了解、掌握、理解等含糊的動詞描述對知識和能力的要求,不能明確說明數據結構課程目標和畢業要求的指標點的支撐關系,而且教材選定和教學內容安排都由任課教師自行確定,因此,教學目標與畢業要求的達成度有一定的差距,出現了一些問題。一方面,無論如何修改教學材料,有些教師仍然使用傳統方法講授熟悉的教材內容,采用多年不變的考核方式評價學生,修訂的教學材料成了留給“外人”看的,與授課教師無多大關系[2]。另一方面,專業課程之間內容重復,前驅、后繼課程銜接“斷檔”也時有發生。
傳統的數據結構教學是以教師為中心,以知識傳授為導向的滿堂灌,而不是以成果為導向,缺乏運用所學知識解決實際問題的賦能訓練,考核方式也以筆試為主,側重知識的記憶,學生被束縛在應試教育的框架下,學習迷惘無措,缺乏進取精神,平時抄襲作業、考前突擊追求不掛科也在所難免,這種以知識傳授為主的教學方式,對應用型人才培養尤其不利。平常學習刻苦,分析能力和動手能力強的學生,未必考試成績高,而平時不學習的學生,靠突擊記憶也能獲得較高的分數,考試成績的高低,不能真實地反映學生的學識水平和解決問題的能力,一方面,會挫傷刻苦學習學生的學習積極性,另一方面,以知識傳授為導向,不重視學生專業能力的訓練,學生想到薪水高,專業技能要求也高的崗位就業,難度系數加大,這就為學生難就業埋下了隱患。
2015年,一項全國部分高校工作1~6年畢業生調查表明,高校對學生培養明顯不足的是學生的職業通用能力,其次才是專業知識能力。對2016 屆電子信息類畢業生調查,他們認為最重要的前五項能力是電腦編程、疑難排解,談判技巧、積極學習和有效口頭溝通能力,其中,除了電腦編程能力外,其余4 項能力都是非專業的通用能力。調查還發現,教師普遍未意識到應在專業課程中培養學生的通用能力,因而,造成了用人單位需要的能力與畢業生滿足的能力存在一定差距,也就出現了雖然每年畢業很多學生,但合格人才供給仍然不足,用人單位對畢業生滿意度不高的問題。
以工程教育專業認證理念為指導,根據計算機科學與技術專業的人才培養方案,對照工程認證12項畢業要求,找出專業體系中數據結構課程需要支撐的畢業要求指標點,再對照布魯姆認知目標分類法,把數據結構課程進行一個合理的目標定位,在能力要求上與對所支撐的畢業要求指標點形成實質性的呼應,建立起數據結構課程與畢業要求指標點之間的對應關系[3-7],根據數據結構課程的內容,細化每一章節所支撐的課程目標和畢業要求的指標點,形成一張數據結構課程畢業要求指標點與課程教學目標的對應矩陣,課程目標—教學環節—考核評價互相支撐,課程目標由適當的教學環節支撐,而課程目標是否達成,需要由適當的考核評價證明來支撐,它們彼此支撐和合作,共同形成一個教學過程的閉環,把學校規定的“七個一”(人才培養方案、教學大綱、考試大綱、教材、教學計劃、記分冊、考試成績分析表)規范文件,教學環節教授的教學內容和考核評價統一起來,既有明確的培養目標、又有教學過程的監控機制,還有教學目標達成度的考核制度,修訂的教學材料不再是放在柜子里給“外人”看的培養目標,而是目標明確,過程可測可控,教學效果可達的良性閉循環。
3.2.1 強化理論深度
數據結構課程內容涉及操作系統、計算機網絡、數據庫等多門課程,很多算法比較抽象難理解,而且課程中的算法大多采用類C 語言描述,如果學生對離散數學和程序設計先修課程掌握不好,抽象思維能力訓練不到位,就會造成大部分學生只能讀懂教材上的算法,卻無法獨立編寫程序的現象。“工欲善其事,必先利其器”,學生要想學懂數據結構,一定要吃透理論,理解算法的思想,才能在理論的指導下寫出代碼,實現編程。因此,教師要對數據結構課程的重點和難點內容講清講透,還要從不同角度對重要原理進行多次訓練,建立知識點的內在聯系[8],促使學生深刻理解原理。比如,把課程內容劃分成低、中、高3 個等級,對于中低難度的知識點,讓學生自學掌握,對學生錯誤特別多的部分,再進行有針對性的分析解答,而對于高難度的知識點,必須進行詳細的教學設計,制定具體的實施方案,特別要講清知識架構和脈絡關系,突出知識蘊含的深刻原理,還要讓學生通過課外作業的訓練,闡明典型數據結構和算法的基本原理,并能夠推演和分析給定數據結構及算法的時間和空間效率,通過實踐訓練,知識點的對比分析,理解原理內涵及應用范圍,能夠針對問題做出最優選擇,達到理論和實踐的完美結合。
3.2.2 重視能力培養
數據結構課程的重要性在于能用計算機解決實際問題,利用《數據結構》中的知識編寫程序解決生活中的最優問題、排序問題,這既是學生探索和獲取知識以及鍛煉和培養技能的載體,也是進行復雜程序設計訓練的過程。通過生活中的最優問題,讓學生綜合運用所學課程知識,在理論指導下進行高水平“動腦”指揮的“動手”實踐,解決復雜工程問題[9]。比如,通過小組合作完成一個任務,首先,讓學生在小組長的帶領下進行工程問題的討論與分析,充分理解工程問題的求解過程:分析問題建立模型(找到解決問題突破口的能力)—選擇合適的存儲結構(分析判斷能力)—構造求解算法(培養學生的方案設計能力)—編寫程序(解決問題能力)—測試(規范化表達能力)—PPT 及總結報告(歸納展示和有效的口頭表達能力),讓學生利用高級程序設計語言實現典型數據結構及算法,從程序的執行過程清晰地理解實驗結果,這樣,通過完成工程項目,不僅能夠鍛煉學生復雜程序設計的能力,讓學生感受軟件開發的規范,以及團隊的合作精神,還能讓學生在不知不覺中提升疑難排除、有效口頭表達等能力,為將來進入工作崗位提升競爭力。
3.2.4 重視價值塑造
數據結構涉及人工智能等知識,在教學內容和設計安排中需要突破習慣性認知模式,強調課程內容的廣度和深度,可以把數據結構課程內容與大數據、云計算、人工智能等新技術、新產業深度融合,增加課程內容的實用性和前瞻性,并在教學中引入與前沿熱點問題結合緊密的案例,豐富課程思想,增加教學外延內容。比如,引入搜索引擎、決策樹、病毒感染檢測、網絡入侵檢測等內容。另外,充分挖掘數據結構課程知識點的思政元素,通過精選案例、主題研討、 師生點評等形式,將思政元素有機地融入教學中,在潤物細無聲中,使學生樹立正確的人生觀和價值觀。比如,在講樹的內容時,講到樹的層次結構,就可以用學生熟悉的大學生社團組織作類比,引入育人思想。社團中每個成員根據自己所任職的級別,分別安排在樹形結構的不同層次中,如果社團中的每個成員都在自己的崗位把能力發揮到極致,盡職盡責地做好本職工作,就是遇到再大的問題,社團成員也能相互體諒,互相幫助,整個社團就安定團結,蒸蒸日上,也好比我們國家,今年遇到突如其來的疫情,全國人民萬眾一心,眾志成城,不論是防疫志愿者,還是奔赴抗疫一線的逆行者,每個人都堅守在自己的崗位上,為打贏這場疫情戰盡力,我們國家才取得了抗疫的偉大勝利。在樹形結構中看出,處在不同層次的結點享有的資源是不同的,層次越接近根結點,擁有的資源越豐富,如果某個成員不想安于現狀,想擁有更多的資源,可以通過自己不懈努力奮斗,提升到上一個層次,從中激發學生的學習斗志。另外,針對樹形結構圖的知識點,讓學生查詢梁氏家族和錢氏家族的家族譜,畫出兩家為中國做出杰出貢獻的人名樹形構圖,不僅能夠使學生深刻地理解樹的知識,而且能夠使學生對改變大半個中國的錢、粱兩個家族的偉人進行了深入了解,“千年名門望族、兩浙第一世家”的錢氏家族,“一門兩院士,滿庭皆才俊”的粱氏家族,從而激發學生的愛國熱情和為國做貢獻的決心。在教學中,不斷灌輸遵守底線,愛崗敬業,誠實守信的社會主義核心價值觀教育,落在實處就是遵紀守法,做作業、考試不抄襲、不作弊,將來參加工作才能愛崗敬業,自覺遵守職業道德和規范,在潛移默化中培養良好的個人操守和作為“IT”人的使命和擔當。
課程的教學內容除了重視學生專業能力的培養訓練外,在學生談判技巧、積極學習和有效口頭溝通能力等通用能力培養上也要加強,提升用人單位對畢業生的滿意度。在數據結構課程中主要堅持課程內容始終為培養目標服務的宗旨,圍繞“培養目標—畢業要求—課程內容—教學環節—合格人才—順利上崗”的主線,重構數據結構課程知識體系,把每一章的內容與能力培養對應起來,確保目標定位與能力培養清晰,所教授的教學內容要與新技術、新產業深度融合,使學生能力成長與創新創業協同發展,實現科教深度融合,還要重視用人單位需要的非專業能力培養和訓練。比如,一學期安排幾場談判講座,組織幾次模擬招聘、模擬談判活動,訓練學生的談判能力和口頭表達能力,布置學生查詢收集數據結構課程應用的范圍和該課程出現的新技術,培養學生的學習能力,還要設計一個科學合理的考核方式,確保學生達到合格畢業生要求,減少畢業生與用人單位需求差距,貫通學校與社會的教育鏈條,讓教育回歸初心。
數據結構課程存在課程目標與畢業要求的指標點沒有明確的支持關系,不重視成果導向,使得培養出來的學生與用人單位的需求存在一定的差距。通過以工程教育專業認證理念為指導,以學生為中心,采用成果為導向進行數據結構課程改革,始終堅持課程教學內容為培養目標服務,不斷豐富教學思想,優化教學內容。不僅要重視學生專業能力培養,還要注重學生非專業能力的通用能力訓練,把社會主義核心價值觀貫穿其中,提升人才素質,縮短用人單位對畢業生的培訓時間,解決合格人才供給不足的矛盾。