張 旭,胡東華,朱付保
(鄭州輕工業大學計算機與通信工程學院,河南鄭州 450000)
隨著物聯網、大數據、人工智能等新型計算機技術的快速發展與廣泛應用,企業對掌握計算機核心技術人才的需求與日俱增,不僅要求員工能熟練運用編程語言和算法完成應用系統開發,還強調其應具有計算機系統的完整概念,能以系統級的觀念完成軟/硬件協同設計的復雜任務。2018 年,新一屆計算機類專業教學指導委員會將全面推進系統能力培養作為首批確認的工作重點,高等院校的計算機人才培養模式由編程能力培養向系統能力培養轉變,國內眾多高校啟動了系統能力培養項目研究,探索符合自身條件的教學改革。例如,文獻[1]以標準化MIPS 指令系統為中心,利用自主開發的ThinPad 實驗平臺構建了一個完整的計算機系統;文獻[2]通過階段性綜合實驗和跨階段實驗鏈構建實踐教學體系,實現了計算機的軟硬件物理綜合;文獻[3]以“一個CPU、一個OS、一個編譯器”作為教學目標,闡述了完整的計算機系統課程群的建設方案;文獻[4]通過軟硬件課程實踐將系統能力培養分解為基礎能力、專業能力和綜合能力的培養,提出“三縱兩橫”的實踐教學體系;文獻[5]通過虛擬仿真技術實現了軟件一體化實驗平臺,完成了計算機硬件實驗課程的改革;文獻[6]詳細闡述了系統能力培養課程群(計算機系統基礎、數字邏輯、計算機組成原理、操作系統以及編譯原理)中實踐課程內容的調整和優化方案;文獻[7]提出的分層劃分流水線CPU 實現方案適用于不同學習能力的學生,具有一定的通用性,為解決系統能力培養中處理器設計教學這一難點提供了有效方法;文獻[8]以五段流水線處理器設計為主線,詳細論述了計算機組成原理與程序設計、電子技術、操作系統、編譯原理等課程的關聯性,體現了軟硬件協同的思想。
鄭州輕工業大學在教學改革過程中以掌握計算機系統的分級結構和核心內容為出發點,根據相關課程內容銜接及與實踐課程的關聯度,對理論教學內容進行了優化調整,明確了各個課程的教學目標,將教學方法從以知識點為主轉換為以系統視角為主。在實踐教學中,以龍芯的MIPS 架構處理器+Ubuntu 操作系統+UCC 編譯器為統一實踐平臺,從數字邏輯課程開始貫穿至畢業設計,既培養了學生的系統能力,又提高了其工程能力。
在工程認證背景下,系統能力培養要求學生深刻理解計算機軟件與硬件之間的邏輯層級,掌握微指令集、指令集、操作系統和編譯環境對程序執行結果和效率的影響,能夠站在系統的高度進行軟硬件協同設計,以底層技術解決復雜的實際工程問題。
以編程能力培養為導向的教學活動在計算機類專業人才培養中存在的主要問題包括:①專業基礎課缺少統籌規劃,重視專業課的建設和作用但弱化了系統構建,系統基礎不足;②專業基礎課的教學內容和教學目標由授課教師確定,這種“以課程為中心”的教學模式造成各門課程之間缺少銜接,甚至重復或脫節,使學生對計算機系統各個抽象層之間的相互關聯以及影響理解不深刻,系統概念不清晰;③專業課程的實踐教學活動往往緊密結合教學目標實施,軟件類課程實驗一般在計算機上完成,硬件類實驗通常按照課程的開設情況配置相應的實驗箱。實驗平臺分離使相關課程之間的實驗或實訓沒有關聯,實驗規模小且多以驗證性實驗為主,學生無法勝任涉及軟/硬件協同設計的復雜任務,系統能力弱。
面向系統能力培養的教學改革是一個涉及多門課程的綜合性工程,需要從教學內容和目標、實驗平臺、教學手段、持續改進措施等方面開展一系列工作。
計算機系統是一個復雜的由軟/硬件組成的整體,其分層結構如圖1 所示,除第1 級之外,每一級都向上一層提供必要的支持,其中1-2 級屬于計算機硬件,4-6 級屬于計算機軟件,第3 級操作系統由計算機硬件實現的指令系統構成,一般認為是混合級。基于計算機分層結構的統一視圖重新規劃計算機類專業的課程體系,將第4 層以下涉及的數字邏輯電路、計算機組成原理、操作系統原理、編譯原理作為系統課程群,使學生掌握計算機系統的核心內容和知識點,建立計算機的分層思想;第4 層以上為專業課程群,根據專業方向設置相應專業課,結合具體的計算機應用體現專業特色。該課程體系通過程序員的視角將從計算機底層硬件的實現到上層的計算機應用全部貫通,加強了系統能力培養,體現了OBE(Outcomes-based Education)理念,為學生專業能力培養打下了良好的基礎。

