1 計(jì)算機(jī)課程體系改革的背景
2006年北大全面開展四年一度的教學(xué)改革討論和實(shí)踐,本次教學(xué)改革校方總體思路是“樹立學(xué)生為本的觀念,增加學(xué)生對(duì)于課程、專業(yè)的選擇空間。尊重學(xué)生的個(gè)性特點(diǎn),因材施教?!痹S智宏校長提出:“大學(xué)是培養(yǎng)人的,大學(xué)是要培養(yǎng)特殊的產(chǎn)品——人才。但是大學(xué)不是工廠。在計(jì)劃經(jīng)濟(jì)時(shí)代,我們培養(yǎng)的人才都是一個(gè)模子出來的?,F(xiàn)在的社會(huì)需求是多方面的,同學(xué)們的興趣也是多方面的。作為一名植物學(xué)家,我更希望看到校園是多元化的,希望大學(xué)是個(gè)花園?!?/p>
作為北大最大的一個(gè)學(xué)院,信息學(xué)院培養(yǎng)了全校近六分之一的本科生,其中計(jì)算機(jī)專業(yè)又占了信息學(xué)院三分之一的大比重,另有三分之二為電子學(xué)、微電子學(xué)、智能科學(xué)的學(xué)生。北大關(guān)于教學(xué)改革的需求促使我們認(rèn)真審視并重新設(shè)置北大信息學(xué)院本科計(jì)算機(jī)專業(yè)的課程體系。另一個(gè)方面,隨著計(jì)算機(jī)和通信技術(shù)近十年來的蓬勃發(fā)展,中國逐步步入信息化社會(huì),國家“十一五”規(guī)劃關(guān)于創(chuàng)新型人才培養(yǎng)的需求,也要求我們?cè)O(shè)置更適應(yīng)國家信息化建設(shè)和發(fā)展需求的先進(jìn)學(xué)科體系。
在此背景下,我們研究了國際上關(guān)于計(jì)算機(jī)課程體系的IEEE/ACM CC2005系列規(guī)范,研究了排名最靠前的MIT等美國大學(xué)的計(jì)算機(jī)相關(guān)專業(yè)本科課程設(shè)置,重點(diǎn)研究了以多元化培養(yǎng)ThreadsTM方案而走在教學(xué)改革前沿的佐治亞理工大學(xué)(GeorgiaTech),實(shí)地考察了香港最好的3所大學(xué),在這些調(diào)查和研究的基礎(chǔ)上提出了我們“重視理論基礎(chǔ)、加強(qiáng)工程實(shí)踐、細(xì)化專業(yè)引導(dǎo)”的教學(xué)改革方案,本教改方案在2007年初全院教學(xué)研討會(huì)議上進(jìn)行了廣泛深入的討論。
2 國際知名學(xué)校計(jì)算機(jī)專業(yè)課程體系設(shè)置情況
從著名的Computing Curricula 1991到現(xiàn)在尚未完成的Computing Curricula 2001(目前稱為CC2005),中間經(jīng)過了十多年。萬維網(wǎng)Web的出現(xiàn)以及在全世界的迅速普及,計(jì)算機(jī)在各行各業(yè)的深入和廣泛的應(yīng)用,使得計(jì)算的概念在過去的十年里發(fā)生了巨大的變化。CC1991將計(jì)算機(jī)科學(xué)、計(jì)算機(jī)工程和軟件工程融合在一起,而CC2005包含五個(gè)相對(duì)獨(dú)立的部分:CCCS(計(jì)算機(jī)科學(xué))、CCCE(計(jì)算機(jī)工程)、CCSE(軟件工程)、CCIS(信息系統(tǒng))和CCIT(信息技術(shù))。其中CCIS與我們國內(nèi)的“信息管理系”(原圖書館系)比較接近。教育部計(jì)算機(jī)專業(yè)教育指導(dǎo)委員會(huì)2001-2005年進(jìn)行了廣泛深入的調(diào)查研究,于2006年也正式推出了計(jì)算機(jī)科學(xué)方向、軟件工程方向、計(jì)算機(jī)工程方向、信息技術(shù)方向這四個(gè)計(jì)算機(jī)科學(xué)與技術(shù)本科專業(yè)規(guī)范,以有效地指導(dǎo)不同辦學(xué)單位的定位,鼓勵(lì)按照多規(guī)格發(fā)展思路辦學(xué)。
我們研究了MIT、CMU、UC Berkeley、Stanford、Harvard、Princeton、GeorgiaTech等大學(xué)的計(jì)算機(jī)相關(guān)專業(yè)本科課程設(shè)置,發(fā)現(xiàn)各大學(xué)在保持其各自辦學(xué)特色的基礎(chǔ)上,也逐漸吸納了CC2005的一些課程改革理念,例如Berkeley在計(jì)算機(jī)理論、計(jì)算機(jī)工程方面都開設(shè)出系列的課程;Princeton在計(jì)算機(jī)工程、信息技術(shù)等方面有明顯的方向分流;MIT明顯地強(qiáng)調(diào)EE和CS的融合,其硬件課程非常重,而硬件和軟件實(shí)驗(yàn)課程都很扎實(shí);Stanford的選修課程非常豐富,可以分出算法理論、數(shù)據(jù)庫和信息系統(tǒng)、圖形和人機(jī)交互、網(wǎng)絡(luò)與分布式系統(tǒng)、人工智能、軟件系統(tǒng)設(shè)計(jì)等方向。
2.1 GeorgiaTech的線程設(shè)置
在著力于培養(yǎng)優(yōu)秀工程師的教學(xué)改革方面,佐治亞理工學(xué)院校長韋恩·克勞福(G. Wayne Cloush)走在了前列,從20世紀(jì)90年代開始,他在招生政策、交叉學(xué)科、人際溝通、高屋建瓴的工程素質(zhì)訓(xùn)練等方面作出了很多成功的改革,并得到了學(xué)生和社會(huì)的認(rèn)可,他的觀點(diǎn)就是應(yīng)該“提供更恰當(dāng)?shù)慕逃?,而不僅僅是更多的教育”(《世界是平的》——Thomas L. Friedman)。
2004年,佐治亞理工大學(xué)計(jì)算機(jī)學(xué)院提出了計(jì)算機(jī)專業(yè)人才的8個(gè)專業(yè)線程(Threads):計(jì)算建模(computational Modeling)、嵌入式系統(tǒng)(embodiment)、計(jì)算機(jī)基礎(chǔ)(Foundations)、網(wǎng)絡(luò)和信息技術(shù)(Info Internetworks)、人工智能(intelligence)、媒體技術(shù)、計(jì)算機(jī)與人(people)、計(jì)算機(jī)平臺(tái)(platforms)。每條線程代表的不是垂直方向,不以傳授給學(xué)生一套固定技術(shù)和知識(shí)為目標(biāo)。線程代表的是水平方向,其目標(biāo)是讓學(xué)生廣泛積累各種技能和學(xué)習(xí)經(jīng)歷。
自2006年秋季開始,佐治亞理工大學(xué)計(jì)算機(jī)學(xué)院開始采用全新的ThreadsTM培養(yǎng)方案。ThreadsTM包含線程和角色兩個(gè)構(gòu)件。線程是學(xué)生的計(jì)算身份,由兩個(gè)交織的線程決定。一個(gè)線程就是課程的一個(gè)子集,它提供了一組直覺的、靈活的和交互強(qiáng)化的課程,以幫助學(xué)生構(gòu)建某一計(jì)算領(lǐng)域的獨(dú)特技能。獲得計(jì)算機(jī)專業(yè)的學(xué)位必須通過兩條線程的課程,學(xué)生在第二學(xué)年才開始選擇方向,而且允許他們靈活地調(diào)整。角色則代表學(xué)生的學(xué)習(xí)計(jì)算機(jī)技術(shù)和技能的軌道。
如果說線程是學(xué)習(xí)內(nèi)容,那么角色就是學(xué)位與現(xiàn)實(shí)世界的橋梁。目前,佐治亞理工大學(xué)計(jì)算機(jī)學(xué)院定義了實(shí)踐者、企業(yè)家、發(fā)明家和交流者四種角色,學(xué)生可選擇一個(gè)或多個(gè)角色獲得學(xué)分,這些角色幫助學(xué)生進(jìn)行課程選擇并指導(dǎo)他們選擇學(xué)院提供的課外活動(dòng)。
例如,一個(gè)想成為實(shí)踐者的學(xué)生就會(huì)選擇實(shí)驗(yàn)室課程或新架構(gòu)工作室課程,因?yàn)樵擃愓n程提供了密集的實(shí)踐技術(shù)。而一個(gè)想成為企業(yè)家的學(xué)生則可在管理學(xué)院修一個(gè)或多個(gè)學(xué)分并通過參與新的計(jì)算項(xiàng)目,實(shí)現(xiàn)計(jì)算機(jī)與管理方面的跨學(xué)科學(xué)習(xí)。
由此可見,佐治亞理工學(xué)院的ThreadsTM培養(yǎng)方案提出了一種新的組織課程的方法,解決了長期困擾計(jì)算機(jī)課程設(shè)置的僵化、缺乏靈活性與透明性等問題,代表了一種遠(yuǎn)離垂直方向的課程設(shè)置趨勢,即多元化、多方向的培養(yǎng)模式,并廢除了單一核心課程加一堆選修課程的模式,構(gòu)建了一種長期的動(dòng)態(tài)的課程體系。該培養(yǎng)方案的基本目標(biāo)是培養(yǎng)學(xué)生終身學(xué)習(xí)及自我調(diào)整適應(yīng)未來社會(huì)需求的能力,并給予了學(xué)生在廣泛的領(lǐng)域中選擇專業(yè)方向,以及將個(gè)人學(xué)習(xí)計(jì)劃納入市場大環(huán)境中的機(jī)會(huì)。
2.2 對(duì)三所香港名校課程體系的考察
2006年12月,我們?cè)趯?duì)香港大學(xué)、香港中文大學(xué)、香港科技大學(xué)這三所大學(xué)實(shí)地考察的過程中,仔細(xì)研究了各個(gè)大學(xué)的計(jì)算機(jī)相關(guān)專業(yè)本科課程設(shè)置,并與負(fù)責(zé)課程設(shè)置的教授討論了他們關(guān)于課程改革的設(shè)想。香港的同行也十分重視CC2005的課程體系,在他們的課程改革中也參照了該體系的思想,而且大家都非常重視數(shù)學(xué)基礎(chǔ)和編程基礎(chǔ)。港大和中大具有比較濃厚的人文基礎(chǔ),在人文和通識(shí)教育方面的課程很有特色,例如“Professional and technical communication for computer science”、“Engineering organization and management”、“Engineering and Society”、“Engineering economics and finance”、“Professionalism and ethics”。
香港大學(xué)率先完成了新課程體系的設(shè)置,除了把IT的內(nèi)容融合到SE中以外,他們的課程方向基本上體現(xiàn)了CS、CE、SE、IS這4方面的內(nèi)容。尤其是他們關(guān)于信息系統(tǒng)集成方面的課程很有特色,這門課程實(shí)用性很強(qiáng),而過去國內(nèi)外大學(xué)都很少開設(shè)。學(xué)生畢業(yè)后很多都從事系統(tǒng)集成工作,即使將來作研究,具有系統(tǒng)集成經(jīng)驗(yàn)也是非常重要的。
中文大學(xué)的CS、CE兩個(gè)方向的設(shè)置非常明顯。而且他們正在進(jìn)行新的課程設(shè)置,準(zhǔn)備提供更多的選修課程,使得學(xué)生在高年級(jí)能夠進(jìn)行專業(yè)分流,例如數(shù)據(jù)庫、圖形圖像處理、網(wǎng)絡(luò)與信息系統(tǒng)等。中大有一個(gè)非常成功的work-study項(xiàng)目,學(xué)生保留學(xué)籍到公司工作半年到一年(相應(yīng)地延長學(xué)籍),然后回來作畢業(yè)設(shè)計(jì),每屆學(xué)生有50%以上選擇參與該項(xiàng)目。
香港科大的選修課程比較豐富,也有CS、CE兩個(gè)方向。明顯地提供了數(shù)據(jù)庫、網(wǎng)絡(luò)、圖形圖像、模式識(shí)別等系列專業(yè)課程,有些課程實(shí)際上是與研究生合上??拼蠓浅V匾暢绦蛟O(shè)計(jì)能力訓(xùn)練,有5門編程課程。另外,科大對(duì)于程序設(shè)計(jì)原理、數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο蟪绦蛟O(shè)計(jì)、算法分析與設(shè)計(jì)、軟件工程、研究性學(xué)習(xí)、畢業(yè)論文等課程,設(shè)置了“honor track”(優(yōu)秀學(xué)生班),進(jìn)入優(yōu)秀班的學(xué)生大約為全體CS、CE學(xué)生的1/8,共30名左右。學(xué)生并不固定,需要通過任課教員的考試或認(rèn)可,并沒有強(qiáng)制的成績限制。優(yōu)秀班授課廣度深度和教學(xué)進(jìn)度都高于普通班。優(yōu)秀班的成績?cè)u(píng)定不受正態(tài)分布的限制,完全是教員說了算。
3 關(guān)于北大信息學(xué)院計(jì)算機(jī)專業(yè)課程的建議
近年來,學(xué)生希望學(xué)校在課程和專業(yè)選擇方面提供更廣闊的空間,例如北大信息學(xué)院計(jì)算機(jī)系有一半以上的學(xué)生選修經(jīng)濟(jì)雙學(xué)位,還有一些學(xué)生選修數(shù)學(xué)雙學(xué)位,2006年秋季學(xué)期末一位大四的學(xué)生總共參加了11門課程的考試“5門專業(yè)+2門通選+馬政經(jīng)+3門雙學(xué)位”。一方面,說明有些學(xué)生希望加強(qiáng)數(shù)學(xué)訓(xùn)練、為將來科學(xué)研究打好理論基礎(chǔ);另一些學(xué)生有擴(kuò)展經(jīng)濟(jì)學(xué)和管理學(xué)知識(shí)領(lǐng)域的需求,以適應(yīng)將來的軟件項(xiàng)目管理角色。另一方面,這樣大范圍的學(xué)生選修雙學(xué)位,勢必多數(shù)學(xué)生處于應(yīng)付作業(yè)、疲于奔命的狀態(tài),而且這種盲目從眾、缺乏指導(dǎo)的選課,不利于我們有計(jì)劃地培養(yǎng)計(jì)算機(jī)專門人才、提高畢業(yè)生專業(yè)素質(zhì)和社會(huì)適應(yīng)性。
我們必須進(jìn)一步解放思想,落實(shí)科學(xué)發(fā)展觀,以人為本,以學(xué)生為本,尊重學(xué)生的個(gè)性差異,增加學(xué)生對(duì)于課程、專業(yè)的選擇機(jī)會(huì)。我們要有時(shí)代責(zé)任感,根據(jù)學(xué)科建設(shè)需要和社會(huì)人才需求,依托北大信息學(xué)院現(xiàn)有的科研力量,創(chuàng)出具有北大特色的新課程體系。
從學(xué)科建設(shè)和人才培養(yǎng)來看,IEEE/ACM的CC2005課程體系規(guī)劃了5類人才:計(jì)算機(jī)科學(xué)(CS)方面的專家主要關(guān)注計(jì)算的理論和算法,重點(diǎn)在于計(jì)算的理論基礎(chǔ);軟件工程師(SE)主要關(guān)注大規(guī)模軟件在它的生命周期內(nèi)的開發(fā)與維護(hù);計(jì)算機(jī)工程(SE)專家致力于開發(fā)和維護(hù)基于計(jì)算機(jī)的產(chǎn)品;信息系統(tǒng)(IS)專家關(guān)注信息資源獲取、部署、管理以及在組織內(nèi)的使用;信息技術(shù)專家(IT)則在一個(gè)組織或社會(huì)環(huán)境中通過計(jì)算技術(shù)的選擇、創(chuàng)建、運(yùn)用、集成和管理來滿足用戶的需求。
考慮到北大的研究型綜合性大學(xué)的特點(diǎn),不適合建設(shè)IT方向,而北大的信息管理系(原圖書館系)比較符合IS的培養(yǎng)方向,表1主要比較CC2005對(duì)CE、CS、SE三個(gè)方向在各知識(shí)領(lǐng)域的不同強(qiáng)度要求。
北大是一所研究型的綜合性大學(xué),具有濃厚的人文背景。北大信息學(xué)院在計(jì)算的理論和算法、計(jì)算機(jī)軟件系統(tǒng)和軟件工程、電子工程等方面有雄厚的科研基礎(chǔ)和教師力量,我們可以在CS、CE、SE這三個(gè)領(lǐng)域開設(shè)出很強(qiáng)的系列課程。講得通俗一點(diǎn)就是北大計(jì)算機(jī)專業(yè)畢業(yè)生可以做三件事情:計(jì)算機(jī)軟件、計(jì)算機(jī)硬件及計(jì)算機(jī)信息管理、處理和應(yīng)用。
課程改革的總體思路是保持基礎(chǔ)扎實(shí)的傳統(tǒng)(數(shù)學(xué)、程序設(shè)計(jì)、體系及系統(tǒng)軟件基礎(chǔ)課),打通本科生選修研究生課程的通路,增加與最新計(jì)算機(jī)技術(shù)接軌的新技術(shù)課,在計(jì)算機(jī)軟件(對(duì)應(yīng)于CS)、計(jì)算機(jī)硬件與體系結(jié)構(gòu)(對(duì)應(yīng)于CE)和信息技術(shù)及應(yīng)用(對(duì)應(yīng)于SE)這三個(gè)專業(yè)方向上進(jìn)行課程建設(shè)。增加學(xué)生的選擇意味著學(xué)院要開設(shè)更多更好的課程,我們將采取對(duì)于基礎(chǔ)課因崗聘人、對(duì)于新技術(shù)課采取因人設(shè)課和因崗聘人相結(jié)合的建設(shè)方式。
北大計(jì)算機(jī)軟件(計(jì)算機(jī)科學(xué))方向目前課程已比較完備,可以與智能系共建一些理論課,例如隨機(jī)過程、信息論基礎(chǔ)、機(jī)器學(xué)習(xí)導(dǎo)論等。
計(jì)算機(jī)硬件(計(jì)算機(jī)工程)方向可以與電子學(xué)系共建,在軟件的基礎(chǔ)上開設(shè)一些硬件相關(guān)課程。
信息處理及應(yīng)用(軟件工程)方向可以采用本院教授和公司共建的方式開設(shè)一些實(shí)用性較強(qiáng)的課程。
北大畢業(yè)生要求總學(xué)分為140分,其中英語政治等公共必修課占了24學(xué)分、通識(shí)教育類選修課占16學(xué)分、畢業(yè)論文6學(xué)分,只有94學(xué)分可以用于專業(yè)課程。
在這些專業(yè)課程中,有一些是共同的專業(yè)基礎(chǔ)課程:數(shù)學(xué)物理基礎(chǔ)課程26學(xué)分,程序設(shè)計(jì)基礎(chǔ)課程12學(xué)分,專業(yè)數(shù)學(xué)基礎(chǔ)12學(xué)分,軟件基礎(chǔ)10學(xué)分,硬件基礎(chǔ)12學(xué)分。對(duì)于不同的專業(yè)方向,其基礎(chǔ)課程要求也不一樣。例如,對(duì)于數(shù)學(xué)物理基礎(chǔ)課程,學(xué)生可以選擇偏數(shù)學(xué)類(CS方向),或者偏物理類(CE方向),或者數(shù)學(xué)物理基礎(chǔ)都比較均衡(SE方向)。
還有22學(xué)分的計(jì)算機(jī)專業(yè)選修課程,分為計(jì)算機(jī)相關(guān)理論、計(jì)算機(jī)技術(shù)、計(jì)算機(jī)應(yīng)用及新技術(shù)三個(gè)大類。
下面是各基礎(chǔ)課程和專業(yè)選修課程的學(xué)時(shí)學(xué)分要求。
1.?dāng)?shù)學(xué)物理基礎(chǔ) 26學(xué)分
學(xué)生可以根據(jù)情況自由組合,可能的組合:(1)偏數(shù)學(xué)類(CS方向,或智能方向),1+2+(5,6,7)中的一門;(2)偏物理類(CE方向,或者電子、微電子學(xué)方向),3+4+5+6+7;(3)數(shù)學(xué)物理基礎(chǔ)都比較均衡(SE方向),2+3+(5,6,7)中的任意兩門。對(duì)偏物理類的CE方向?qū)W生建議將(5,6,7)改為普通物理(上、下)。
學(xué)生可以根據(jù)情況自由選擇專業(yè)方向,組合自己感興趣的課程。學(xué)生的選擇需要班主任、導(dǎo)師等教師肩負(fù)更多的指導(dǎo)責(zé)任。需要解決的問題是:很多基礎(chǔ)課程都是大一就開設(shè)的,此時(shí)有很多學(xué)生對(duì)于計(jì)算機(jī)專業(yè)的整體面貌、對(duì)專業(yè)方向(大方向?yàn)橛?jì)算機(jī)、智能、電子、微電子,小方向?yàn)镃S、CE、SE)的選擇都不太確定。因此需要班主任和導(dǎo)師引導(dǎo)學(xué)生進(jìn)行正確選擇,而且對(duì)于那些將來興趣改變了的學(xué)生,應(yīng)該允許他們轉(zhuǎn)換方向并補(bǔ)修相關(guān)基礎(chǔ)課程。
2.程序設(shè)計(jì)基礎(chǔ)(12學(xué)分)
強(qiáng)化動(dòng)手能力,每學(xué)期開始考試,合格者可以免修該課,同時(shí)選修一門相應(yīng)的課程難度更深的課(相當(dāng)于香港科大的honor course),對(duì)于大班課,增加習(xí)題課輔導(dǎo)的環(huán)節(jié)。
6.計(jì)算機(jī)專業(yè)課程(22學(xué)分,8-10門課)
以下1-3是目前已經(jīng)開設(shè)的課程系列,對(duì)三個(gè)專業(yè)方向的學(xué)生都是開放的。4-5是準(zhǔn)備建設(shè)的“計(jì)算機(jī)體系結(jié)構(gòu)”和“信息系統(tǒng)及應(yīng)用”兩個(gè)專業(yè)方向的相關(guān)課程系列,其他方向的學(xué)生也可以選修。
(1)計(jì)算機(jī)相關(guān)理論課程
建議:打通本科生選修研究生課程的通道,對(duì)于將來進(jìn)入本院讀研的高年級(jí)本科學(xué)生,其學(xué)分可以記入研究生課程;對(duì)于畢業(yè)出國留學(xué)或直接工作的學(xué)生,其學(xué)分可以轉(zhuǎn)入本科成績冊(cè)。
下面,對(duì)三個(gè)專業(yè)方向的辦學(xué)定位和課程設(shè)置分別予以介紹。
3.1 計(jì)算機(jī)軟件專業(yè)方向(計(jì)算機(jī)科學(xué),CS)
本專業(yè)方向“計(jì)算機(jī)軟件”的名稱借用北大計(jì)算機(jī)系傳統(tǒng)的叫法,比較接近于CC2005的“計(jì)算機(jī)科學(xué)”CS方向?!坝?jì)算機(jī)科學(xué)”是一門研究計(jì)算機(jī)和可計(jì)算系統(tǒng)的學(xué)科,包括它們的理論、設(shè)計(jì)、開發(fā)和應(yīng)用技術(shù)。主要的領(lǐng)域包括算法與復(fù)雜性、程序設(shè)計(jì)語言、軟件設(shè)計(jì)與理論、數(shù)據(jù)庫系統(tǒng)、人工智能、計(jì)算機(jī)系統(tǒng)、網(wǎng)絡(luò)、人機(jī)交互、計(jì)算科學(xué)等。涉及數(shù)學(xué)、概率、邏輯、心理學(xué)等方面。注重理論知識(shí)的教學(xué),培養(yǎng)學(xué)生系統(tǒng)地掌握計(jì)算機(jī)科學(xué)理論、計(jì)算機(jī)軟硬件系統(tǒng)及應(yīng)用知識(shí),基本具備本領(lǐng)域分析問題解決問題的能力,具備實(shí)踐技能。CS方向畢業(yè)的學(xué)生適合于進(jìn)入計(jì)算機(jī)專業(yè)相關(guān)研究領(lǐng)域攻讀碩士、博士學(xué)位。
CS方向建議課程體系如下:
3.2 計(jì)算機(jī)體系結(jié)構(gòu)專業(yè)方向(計(jì)算機(jī)工程,CE)
“計(jì)算機(jī)體系結(jié)構(gòu)”的名稱比較能體現(xiàn)北大在計(jì)算機(jī)體系結(jié)構(gòu)方面的研究和人才培養(yǎng),專業(yè)方向比較接近于CC2005的“計(jì)算機(jī)工程”CE方向。計(jì)算機(jī)工程學(xué)是現(xiàn)代計(jì)算系統(tǒng)、計(jì)算機(jī)控制設(shè)備的軟硬件設(shè)計(jì)、制造、實(shí)施和維護(hù)的科學(xué)與技術(shù)。計(jì)算機(jī)工程學(xué)牢固建立在計(jì)算、數(shù)學(xué)、科學(xué)和工程學(xué)的基礎(chǔ)上,并應(yīng)用這些理論和原理解決在軟硬件和網(wǎng)絡(luò)的設(shè)計(jì)過程中面臨的技術(shù)問題。計(jì)算機(jī)工程學(xué)是計(jì)算機(jī)科學(xué)和電子工程的交叉學(xué)科。為了設(shè)計(jì)小規(guī)模電子系統(tǒng)、微處理器和計(jì)算機(jī)系統(tǒng),計(jì)算機(jī)工程學(xué)特別加強(qiáng)了對(duì)數(shù)字邏輯設(shè)計(jì)部分的要求。
設(shè)計(jì)是所有工程的根本。對(duì)計(jì)算機(jī)工程師而言就是應(yīng)用科學(xué)和數(shù)學(xué)理論、原理設(shè)計(jì)硬件、軟件、網(wǎng)絡(luò)和工藝解決技術(shù)問題。從根本上來說,這是考慮到組織結(jié)構(gòu)、技術(shù)、工藝、方法、接口和部件選擇等因素,并經(jīng)過深思熟慮之后的選擇過程。畢業(yè)生必須熟悉計(jì)算機(jī)系統(tǒng)原理、系統(tǒng)硬件和軟件的設(shè)計(jì)、系統(tǒng)構(gòu)造和分析過程。他們必須擁有系統(tǒng)級(jí)視點(diǎn),深刻理解系統(tǒng)如何運(yùn)行,而不是僅僅知道系統(tǒng)能做什么和使用方法等外部特性。一個(gè)計(jì)算機(jī)工程師應(yīng)具備設(shè)計(jì)、建立和調(diào)試軟件與硬件系統(tǒng)的親身經(jīng)歷。
基礎(chǔ)知識(shí)包括基礎(chǔ)科學(xué)、離散和連續(xù)數(shù)學(xué)以及概率與統(tǒng)計(jì)的應(yīng)用。計(jì)算機(jī)相關(guān)的課程都來自于計(jì)算機(jī)體系結(jié)構(gòu)、算法、程序設(shè)計(jì)、數(shù)據(jù)庫、網(wǎng)絡(luò)、軟件工程以及通信。電子工程相關(guān)的課程一般來自于電路、數(shù)字邏輯、微電子、信號(hào)處理、電磁學(xué)以及集成電路設(shè)計(jì)。
CE方向的建議課程體系如下:
3.3 信息系統(tǒng)與應(yīng)用(軟件工程)專業(yè)方向要求課程
“信息系統(tǒng)與應(yīng)用”的名稱比較通俗,專業(yè)方向比較接近于CC2005的“軟件工程”SE方向?!败浖こ獭笔且婚T用系統(tǒng)的、規(guī)范的、可度量的方法開發(fā)、運(yùn)行和維護(hù)軟件的學(xué)科。主要的知識(shí)領(lǐng)域包括:計(jì)算基礎(chǔ)、數(shù)學(xué)和工程基礎(chǔ)、職業(yè)實(shí)踐、軟件建模與分析、軟件設(shè)計(jì)、軟件驗(yàn)證與確認(rèn)、軟件演化、軟件過程、軟件質(zhì)量和軟件管理。軟件工程教學(xué)既重視理論知識(shí)和較高層次分析問題、解決問題的方法,也重視軟件設(shè)計(jì)和工程實(shí)踐。培養(yǎng)掌握科學(xué)思維方法、工程設(shè)計(jì)方法和良好工程素養(yǎng),具有軟件開發(fā)能力,具有軟件開發(fā)實(shí)踐和項(xiàng)目組織的初步經(jīng)驗(yàn),能適應(yīng)技術(shù)進(jìn)步和社會(huì)需求變化的高素質(zhì)軟件工程專門人才。
工程活動(dòng)以設(shè)計(jì)為中心,設(shè)計(jì)在軟件工程活動(dòng)中占有十分重要的地位。為了滿足項(xiàng)目需求,工程設(shè)計(jì)過程必須對(duì)潛在的沖突和約束進(jìn)行折衷。工程設(shè)計(jì)涉及技術(shù)、經(jīng)濟(jì)、法律和社會(huì)等方面的問題。因?yàn)檐浖奶厥庑?,軟件工程與傳統(tǒng)的工程學(xué)不同。軟件工程更關(guān)注抽象、建模、信息組織和表示、變更管理等。軟件工程在產(chǎn)品的設(shè)計(jì)階段必須考慮實(shí)現(xiàn)和質(zhì)量控制。持續(xù)的演化是軟件產(chǎn)品的重要特征。軟件工程設(shè)計(jì)的關(guān)鍵是工程設(shè)計(jì)決策,它將用于軟件抽象的各個(gè)層次。軟件工程的相關(guān)學(xué)科有計(jì)算機(jī)科學(xué)與技術(shù)、數(shù)學(xué)、計(jì)算機(jī)工程、管理學(xué)、系統(tǒng)工程和人類工程學(xué)等。
SE方向的建議課程體系如下:
4 結(jié)束語
上述課程設(shè)置建議可能會(huì)在課程改革過程中進(jìn)一步修改和完善,以推進(jìn)北大信息學(xué)院計(jì)算機(jī)專業(yè)本科教育,更好的適應(yīng)社會(huì)發(fā)展的需求、適應(yīng)計(jì)算機(jī)科學(xué)技術(shù)發(fā)展的需求。在實(shí)施過程中還要注意以下幾個(gè)方面。
(1) 重視基礎(chǔ)。對(duì)于計(jì)算機(jī)專業(yè)來說,最主要的是數(shù)學(xué)和編程基礎(chǔ),注重培養(yǎng)數(shù)學(xué)思維能力。除數(shù)理邏輯、集合論與圖論、代數(shù)結(jié)構(gòu)與組合數(shù)學(xué)等離散數(shù)學(xué)外,開設(shè)概率統(tǒng)計(jì)、計(jì)算方法、理論計(jì)算機(jī)基礎(chǔ)、信息論、隨機(jī)過程、人工智能、機(jī)器學(xué)習(xí)等理論課程。
(2) 在北大信息學(xué)院計(jì)算機(jī)系進(jìn)行專業(yè)引導(dǎo),可以設(shè)置計(jì)算機(jī)軟件CS、計(jì)算機(jī)體系結(jié)構(gòu)CE、信息系統(tǒng)與應(yīng)用SE三個(gè)方向。其中CS的數(shù)學(xué)基礎(chǔ)更強(qiáng)、算法理論、人工智能等方面的課程更多。CE的數(shù)學(xué)和物理基礎(chǔ)并重,更多開設(shè)計(jì)算機(jī)系統(tǒng)工程、數(shù)字電路、VLSI設(shè)計(jì)、硬件測試與維護(hù)等方向的課程。SE方向在項(xiàng)目管理、軟件模型與需求分析、軟件驗(yàn)證與測評(píng)、信息系統(tǒng)集成等方面開設(shè)相關(guān)課程。要注意各個(gè)專業(yè)方向知識(shí)體系的建設(shè),注重學(xué)生專業(yè)能力的培養(yǎng),而不是流于若干課程的堆積。
(3) 打通本科生選修研究生課程的通道,讓本科生選修感興趣的專業(yè)課程,例如數(shù)據(jù)庫、網(wǎng)絡(luò)、圖形圖像、人工智能、軟件工程等,以達(dá)到類似于GeorgiaTech那樣專業(yè)細(xì)化的效果,培養(yǎng)更適應(yīng)于社會(huì)需求的專業(yè)人才。
(4) 開設(shè)“優(yōu)秀班”(honor track)課程,這樣更有利于因材施教,培養(yǎng)領(lǐng)袖人才。
(5) 加強(qiáng)關(guān)于團(tuán)隊(duì)合作、人際溝通與交流、金融管理、倫理和社會(huì)等方面的訓(xùn)練,有些內(nèi)容可以安排在傳統(tǒng)的政治課中完成。
總體說來,我們的課程設(shè)置理念是“重視理論基礎(chǔ)、加強(qiáng)工程實(shí)踐、細(xì)化專業(yè)引導(dǎo)”,歡迎從事計(jì)算機(jī)教育的同行專家進(jìn)一步關(guān)注北大計(jì)算機(jī)專業(yè)教學(xué)改革方案、實(shí)施情況和培養(yǎng)效果。
參考文獻(xiàn):
[1] CC2005, The Overview Report of Computing Curricula 2005. http://www.computer.org/portal/cms_docs_ieeecs/ieeecs/education/cc2001/CC2005-March06Final.pdf
[2] 計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)教學(xué)指導(dǎo)分委員會(huì).計(jì)算機(jī)本科專業(yè)發(fā)展戰(zhàn)略研究報(bào)告(討論稿).《高等學(xué)校理工科教學(xué)指導(dǎo)委員會(huì)通訊》, 2004,(11).
[3] 2006-2007 Computer Science Threads General Catalog, Georgia Tech. http://www.catalog.gatech.edu/colleges/coc/ugrad/comsci/threads.php