摘要:總結高校計算機專業(yè)\"數據庫綜合實驗\"實例教學經驗,圍繞著教學目標的不斷調整和實現,教師自己設計開發(fā)實驗項目作為教學實例,引導學生從模仿到獨立自主開發(fā)設計,能大大提高教學效率和教學水平,提高學生的學習效率和實際應用能力,加速理論和實際結合的過程。
關鍵詞:教學實例;教學目標;應用能力;教學水平
中圖分類號:G642文獻標識碼:A文章編號:1009-3044(2008)31-0924-03
The Design of the Practicality Curriculum Teaching Example
TANG Gu-yun
(College of Computer Science and Information Engineering, Guangxi Normal University, Guilin 541004, China)
Abstract: It is the summary of teaching experience of the curriculum for \"database comprehensive experiment\" in the college of Computer specialty, surround a teaching target to adjust continuously with realization, teachers themselves design and develop the experimental project as example to guide the student to design from the imitation to maintains independence, so, it can raise teaching efficiency and teaching level consumedly, raise the student's study efficiency and practical applications ability, accelerate the combination process of theories and practical applications.
Key words: The teaching example; The teaching target; Applied ability; The Teaching level
1 引言
數據庫綜合實驗著眼于原理與應用的結合點,使學生學會把從書本中所學到的知識用于解決實際問題,并進行軟件設計的綜合訓練,包括問題分析,總體結構設計,用戶界面設計,程序設計基本技能和技巧,開發(fā)方法,開發(fā)步驟等等,是促進學生掌握數據庫相關的計算機技術理論知識,把理論用于實踐,理論和實際相結合的綜合性實踐性教學課程,一般來說,教學的內容應是靈活的,多變的,涉及知識的內容應該是豐富的,先進的,由于計算機教材的變化往往與實際應用之間有一個時間差,因此要使教學內容根據學科發(fā)展的前沿性的開發(fā)技術的變化而隨時調整,確保學生學會和掌握先進的數據庫軟件開發(fā)技術和方法,不應該只遵循某本教材。如何在短期內讓學生運用學習過的理論知識,掌握各種體系結構的開發(fā)方法,解決數據庫實際應用系統(tǒng)中的具體問題,提高教學效率和學習效率,提高學生的實際應用能力,加速理論和實際結合的過程,教學內容的組織和教學方法使用決定著教學目標的實現與否。
2 教學目標設定
數據庫綜合實驗的開發(fā)模式有一個DBMS支撐的后臺數據庫服務器,整個應用系統(tǒng)可以是C/S、B/S和分布式三層結構體系的多層模式,最新的技術是分布式多層應用模式。我們的教學目標是既追求技術的先進性,讓學生掌握學科發(fā)展的相關的前沿技術;同時追求技術的實用性,要分析應用系統(tǒng)的性質及最終用戶的需求,然后再尋找能解決問題的最實用手段,因為用戶并不只關心你采用多么先進的技術,他們最關心的還是應用系統(tǒng)的可靠、快速、方便及性價比等因素。 例如,系統(tǒng)運行在廣域網,要考慮數據的安全以及帶寬問題;如果用戶不可能完成復雜的程序設置、安裝等工作, 要考慮采用多層B/S模式來開發(fā)系統(tǒng);再如,開發(fā)一個在局域網內并且只針對少量用戶的應用系統(tǒng),不一定要使用多層模式,因為會增加系統(tǒng)的工作量與維護量。
在教學時間安排上,是教師授課時間占總學時數的三分之一,三分之二的時間放在實驗室面對面地指導學生進行設計開發(fā)。要求學生完成基本題及提高題的實驗項目,基本題主要是為使學生能進一步鞏固和深入理解所學的數據庫理論知識,軟件工程等相關理論知識而開設;提高題則是能讓學生充分發(fā)揮其想象力、創(chuàng)造力以及團結協(xié)作精神將所學的知識運用到實際問題的解決,學會根據實際需要構建各種體系結構下的應用系統(tǒng)。受學時數的限制,在教學過程中通過所教班級學生的調查,發(fā)現80%同學擁有自己的計算機,因此我們鼓勵學生充分利用課余時間完成實驗項目。
開發(fā)數據庫應用系統(tǒng)涉及與計算機軟件相關的多方面知識,包括程序設計及其相關知識、開發(fā)環(huán)境、數據庫原理、數據庫管理系統(tǒng)和軟件工程等,需要開發(fā)者具備這些領域的綜合知識。對學生來說,沒有經過綜合實踐訓練和總結,很難高效率地設計出滿足用戶業(yè)務需求、結構簡潔、性能良好并具備一定可擴充能力的數據庫應用系統(tǒng)。要在有限的時間內完成教學任務達到預期的教學目標,教師的指導作用是非常重要的,與傳統(tǒng)講授法相比實例教學具有以下特點:著眼于能力的培養(yǎng),實例教學是模擬真實問題,讓學生綜合利用所學的知識,從而提高學生分析問題和解決問題的能力;它以學生為主體,發(fā)揮其主觀能動作用,增強消化和運用知識與經驗的能力,強調學生的參與性和主動性。結合本課程的特點,采用實例教學法有利用貼近學生的生活實際,體現學科知識的應用性,通過對典型實例理解普遍性的東西,掌握知識結構,這種方法更加適合數據庫綜合實驗這種實踐性的課程教學。
實例教學對教師的要求較高,要搞好實例教學,教師必須下大功夫,在明確教學目標基礎上,選擇適度、適用的教學實例。雖然現在有很多關于數據庫應用系統(tǒng)開發(fā)實例的教材、書籍,但它往往在技術上各有側重,而且結構龐大、復雜,沒有做到各種開發(fā)技術的綜合,不太適合于教學。因此,最好的教學實例應該是針對教學目標并結合學生的實際情況和現有的軟硬件資源教師自己設計開發(fā)。數據庫綜合實驗的應用系統(tǒng)的軟件開發(fā)是一種綜合性的多系統(tǒng)集成,要完成讓學生理解各種體系結構下的開發(fā)設計方法,必須給出各種范例來引導學生,結合多媒體的教學設備,發(fā)揮多媒體教學知識容量大,教學信息直觀,容易引發(fā)學生求知興趣等特點,完成課堂的實例教學任務。下面是幾個具體的教學實例。
3 教學要點
3.1 C/S模式構建
在《數據庫綜合實驗》課程的教學中,采用一個典型的與學生現實學習生活相關的具有普遍性C/S模式的實例“學生信息管理系統(tǒng)”指導學生完成基礎題設計。完整地介紹數據庫應用系統(tǒng)的各個開發(fā)階段、相關的開發(fā)技術、開發(fā)語言、開發(fā)工具。討論開發(fā)該項目需要的基礎知識,然后按照軟件工程的過程,詳細討論項目實例的開發(fā)過程及相關的開發(fā)技術,包括需求分析、數據庫設計、軟件結構設計、詳細設計與編碼實現、安裝程序的制作技術以及系統(tǒng)實施相關問題,并在具體的“學生信息管理”數據庫應用系統(tǒng)中加以實施,設計含有學生基本信息、學生成績信息的一個名為“ZM”的SQL SERVER數據庫服務器中的student數據庫。通過課堂多媒體教學設備教學演示讓學生掌握數據庫系統(tǒng)的建立,表設計、數據庫設計、表間的關聯查詢和視圖設計、表單設計、菜單與工具欄設計及程序設計、客戶端與數據庫服務器的連接操作等等教學內容的具體實現過程(如圖1~圖3所示)。在掌握了理論知識的前提下,學生對數據庫的開發(fā)的基本過程有一個全面而清晰的認識,容易能接受,教學效果也比較好。
3.2 簡單實例闡明多層結構的數據傳輸過程
隨著學科的不斷進步和發(fā)展,各種開發(fā)技術不斷出現,比如說要開發(fā)一個三層結構,中間件、通信協(xié)議等技術是必不可少,層次間的信息通訊、數據請求、數據傳遞等多種問題的具體如何實現,教師應及時補充實例展示有關理論,讓學生學到解決實際問題的經驗。數據查詢處理在分布式多層應用中是數據庫應用系統(tǒng)中典型的重要的功能。教學案例利用Delphi中的DATASNAP 多層應用開發(fā)技術建立中間件,以DCOM為通訊協(xié),以包含企業(yè)邏輯的組件形態(tài),一方面通過一組數據連接組件,為客戶端應用程序提供服務,另一方面通過數據庫連接組件與遠程數據庫服務器連接。實現信息交換和處理。這樣構建的多層應用系統(tǒng)的查詢執(zhí)行過程是:客戶程序向應用服務器請求數據,應用服務器收到客戶程序的請求后,就從遠程數據庫服務器檢索數據,并打包成DATA返回給客戶程序,客戶程序收到數據包后把包打開并顯示。以網絡中的學生信息處理系統(tǒng)中的查詢實現為例,說明查詢操作時的數據傳遞過程的應用服務器的查詢邏輯封裝,客戶端向應用服務器傳遞查詢參數,應用服務服務器返回查詢結果,記錄刷新控制等設計技術,執(zhí)行過程圖4~圖8:
■
圖4 DCOM應用服務器運行圖5 客戶端開始查找(成功)
■
圖6 客戶端再次查找 圖7 服務器端提示查找不成功
這里以查詢?yōu)閷嵗饕怀鲆訢ATASNAP為實現技術的分布式應用系統(tǒng)中三個層次間的互連和互操作的問題的解決。 這一案例可以引導學生根據不同的應用系統(tǒng),通過組件實現邏輯功能的劃分,隱藏邏輯代碼,實現更復雜的企業(yè)應用邏輯,進一步有效地進行并發(fā)控制、安全控制、負載均衡、可靠傳輸等保證,從而構建出不同的多層應用系統(tǒng)。
3.3 B/S模式構建
B/S體系統(tǒng)結構具有客戶端零維護的優(yōu)勢,學會這一模式的應用系統(tǒng)開發(fā)也是教學目標之一。這里以Delphi7中的IntraWeb使用可視化Windows 應用程序設計思路來設計Web應用程序的教學案例,IntraWeb中使用一種特定的Form,用一組與常見的Delphi組件相似的IW的Web組件進行界面設計,并用同樣的思路完成相關的屬性設置,事件選擇和方法定義。 設計完成執(zhí)行時,IntraWeb將所設計的畫面轉化為網頁顯示給用戶。普通Windows應用程序在建立多個Form時,如果不做特別設置會自動調入內存供系統(tǒng)使用,也就是建立多個界面是非常容易的事情。基于IntraWeb的Web應用程序卻不盡然。一般來說,一個數據庫Web應用系統(tǒng)不可能只有一個頁面,那么如何創(chuàng)建多個其它的頁面,形成一個完整的數據庫Web應用程序呢?它涉及到工程的建立,多頁面的設計,程序發(fā)布等相關設計技術問題,系統(tǒng)中運行界面如圖9~圖10:
■
圖9 登錄界面圖10 信息錄入頁面
學生可以模仿教師的案例,可以根據需要生成主界面之外的其他界面,組合成一個完整的與數據庫相關的Web應用程序,這里選擇的應用程序的IntraWeb開發(fā)模式是Standard-alone Server,自帶了一個WebServer。程序運行時,它實際上是一個Web服務器,其它機器就可以通過http來訪問這個程序。這在小型的局域網形成了B/S模式的瘦客戶。但如果客戶端較多,最好以ISAPI的形式發(fā)布。當程序測試通過后,將項目文件的Program 改成Library,將IWInitStandAlone改成IWInitISAPI重新編譯成DLL文件,應用程序就換成了ISAPI模式。
4 教學實例的不斷完善
教學實例的設計是圍繞教學目標進行的。隨著學科的發(fā)展和最新開發(fā)技術的產生,教學目標也應隨之變化,應增加最新實例闡述關鍵技術的解決和程序設計技巧,循序漸進,不斷探索,不斷改進,不斷地完善、補充,設計出更好符合學生實際的教學實例,運用到教學實踐中。實例教學對教師的要求較高,要高水平地完成教學任務,指導學生開發(fā)出高水平數據庫應用系統(tǒng),教師必須具有儲備更多的知識和隨時對其進行更新的能力,不斷地學習, 努力開展相關科研工作,在教學實例的設置上可結合自己在科研工作中課題,以科研促進教學;也可引導學生主動探索,去發(fā)現現實生活中、工作學習中的具體數據庫應用問題。 教學實例的設計需要大量的時間和精力,但它對教師自身的提高有很大的促進作用,每一個教學實例的設計會導致教師本身創(chuàng)造性思維、擴散性的思維活動,在實例教學過程中,也會引導學生從盡可能多的方面來考慮同一問題,盡可能多地提出某一理論下的具體問題讓學生解決。在多年的教學過程中通過自己設計的實例的教學,實現了教學水平的提高和學生能力的培養(yǎng)。
參考文獻:
[1] 黃林. 實例教學法在創(chuàng)造教育中的應用研究[J]. 紹興教育,2005(11):33-34.
[2] 王春紅. Delphi7程序設計[M]. 北京:清華大學出版社,北京交通大學出版社,2004.
[3] http://www.chinatraining.net/train/traind/traind_2.htm. 案例教學新議.