文章編號:1672-5913(2008)12-0039-02
摘要:本文闡述了在數(shù)據(jù)庫教學過程中積累的一些經(jīng)驗,給出了教學的重點,實驗和課程設(shè)計的安排,以及課程的考核方式。
關(guān)鍵詞:數(shù)據(jù)庫;教學實踐;教學安排
中圖分類號:G642
文獻標識碼:B
1 前言
中原工學院屬于二類本科院校,計算機學院目前開設(shè)三個專業(yè):計算機科學與技術(shù)專業(yè)、網(wǎng)絡工程專業(yè)和軟件工程專業(yè)。培養(yǎng)目標是能夠從事計算機軟硬件以及網(wǎng)絡設(shè)計、運行及維護的高級應用型人才。
數(shù)據(jù)庫課程是計算機及相關(guān)專業(yè)的核心課程,通過多年的辦學實踐以及參考兄弟院校的培養(yǎng)計劃,將三個專業(yè)的數(shù)據(jù)庫課程要求安排的一樣,我們對數(shù)據(jù)庫課程的安排如下:將數(shù)據(jù)庫原理和數(shù)據(jù)庫應用合為一門課程,課程名為“數(shù)據(jù)庫原理及應用”,開課學期為第6學期,5學分,75學時(55理論+20實踐)。
2 課程的教學要求
2.1課程內(nèi)容安排
對于專業(yè)核心課程,任課教師一直選用國內(nèi)或者國際流行的主流教材。對于數(shù)據(jù)庫課程,我們目前使用的是王珊、薩師煊老師編寫,高等教育出版社出版的《數(shù)據(jù)庫系統(tǒng)概論》第四版。該課程各章節(jié)安排如表1所示。
數(shù)據(jù)庫課程是一門知識體系結(jié)構(gòu)比較完整、知識的整體性和連貫性非常強的一門學課,因此在教學中隨著概念的引入和知識的加深,應逐步向?qū)W生介紹知識的連貫性,通過實例向?qū)W生介紹如何進行需求分析、在進行需求分析的過程中應該重點考慮的問題以及注意事項。進行數(shù)據(jù)庫設(shè)計時特別應該強調(diào)數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計的重要性,因為這是數(shù)據(jù)庫非常重要的一步,是數(shù)據(jù)庫設(shè)計的基礎(chǔ),如果這一步設(shè)計出現(xiàn)錯誤,以后的設(shè)計都會出錯。數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計完成以后進行數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計,將ER圖轉(zhuǎn)換為邏輯模型,然后進行優(yōu)化,并用規(guī)范化理論進行分析。這些步驟要使每一位同學都有深刻的認識,改變一些同學只注重編程而忽視數(shù)據(jù)庫設(shè)計的錯誤思想。通過例子使學生認識到數(shù)據(jù)庫課程的知識是一環(huán)扣一環(huán),是一門體系結(jié)構(gòu)非常完整的課程,該課程中沒有孤立存在的知識。例如,在講到SQL語言時,根據(jù)題意寫出SQL腳本后,向?qū)W生提出如何用關(guān)系代數(shù)實現(xiàn)。在復習關(guān)系代數(shù)時讓學生根據(jù)內(nèi)容將關(guān)系代數(shù)轉(zhuǎn)換為相應的SQL語言腳本,體現(xiàn)了關(guān)系數(shù)據(jù)庫是建立在嚴格的數(shù)學理論基礎(chǔ)之上。在教學中要求學生能夠熟練進行關(guān)系代數(shù)和SQL語言之間轉(zhuǎn)換。
數(shù)據(jù)庫課程也是一門與實際結(jié)合非常緊密、實用性非常強的課程。因此,在教學中與實際應用緊密結(jié)合,由淺入深進行系統(tǒng)的介紹。結(jié)合SQL語言在SQL Server 2000的查詢分析器進行講解,并指出SQL Server 2000與標準SQL的區(qū)別,適當介紹SQL Server 2000中的SQL-Transact SQL。
2.2理論教學的重點
根據(jù)培養(yǎng)目標,數(shù)據(jù)庫課程教學就應僅僅圍繞應用,并將理論與實踐密切結(jié)合起來,理論教學的重點:①基本概念,如概念模型、邏輯模型、數(shù)據(jù)庫數(shù)據(jù)的獨立性和完整性、并發(fā)控制等;②基本理論,如關(guān)系代數(shù)、規(guī)范化理論;③基本技能,如數(shù)據(jù)庫設(shè)計、SQL語言等。
加強課堂教學,提高課堂教學質(zhì)量,注重學生動手能力的培養(yǎng),由原來的以教師為中心轉(zhuǎn)變?yōu)橐詫W生為中心,加強師生之間的教學互動。在講解的過程中,將知識點展開并與實際工程相結(jié)合,課堂上老師提出問題后先由學生回答,對回答正確的同學給予鼓勵,對錯誤回答進行簡單的分析。對于課程涉及較深的內(nèi)容時只給予簡單的介紹并列出參考書,讓那些有能力和感興趣的同學課外進行學習。例如,講到索引時涉及到數(shù)據(jù)庫文件的物理結(jié)構(gòu),而數(shù)據(jù)庫文件的物理結(jié)構(gòu)涉及的知識和內(nèi)容又較多,可以讓學生參考由復旦大學施伯樂等老師編寫、高等教育出版社出版的《數(shù)據(jù)庫系統(tǒng)教程 第二版》。
3 實驗和課程設(shè)計
3.1實驗和課程設(shè)計的構(gòu)建
由于數(shù)據(jù)庫課程是應用性非常強的一門課程,因此在教學中加強實踐環(huán)節(jié)非常重要,我們在課程中安排20學時的實驗,學期末有1.5周的課程設(shè)計。實驗內(nèi)容安排如表2所示。
課程實驗要求學生規(guī)范書寫代碼,在實驗中用軟件工程的思想和技術(shù)要求學生,實驗指導書提前上傳到網(wǎng)上。對于寫過數(shù)據(jù)庫應用程序的同學,讓他們學習擴展SQL。個別能力強的同學可以提出申請不做實驗指導書上的內(nèi)容,而由老師安排具有一定難度的幾個題目進行選作,要求3~5人為一個小組完成一個題目,期末進行代碼和文檔驗收。例如,其中一個題目要求學生寫出標準SQL解釋器。
要求學生熟練掌握一個應用程序開發(fā)平臺,如Delphi、PowerBuilder、Java或者C#等,熟練掌握一種數(shù)據(jù)庫,主要是SQL Server或者Oracle。在進行實驗時重點強調(diào)一些技術(shù)的應用,例如OO技術(shù)、觸發(fā)器技術(shù)、存儲過程等,使學生認識到這些技術(shù)是數(shù)據(jù)庫的基本技術(shù)。
理論課程上完后在學期末安排1.5周的數(shù)據(jù)庫課程設(shè)計,1.5學分。課程設(shè)計的題目在新學期上課時就在網(wǎng)上進行公布,一般都公布3個以上的題目,根據(jù)以往的情況看,有相當一部分學生確實在做,個別同學做的還非常好。在教學中對于能力不同的同學有針對性的進行引導,提高同學們的興趣,激發(fā)同學們的學習熱情,同時也會打消一些同學的浮躁情緒。例如,我出了一個課程設(shè)計題目是關(guān)于圖書館管理信息的題目,在課程設(shè)計任務書中分為必做項和選做項。這個題目對于每一位同學都不生疏,一般程度的同學都能夠做出必做項,對于動手能力強的同學會很快做出必做項,完成必做項只能得到70~80分,但不到課程設(shè)計結(jié)束不驗收成績,因此這部分動手能力強的同學要想拿高分就必須做選做項。此時教師要引導這部分學生使用高級的技術(shù),例如自己寫組件,做3層的數(shù)據(jù)庫應用系統(tǒng),對借書情況的統(tǒng)計與決策、動態(tài)查詢和動態(tài)報表等,使學生認識到數(shù)據(jù)庫應用程序不是簡單的數(shù)據(jù)錄入和靜態(tài)查詢。通過這種形式的考核對程度高的同學是促進,對動手能力不強的同學也是一種鞭策。
3.2實驗和課程設(shè)計的考核方式
對于實驗和課程設(shè)計,尤其是課程設(shè)計,平時耐心輔導,驗收時認真考核,防止一個人做出來,其他同學拷貝的情況發(fā)生,對課程設(shè)計進行嚴格的代碼驗收,驗收代碼時不僅僅看程序的運行,更重要的是聽學生講解代碼,或者詢問代碼邏輯,這種方法有效地防止了抄襲現(xiàn)象的發(fā)生。
數(shù)據(jù)庫課程是必修課,期末考試占80%,實驗占10%,作業(yè)和課堂各占5%。
參考文獻
[1] 向琳,左德承,羅丹彥等. “計算機設(shè)計與實踐”課程創(chuàng)新性實踐教學探索[J]. 計算機教育,2007,(3):16-18.
[2] 周家地. 數(shù)據(jù)庫應用基礎(chǔ)課程教學的時間與思考[J]. 計算機教育,2007,(3):27-29.
[3] 王珊,薩師煊. 數(shù)據(jù)庫系統(tǒng)概論 第四版[M]. 北京:清華大學出版社.
[4] 施伯樂,丁寶康,汪衛(wèi). 數(shù)據(jù)庫系統(tǒng)教程 第二版[M]. 北京:高等教育出版社.