Fig.1 Computer hierarchy圖1 計算機層級結構
根據系統能力培養要求,傳統的以課程知識點為重點的教學方式不再適用,所有課程均以構建計算機系統為教學目標,做到教學目標一體化。為此,課程組對系統課程群的教學內容進行了優化和調整,使每門課程既有獨立的教學內容,又能為后續課程提供必要支撐。所有課程的知識點構成一個完整的計算機系統知識體系,使學生從先導課程與后繼課程知識點的關聯之中深入理解計算機的系統層次結構,從而改變以往課程間相互獨立、缺乏直接聯系的不足,建立起計算機系統的完整概念。各課程的教學內容與目標見表1。

Table 1 Teaching content and teaching objectives of each course表1 各課程教學內容與目標
一個完整的計算機系統由多個硬件和軟件模塊組成,硬件部分主要包括中央處理器、存儲器、中斷管理、接口電路,軟件部分包括操作系統、編譯器、編輯器等,計算機系統模塊的銜接關系如圖2 所示。由學生實現一個完整的計算機系統難度大、周期長,故在不同課程的實踐環節中有計劃地分步實現計算機系統模塊,然后在基于FPGA 的統一實驗平臺上將各個課程的實驗結果進行集成和綜合,最終實現計算機系統,這樣不僅能夠解決原本獨立的每一門課程實驗項目規模小、課程之間實驗內容缺少關聯的問題,還能提高實踐環節的可執行性,使學生掌握計算機系統的設計和實現方法,培養其系統觀,同時也使其產生成就感,體會到學習的快樂。
相關課程的實踐教學過程統一在龍芯的CPU FPGA實驗教學平臺上完成,分為3 個階段:①通過系統課程群的實驗,在FPGA 開發板上搭建一個基于MIPS 架構處理器+Ubuntu 操作系統+UCC 編譯器的計算機系統平臺,使學生掌握計算機系統核心內容,各個課程的實踐教學內容和目標如表2 所示;②學生在實訓期間利用第一階段實現的平臺和輸入輸出接口模塊,結合相關專業課知識進行計算機應用系統開發,要求體現專業特色,達到學以致用、用中促學的效果;③在畢業設計期間,對不同專業學生進行分組,分工合作,設計和實現一個涉及計算機系統軟/硬件的復雜工程問題解決方案,如此有助于培養學生的系統層次視野和大工程觀,也有助于培養團隊精神。
在實踐教學實施過程中,各課程組定期組織教學研探討會,對實驗大綱和內容持續改進,逐步形成前期培養系統能力、中期培養專業能力、后期培養工程能力的實踐教學體系。

Fig.2 Connection relationship of computer system module圖2 計算機系統模塊的銜接關系

