趙 赟 吳月超
摘要參考美國“Computing Curricula2005”教程,通過對計算學科內在規律的認識和比較,為我國計算機專業本科的課程設置提供可行性操作范式。
關鍵字 Computing Curricula2005教程;計算學科
中圖分類號:G434文件標識碼:A 文章編號:1671-489X(2007)02-0077-03
Computing Curricula2005 and Computing Discipline //Zhao Yun,Wu Yuechao
Abstract This article refers to US "Computing Curricula2005" , according to computing discipline inherent rules that recognizing and the comparing, provides the operation model possible for computing disciplineundergraduate course in China
Key words computing curricula2005;computing discipline;degree course
Author's address
1. School of Education of Liaoning Normal University,116029,Dlaian, China
2. China People Liberated Arm 65545
隨著微電子、計算機、網絡、多媒體及軟件的迅速發展,人們迎來了知識經濟和信息社會。計算機、網絡及軟件已滲透到社會生活的各個領域,使得傳統產業、人們的工作、生產和生活方式發生了根本性的變化。軟件開發、信息處理已成為信息社會的關鍵。年輕的計算機學科必須與時俱進,跟上信息社會發展的步伐。從2001年開始,美國計算機械協會ACM和國際電氣電子工程師協會計算機學會IEEE/CS聯合工作組提交了關于計算學科教學計劃的CC2001。其中涵蓋計算機教程-計算機科學(CC-CS)、計算機工程(CC-CE)、信息系統(CC-IS)、軟件工程(CC-SE)的一系列文件和報告。CC2001不僅尋求一系列與計算相關學科的分支報告的創建,而且積極倡導制定分支學科的宏觀概要報告。由此,CC2005便應運而生。該報告以學術的視角,將計算學科的分支領域包括計算機科學、計算機工程、信息系統、信息技術、軟件工程這些既有相關性,也有特殊性和獨立性的學科,進行區別和比較,指導大學計算學科中相應專業方向制定教學計劃和課程設置,以及作為一個評價體系的參考標準。
1 計算學科領域的分化
計算(Computing)學科長期以來被認為代表了兩個重要的領域,一個是計算機科學,另一個是計算機工程,二者曾經分別作為軟件和硬件領域的代名詞。隨著科學技術的發展,ACM/IEEE在CC2001中將計算學科分為4個領域,分別是計算機科學、計算機工程、軟件工程和信息系統。在CC2005中,信息技術因其在多媒體教學領域的廣泛應用,也被納入計算學科的分支領域,于2006年出版學科教程IT2006。與此同時,還預留了未來的新發展領域。應該說明的一點是,各個專業僅針對本科生的教育,提出相應的知識領域、知識單元和知識點,給出相應的參考教育計劃和課程設置。5個專業學科領域為:計算機科學(CS)、計算機工程(CE)、軟件工程(SE)、信息技術(IT)、信息系統(IS)。計算學科的變化非常迅速,其知識領域得到充分的擴展,覆蓋了其他很多重要的學科。這種分化表現了一種科學發展和知識演化與時俱進的趨勢。
2 計算學科專業學位課程
表1用比較的方法提供了計算學科5個專業學科領域所覆蓋的重點。 表1的10個主題是計算學科學位課程包含的具有代表性的知識領域和技能,是計算學科5個主要專業學科領域的課程報告中規定主題的集合體,從而在某種程度上概括了一個或更多的計算機學科。對于給定的主題不同的課程報告有時使用不同術語,同時對于一個主題的劃分標準也有所不同。因此表1提供的主題與任何一個課程報告提及的不是完全一致的,相反,它是5個專業學科課程報告指定主題的一個概括和總結。表2以相同的視角關注相對重要的8個非計算科學主題。當五個專業學位課程的課程指導方針要求涵蓋一些非計算機科學主題時,其中兩個專業學科界乎計算機學科和其他學科之間。其一:是計算機工程,包括計算機科學和電子工程的一些基礎。其二:是信息系統,它是計算學科和商務學科發展而來。因此,學生在學習這兩個專業學位課程時,要對非計算科學主題給予大量的關注。

