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