孫庚 馮艷紅 于紅 崔春雷
摘要:應用型計算機本科專業系統核心課程教學長期以來存在重理論輕實踐、各門課程各自為政、缺乏關聯性等問題,導致學生對計算機軟硬件缺乏系統、整體的認識。為此,構建一套適用于地方本科院校系統能力培養的理論、實踐課程體系。該體系著眼于系統性與整體性,強化各門課程之間的關聯、銜接,強化實踐教學環節,旨在幫助學生建立各門課程間的關聯,鞏固加深對計算機軟硬件的整體認識,提高學生系統能力。該理論實踐課程體系可向應用轉型的二類計算機本科專業推廣,其構建思路、方法可為其它專業系統能力培養提供借鑒。
關鍵詞:系統能力;課程體系;應用型計算機專業
DOI:10.11907/ejdk.191007開放科學(資源服務)標識碼(OSID):
中圖分類號:G434文獻標識碼:A 文章編號:1672-7800(2019)010-0217-03
0引言
計算機專業課程體系設置了大量與計算機系統相關的課程,如《數字邏輯》、《計算機組成原理》、《編譯原理》、《操作系統》等。體系總體目標是使學生建立完整的計算機軟硬件系統知識結構,整體的計算機系統能力培養在課程體系中占有重要地位,是計算機科學與技術專業的核心教學內容。然而,目前普遍存在的問題是大量系統類課程學習并沒有全面提升學生計算機系統能力,主要原因包括:
(1)教學內容上,各門課程獨立規劃、獨立教學,造成知識體系中知識點冗余、銜接不夠。一方面,每門課程強調自身知識體系完整性和系統性,造成一些知識重復講述;另一方面,各課程知識點間缺乏前后銜接與有效整合,難以形成完整的計算機系統知識體系。
(2)教學方法上,各課程采取分析式教學方法較多,突出系統原理講解,而由于條件限制,缺乏對完整計算機系統較為全面的說明。其后果是學生掌握了基本概念,卻無法理解相關課程的作用、意義,導致學生對計算機軟硬件缺乏系統、整體認識,無法將知識運用到實際系統設計開發之中。
(3)實驗方法上,側重于對原理的簡單驗證,缺乏對復雜系統的綜合設計實踐。雖然小規模實驗可幫助學生掌握某門課程的主要原理,但由于缺乏完整、關聯的系統實踐設計環節,使在運行時可能出現的問題無法凸現出來。所以,學生雖然經過了訓練,但因訓練效度不足,不能對系統知識有較為深刻的掌握,僅停留在“盲人摸象”的認知階段。計算機系統本身具有整體性、關聯性、層次性、動態性和開放性等特點,但由于其復雜性,若課程體系各課程之間缺乏有效溝通和相互協作機制,則會引起學生系統能力培養和訓練上的不足。
針對以上問題,國內外很多計算機教學科研組織、高校均提出了面向系統能力培養的教學改革方案。如ACM/IEEE公布的計算機科學課目CS2013給出了新的教學調整方案C,更強調系統能力培養,增加了4個涉及計算機系統知識的內容;美國一些頂尖大學,包括MIT、UC Berkley等均設置了各具特色的計算機系統相關課程。2013年,中國教育部高等學校計算機科學與技術專業教學指導委員會提出計算機系統能力培養的舉措,之后南京大學袁春風教授”出版了相應教材,其倡導面向計算機系統能力培養的理論、實踐課程體系,在南京大學、北京航空航天大學、清華大學、北京大學、浙江大學、國防科技大學等國內一流大學計算機科學與技術專業推廣,并取得了一定成效。
以上教學成果主要集中在國內外研究型大學,其它高校即使開展了該項工作,也主要是照搬一類本課科院校的模式,而在二類本科院校,尤其是向應用轉型的計算機專業,應用背景與一類本科院校差別較大。一方面,對于應用型計算機專業本科生,系統能力是重要的能力指標,決定該類學生能否從整體、全局的角度進行應用系統開發,能否在工作中具有持續學習能力,而不是一種“只見樹木、不見森林”的狀態,這也是高校畢業生與一般社會培訓機構培養的從業人員的最大不同和優勢;另一方面,從課程設置的目標、難度等因素考慮,不能照搬國內一流大學的課程體系。上述教學改革的高校人才培養目標均為培養研究型人才,起點較高,教學內容上更強調對復雜系統的分析、設計與研究,對于二類院校的學生難度太大,國內少數水平較高的二類院校曾試點引進南京大學的課程體系,但效果不理想,學生很難接受和適應,不及格率過高。
基于以上現狀分析,本文著眼于系統性與整體性,強化各門課程之間的關聯、銜接,強化實踐教學環節,構建一套適用于應用型計算機本科的系統能力培養理論、實踐教學體系,并在學校2016級計算機科學與技術專業實施。
1課程體系構建
課題組充分調研已經開展該項教學改革的院校,特別是向應用轉型的計算機本科專業,提出適合于應用型計算機專業、涵蓋《計算機系統基礎》、《數字邏輯》、《計算機組成原理》、《操作系統》、《編譯原理》5門課程、由淺入深、由整體到細節、循序遞進的系統能力培養課程體系初步方案。各門課程統一制定教學大綱,明確各門課程的邊界、銜接,注重課程之間的教學內容關聯。原有培養方案中與計算機系統能力相關的課程有《數字邏輯》、《計算機組成原理》、《操作系統》和《編譯原理》4門課程,《計算機系統基礎》課程為新增設的課程。
1.1課程內容設置
《計算機系統基礎》課程內容設置從向應用轉型的二類本科院校計算機專業學生角度出發,重點介紹程序員如何利用計算機系統相關知識編寫更有效的程序。以高級語言程序的開發和運行為依托,將該過程中每個環節涉及的軟硬件基本概念關聯起來,使學生建立一個完整的計算機系統層次框架,具體內容包括:程序中處理的數據在計算機中的表示和運算、程序中各類控制語句對應的機器代碼結構、可執行目標代碼的鏈接生成、可執行目標代碼中指令序列在機器上的執行過程、存儲訪問過程等。
1.2課程內容整合
統一規劃各門課程的教學內容和教學方法,理順各門課程間的聯系,以ACM與計算機教學指導委員會發布的計算機專業課程知識體系為藍本,結合專業向應用轉型的需要,查找各課程知識點和教學內容的不足,進行補充和完善,去除重復的教學內容,重點強化各課程教學內容間的銜接。課程體系注重能力培養的層次性,從系統總體出發,到硬件基礎知識學習,再到硬件系統組成、操作系統構建、編譯系統附著,最后到應用軟件移植的完整系統教學進程,形成系統認知能力、系統分析能力、系統設計能力、系統實現能力的層次化能力培養體系。本文以《計算機組成原理》為例,分析其與其它課程間的關系及整合方案。
1.2.1與《數字邏輯》課程的關系及整合方案
兩門課程間主要存在基本運算部件內容的重復。半加器、全加器和無符號加法器是《數字邏輯》的主要內容,將其從《計算機組成原理》課程中刪除,所以SN74181芯片、SN74182芯片等不作為《計算機組成原理》課程的主要內容。如果在課程教學中涉及到SN74181、SN74182芯片,只需讓學生了解現代CPU如何用快速進位方式實現加法器原理即可。
1.2.2與《操作系統》課程的關系及整合方案
《操作系統》的核心思想是如何管理計算機資源,《計算機組成原理》課程內容也包括相關資源,如CPU、存儲器和I/O,故這兩門課程內容聯系非常緊密。《計算機組成原理》課程涉及指令系統,而《操作系統》是通過硬件提供的指令系統直接對底層硬件進行控制和處理。中斷處理是改變用戶進程正常執行的方式,會改變CPU運行模式。硬件上需要提供相應支持,軟硬件協調處理才能完成CPU模式轉換。在傳統《計算機組成原理》課程中缺乏對CPU模式的介紹,所以增加該部分知識介紹,并在《操作系統》課程中加以鞏固。兩門課程均包含虛擬存儲機制的內容,所以刪除《計算機組成原理》課程中的該部分知識點。輸入輸出系統部分也存在重復知識點,《計算機組成原理》課程側重介紹硬件,《操作系統》課程側重介紹對輸入輸出硬件的管理。
1.2.3與《編譯原理》課程的關系及整合方案
編譯器的作用是將高級語言程序轉換為機器語言程序,而機器語言是《計算機組成原理》課程的主要內容,因此,這兩門課也存在密切關系。程序翻譯涉及到采用何種類型的寄存器存儲數據,而寄存器是《計算機組成原理》課程的重要內容,所以,強化兩門課之間的聯系可使學生建立計算機系統的整體觀念。
2實踐教學體系構建
實踐環節在計算機系統能力培養中占有很大比重,學生能否運用所學的原理知識,解決實際計算機系統設計中的問題,是檢驗教學效果的重要標準。為了打破原有課程實驗項目的簡單驗證性、各門課程實驗教學的孤立性,本課題組精心規劃、設計了貫穿于各門課程間的實驗教學體系,圍繞教學改革目標設置各課程階段子目標與相應實驗內容,完成模塊設計和實現后,再通過綜合實驗進行集成,合理控制復雜度和難度,突出主要問題,最終完成一個相對完整、簡單的計算機系統設計,形成涵蓋硬件和軟件、難度適中、適合應用型本科專業的統一的計算機系統綜合實驗平臺。
2.1實驗平臺構建
大連海洋大學的課程教學團隊與龍芯中科的實驗平臺開發團隊合作,根據地方院校學生實際和計算機系統知識結構及特點共同研究了打通《計算機系統基礎》、《數字邏輯》、《計算機組成原理》、《操作系統》、《編譯原理》5門課程的實驗教學平臺構建方案,減少了驗證性孤立實驗項目,設計了既可結合生產實際、難度適中,又貫穿所有課程內容的綜合實驗項目,還聘請專家進行實驗教學平臺構建方案論證,在此基礎上,確定實驗教學平臺構建方案。
2.2實踐教學系統構建
操作系統在計算機系統中,向下連接硬件系統,向上連接應用軟件系統,是系統能力培養的重要環節。但是由于操作系統的復雜性,設計一套既能明確各部分原理、可實際使用的精簡系統,又能保證應用型計算機本科學生可以接受的實驗教學內容難度較大。因此,本文以《操作系統》課程為切入點,設計開發原理突出、結構簡單、用于實驗教學的小型操作系統范例,這些精簡的范例具有良好的移植性、裁剪性,該實驗系統可為學生在后續課程中構建編譯系統、應用軟件系統提供平臺支持。
3結語
本文提出了構建二類本科院校計算機科學與技術專業系統能力培養的課程體系,對增設的課程內容與已有課程內容的整合進行了詳細闡述,同時構建了相應實踐教學體系,該方案已在2016級計算機科學與技術專業實施,并取得了初步成效。下一步計劃在課程體系建設與實驗平臺構建方案工作的基礎上,進行實驗平臺開發和實施,并對實驗內容進行整理,開展適合于應用型計算機本科的系統能力培養的系列教材建設,組織以高校教師為主的理論教材編寫組與以高校教師為主、以企業實驗平臺開發團隊為輔的實驗教學指導書編寫組,編寫適合于二類本科院校系統能力培養的教材,促進該類院校計算機科學與技術專業人才培養。