在1、2表中,列出了主題,計算學科5個專業學位課程中所涵蓋主題的數值。這些數值界于0(最低)到5(最高)之間,代表每一個學科的學位課程在特定主題下所合理預計的相對強調的重點。這是一種比較強調每度計算計劃可合理預期將在每個課題. 表中的數值表征的意義僅具有是說明性質,代表每一個學科在特定主題下確切的范圍。
五個專業學科學位課程對應的每一主題下都有兩個數值,一個是“極小值”,一個是“極大值”:
極小值代表了在給定學科的課程報告中相關主題下給予的最小重視程度。該數值表明該學科相對于其他學科的最小需求度。
極大值代表了在給定學科課程報告,其所規定的范圍之內出現的典型重點。每個專業學科允許學生在某一范圍內自由選擇專業領域,同時要求學生的學習計劃超出課程報告中規定的最低值。報告還建議相關機構建立高于課程報告所規定的標準。
正是由于最大值和最小值存在著巨大的差異,因此即使有相同的課程名稱,但卻大相徑庭。這是因地區的需求而決定。最小值可能低至零而最大值可能高達5,與現行的課程標準無關。
2.1 數值的確定方法及相關制約因素
關于數值的確定,表1和表2代表了CC2005聯合工作組的一種共識。這種共識是基于對目前專業學科課程卷中知識體系的考察而形成的。這些專業學科課程卷包括:計算機工程卷、計算機科學卷、信息系統卷、信息技術卷和軟件工程卷。1、2表充分利用了考察的結果來確定主題元素,同時在某種程度上也深刻影響了各個學科相關主題的數值分配。這些具體學科的知識體系提供了某些可以量化的關于各個學科主題需求的最小覆蓋范圍的數據。然而,工作組并沒有給出這些相對重要性的可行性計算。
上述給出的相對重要性,需要我們運用最佳判斷來整合各種軟硬指標以便形成一些公式化的內容,硬指標是指各個具體學科知識體系的數字規范基礎。軟指標包括:
計算學科存在著地方差異性。每個計算學科都有自己獨特的視角和學科自身的特點。
不同學科的相同術語涵義存在著差異性。計算學科涵蓋眾多的計算主題,相同的術語在各學科中的側重點有所不同。
研究課題的選擇緯度存在差異性。盡管計算學科的課程報告具有國際性,但從某種意義上還是以美國計算機科學本科教育體系為導向的。
2.2表格的使用方法:以操作系統主題為例
關于表1的使用方法,我們以操作系統的兩個主題,即操作系統原理及設計和操作系統配置及應用為例加以闡釋。
操作系統是一種系統軟件(Windows, Linux, UNIX, Mac OS, 等),負責管理計算機系統中的硬件和軟件資源(內存、磁盤驅動器、顯示器、網絡接口等)并控制各類程序(文字處理、表格、網絡瀏覽器)的運行,是用戶和計算機之間的接口。計算機配上操作系統之后,能夠提高計算機系統的工作效率,便于用戶使用。
"操作系統原理及設計"涉及到操作系統運行機制的基本原理。它包括運用各種具體方法和宏觀策略完成給定的任務以及操作系統設計者使用不同的機制實現這些策略和方法。此外,除掌握操作系統的基本原理之外,我們期望學生完成一項主要的編程項目,從對操作系統的挖掘工作到對現有操作系統進行有意義的改進。關于這一主題,相對于計算機工程(CE)、計算機科學(CS)和軟件工程(SE)的課程,信息系統和信息技術的課程強調的較為薄弱。對于信息系統和信息技術中的典型學位課程,二者的最大值和最小值都為"1"這表明若涉及到這些主題,學生學到僅僅是一些基本概念和術語,一般不研究任何實質性的操作原則和設計方法。與此相反,計算機工程、計算機科學和軟件工程課程的最小值和最大值較高,表明所要求學生掌握知識的程度制定了較高的下限和上限。事實上,相對于計算機工程(2),計算機科學和軟件工程呈現了較高的最小值(3),這表明計算機科學和軟件工程的學位課程的覆蓋面更廣。
"操作系統配置及應用"是關于主流操作系統產品的實際掌握能力。與操作系統設計和實現注重基本概念和原理相比,該主題重點發展學生對現有操作系統充分實際使用能力。目的在于培養學生知道2個或更多主流操作系統的優點和局限性,在充分了解目標客戶群的需要時進行優化選擇。在這一主題下,我們看到在其他學位課程之中,以不同的方式呈現了相對重要性。所有的學位課程提供的是操作系統的使用和配置的一些經驗,信息技術課程有很高的極小值和極大值(3和5),對于操作系統配置及使用的焦點覆蓋面很廣,期望學生在此領域能獲得更多的知識。而其他的學位課程預期值則相對較小。
由上表的比較得出如下結論:通常信息系統和信息技術課程不提供學生所要了解的關于操作系統原理和設計方面的知識和內容;而計算機工程、計算機科學或者軟件工程的課程予以提供,并且在計算機科學中將有更多的機會進行深入研究。相反,若學生關心操作系統的實用配合和使用,那么信息技術課程將能給予很好的滿足,并且在此領域提供機會。學生若想兼顧操作系統的2個主題,就要向計算機科學和軟件工程學位課程傾向,這就要犧牲應用領域的深入研究,以此獲得理論和應用的平衡。
3學位課程和職業能力之比較
對計算學科五個專業學科領域學位課程的學習重點進行了比較,總結對于學生來說應該學習的內容,這里,同樣要運用比較的模式,對本科畢業生應具備的能力進行闡釋。Computer Curricular 2005中闡釋了畢業生的執行能力,將其分成了11大類60項。每一學科都對其進行了數值分配,最低是"0",最高是"5"。"0"代表無任何期望值,而"5"最高的相對期望。和1、2表中的數值一樣,這些數值也是概數。這11大項分別從算法、應用程序、人-機交互、信息系統、信息管理等方面來預期了學生畢業之后的能力。筆者僅列其中一部分以示說明:
與表1和2概述提供給學生學位課程的投入相比,表1關注的是產出,即有關畢業生的預期能力。