Table 2 Practice teaching contents and goals表2 實踐教學內容與目標
在基于系統能力培養的教學過程中,相關課程的教學內容較傳統教學內容進行了調整并且難度增大。單純的線下教學面臨著學時數不足、教學內容無法展開、學生問題得不到及時解答等多種問題。為解決教學改革面臨的問題,數字邏輯電路、計算機組成原理、操作系統原理課程均在愛課程平臺開設了獨立SPOC,采用線上線下結合的混合教學模式,線上提供重點、要點和難點的相關教學視頻,以及課件等自學資源,并添加了作業、測試等對學生的學習情況進行跟蹤評價;線下除傳統教學外,利用慕課堂等工具進行簽到、隨堂測試等教學活動,充分利用線上教學無時間和空間限制的優勢,補充教學內容,培養學生的自學能力,及時掌握學生的學習狀態,進而調整教學進度和教學內容。調查問卷反饋顯示,87%的學生表示引入線上教學后的混合教學方式對學習有很大幫助,自身自學能力、表達能力、總結分析能力等均得到了培養和提高。
在系統能力培養過程中,教師團隊的工程能力起到至關重要的作用,但普通本科高校中具有工程背景、工程實踐經驗的雙師型教師很少。為了提升實踐教學環節的教學質量,達到工程能力培養的最終目標,學院與中科龍芯、新開普等國內知名企業建立了穩定的合作關系,一方面聘請企業的資深技術人員作為企業導師,在培養目標、教學大綱的制定和實踐教學項目的審定方面給予指導性建議,同時對學生在實驗過程中出現的問題進行線上指導;另一方面在綜合性實訓和畢業設計過程中,以專業培養方案和畢業要求為標準,將企業的實際工程案例導入實踐環節作為課程資源包,由企業工程師將工程項目案例融入教學環節,與學生團隊和教師行技術交流,能有效保證實踐教學環節的系統性、工程性和延續性。問卷反饋顯示,91%的學生表示企業導師制度對提升實驗在線指導效率、了解企業項目真實需求有重要意義。
OBE 也稱為產出導向,是當前國際上高等工科教育普遍采用的一種先進教學理念,其核心理念是以學生為中心、產出為導向持續改進。采用OBE 教學理念能有效提升學生的系統能力和專業能力。
在系統能力培養過程中,各個課程的教學均以學生為中心,最終目標是使學生動手實現一個中央處理器(CPU)、一個操作系統(OS)和一個編譯器,最終組成計算機系統,在此基礎上根據各個課程的理論教學和實踐教學目標建立3層評價和反饋機制。
第1 層評價機制主要用于課程內改進。評價依據為課程目標達成度評價報告,報告中的課程目標達成度由學生的作業、期末考試單題分數、實驗成績等按照一定的權重綜合計算得到,評價責任人為任課教師。任課教師可根據課程目標達成情況,找出學生在學習過程中的薄弱點,進而改進教學方法或授課重點,提高教學質量。
第2 層評價機制用于課程組間改進。在期中和期末向學生發放調查問卷,對先導課程的知識點是否掌握、未掌握的原因等進行調查并統計反饋,評價責任人為課程組組長。如果課程組組長根據多個班級的調查反饋數據判斷為先導課程的教學問題,則召開課程組的教學研探討會,優化和調整相關課程組的教學內容和教學重點,做好教學支撐。
第3 層評價機制用于課外改進。由于現代計算機知識不斷更迭,新的計算機技術與系統架構不斷出現,為保證計算機系統能力培養能夠適應社會需求,在系統能力課程群授課一個周期后,學院通過用人單位反饋、走訪專家和工程技術人員等形式,結合自身人才培養方案,調整課程教學大綱和實驗教學方案,構建符合工程需求的計算機系統能力培養體系。
鄭州輕工業大學緊密結合計算機教學指導委員會關于系統能力培養的要求,同時結合自身實際情況,于2019年啟動計算機系統能力培養項目,對未啟動教改的2017級學生和啟動教改的2018 級學生每門課程的實驗完成率進行了統計,并通過調查問卷方式對學生的學習效果進行了反饋,結果如表3所示。

Table 3 Teaching reform achievements表3 教學改革效果 (%)
由于學生FPGA 編程水平不足,加之處理器結構復雜,操作系統源代碼規模大,編譯器實現難度高,實驗過程中雖然采用了模塊替代法,但實驗完成率在教改后還是有所下降,但學習效果滿意度得到了提升,主要原因為:①基于計算機系統視角的教學方法增強了課程知識點的相互關聯與融合,能有效協助學生建立計算機系統的分層概念,掌握現代計算機技術;②采用統一的實驗平臺,實驗成果逐層遞進,實現了計算機軟硬件的物理綜合,培養了學生解決涉及軟/硬件協同設計復雜工程問題的系統觀和團隊合作能力,符合新工科和工程認證的要求,同時能激發學生的學習興趣,提高教學質量。
此外,教學改革項目組的教師通過交流和學習,掌握了國內外先進的教學理念和方法,提高了教學水平,形成了教學成果,為項目的進一步推動打下了基礎。
本文主要論述了基于計算機系統能力培養的計算機類專業教學改革方法和措施,在實施過程中取得了一定成效,但也遇到了實驗指導教師缺乏、線上實驗手段有限等困難。在今后的改革過程中,還要繼續學習國內外知名高校的經驗和做法,加快推動計算機系統能力培養,探索出一條適合自身特點的系統能力培養之路。