由表3 比較得出:
作為計算機工程師,應該具備包括整合軟硬件設備在內的設計和實現系統的能力。
作為計算機科學專家應做好勝任一系列職位的準備,從理論研究到軟件開發。
作為信息系統人才,應該具備分析信息需求和商務處理以及配合設計系統的組織目標。
信息技術人才應具備有效的設計、執行、配置以及維護組織的計算機基礎設施。
軟件工程師應具備恰當的執行和處理大型軟件系統活動周期的每一個階段的能力。
4 小結
1)Computer Curricular 2005教程有許多特點,對國內計算學科專業教學計劃的制定具有重要的參考價值,但它也不是十全十美,不一定符合所有國家計算機教育的實際情況。要根據國情、校情等實際情況,領悟其中的內涵,為我所用。我們應該根據Computer Curricular 2005教程的指導思想及時修訂教學大綱,更新教材;教師不斷更新知識,跟上技術的發展;實驗室適時更新設備,以滿足實踐教學的需要。
2) 在我國高等教育中,計算機、通信、系統工程、軟件工程、信息系統等學科都可以參照CC2005的知識領域和參考教學計劃,根據自己的特點和優勢構建適合自身的本科教學計劃和課程設置。鑒于我國目前本科教育四年的課時安排不盡合理,政治和思想類課程占據了太多時間,而真正專業基礎和專業課程的實施僅集中在2年多的時間,因此,認真考慮課程的教學時間、實踐安排是本科培養計劃中非常重要的問題。此外,需要給大學生留出一些時間和空間,來思考職業、社會和自身責任的問題,并讓他們了解作為本科生應當了解和掌握的專業知識領域,行業的知識體系和學科間相關的知識交叉,這樣,學生的素質才能得以真正的提高。
Computer Curricular 2005結合國際計算學科發展[1],給出了一種教學參考規范,但它不是教條。它對計算機科學、計算機工程、軟件工程等學科有明確的界定和內涵解釋,對所有學科毫無例外地強調了學生自我角色和站在社會角度的職業道德(素質),對工程學科強調了實踐訓練和學科建設投入。同時,CC2005報告并不要求所有學校千篇一律,整齊劃一的教學標準模式,而鼓勵各校根據自身具體條件對教程進行調整,這些條件包括院校的類型及其本科學位教學計劃的目標,院校對本科生的培養目標、學院擁有的師資資源和教師的興趣與專長和入學新生的背景與受教育水平來制定培養計劃并進行了實施。