王佳祥
摘要:針對(duì)教學(xué)質(zhì)量監(jiān)控管理過(guò)程繁瑣的特點(diǎn),分析了監(jiān)控過(guò)程中簡(jiǎn)化處理信息的方式。利用delphi2010中的DataSnap構(gòu)建了基于三層的監(jiān)控管理系統(tǒng),分析了該類型系統(tǒng)的設(shè)計(jì)的思想,給出了實(shí)現(xiàn)的具體方法。
關(guān)鍵詞:教學(xué)質(zhì)量監(jiān)控管理系統(tǒng);三層;DataSnap
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)20-4892-03
教學(xué)是學(xué)校的核心工作,教學(xué)質(zhì)量的高低是評(píng)價(jià)一個(gè)學(xué)校辦學(xué)水平的的重要指標(biāo),完善的教學(xué)質(zhì)量監(jiān)控體系對(duì)嚴(yán)格教學(xué)管理、提高教學(xué)質(zhì)量有重要意義。
教學(xué)質(zhì)量監(jiān)控體系包括監(jiān)控的目標(biāo)、機(jī)構(gòu)、方式及信息的反饋,監(jiān)控的實(shí)施必須明確所要達(dá)到的目標(biāo)、由誰(shuí)執(zhí)行監(jiān)控、怎么監(jiān)控。監(jiān)控所要達(dá)到的目標(biāo)可以圍繞人才培養(yǎng)目標(biāo)來(lái)確定,執(zhí)行監(jiān)控則由學(xué)校的相關(guān)機(jī)構(gòu)實(shí)施。
監(jiān)控的內(nèi)容和方式多樣化,而且過(guò)程比較繁雜。構(gòu)建教學(xué)質(zhì)量監(jiān)控管理系統(tǒng)可以理順監(jiān)控過(guò)程中的復(fù)雜關(guān)系,明確監(jiān)控機(jī)構(gòu)分工,形成量化數(shù)據(jù),指導(dǎo)教師、學(xué)生、及相關(guān)部門對(duì)教學(xué)進(jìn)行改進(jìn)。
1系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
1.1系統(tǒng)設(shè)計(jì)思想
監(jiān)控系統(tǒng)的實(shí)現(xiàn)必須有明確的指導(dǎo)思想,這就是相應(yīng)的管理制度,各功能模塊需要將制度的精神貫穿到程序當(dāng)中,通過(guò)監(jiān)控機(jī)構(gòu)采集數(shù)據(jù),由系統(tǒng)加工處理,得到數(shù)據(jù)交給監(jiān)控機(jī)構(gòu),監(jiān)控機(jī)構(gòu)將改進(jìn)措施反饋給教師或?qū)W生,反饋信息是指導(dǎo)教學(xué)過(guò)程改革的重要依據(jù)。
整個(gè)教學(xué)質(zhì)量監(jiān)控體系包括明確的人才培養(yǎng)目標(biāo)、完善的教學(xué)監(jiān)控制度、設(shè)置合理的監(jiān)控機(jī)構(gòu)、嚴(yán)格的監(jiān)控過(guò)程,有效的反饋。這些都應(yīng)該體現(xiàn)在系統(tǒng)之中。
人才培養(yǎng)目標(biāo)包括學(xué)校對(duì)學(xué)生最終能擁有的技能及知識(shí)水平的定位,也包括學(xué)校對(duì)學(xué)生所采用的培養(yǎng)模式、所學(xué)課程的執(zhí)行標(biāo)準(zhǔn)等,達(dá)到所定培養(yǎng)目標(biāo)是教學(xué)質(zhì)量監(jiān)控的最終目的。
教學(xué)監(jiān)控制度包括教學(xué)檢查制度、教學(xué)事故認(rèn)定、聽(tīng)課制度、教師考核制度等,制度是保證教學(xué)的強(qiáng)制性約定,由制度得出合理的評(píng)價(jià)體系。
監(jiān)控機(jī)構(gòu)一般包括三級(jí),學(xué)校級(jí)監(jiān)控機(jī)構(gòu)(如教學(xué)督導(dǎo)部門、學(xué)術(shù)委員會(huì)、教務(wù)處、學(xué)生處、人事處)、系部監(jiān)控機(jī)構(gòu)、教研室。
監(jiān)控過(guò)程主要由監(jiān)控機(jī)構(gòu)操作并將監(jiān)控的信息記錄,數(shù)據(jù)進(jìn)入監(jiān)控管理系統(tǒng)分析處理,形成有效信息。
整個(gè)系統(tǒng)的體系結(jié)構(gòu)如圖1所示。
1.2系統(tǒng)結(jié)構(gòu)
對(duì)監(jiān)控過(guò)程中產(chǎn)生的數(shù)據(jù)進(jìn)行存儲(chǔ)加工分析是本系統(tǒng)的主要任務(wù),輸出的結(jié)果用于評(píng)價(jià)教學(xué)效果,促進(jìn)教學(xué)質(zhì)量提升。本系統(tǒng)采用C/S三層結(jié)構(gòu)實(shí)現(xiàn),可以實(shí)現(xiàn)多個(gè)不同權(quán)限用戶在不同地點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
三層,指的是將整個(gè)系統(tǒng)劃分成三個(gè)部分,用戶界面為表示層,數(shù)據(jù)庫(kù)端為數(shù)據(jù)層,其他的任務(wù)交給中間層完成。表示層和中間層用delphi2010開(kāi)發(fā),數(shù)據(jù)層采用SQL server2008作為數(shù)據(jù)庫(kù)。三層結(jié)構(gòu)的應(yīng)用程序相對(duì)二層結(jié)構(gòu)有其優(yōu)越性,三層C/S結(jié)構(gòu)中的各層之間可以做到相互獨(dú)立,包括使用的硬件、實(shí)現(xiàn)的語(yǔ)言和采用的技術(shù),中間層對(duì)其他兩層的負(fù)載進(jìn)行均衡,以減輕它們的壓力,三層可處于同一機(jī)器,也可分散部署在不同機(jī)器。
不同的開(kāi)發(fā)工具實(shí)現(xiàn)三層結(jié)構(gòu)時(shí)采用的技術(shù)都有區(qū)別,delphi2010中可以采用多種方式來(lái)實(shí)現(xiàn)三層結(jié)構(gòu),比如soap、Socket、Da taSnap2010等。其中DataSnap2010在DataSnap2009的基礎(chǔ)上進(jìn)行了改進(jìn),可以更方便的實(shí)現(xiàn)三層構(gòu)架。
2 DataSnap在系統(tǒng)中的角色
DataSnap將TDSServerModule類作為基類,目的是讓服務(wù)器應(yīng)用程序具備服務(wù)能力。服務(wù)器應(yīng)用程序和客戶端可以選擇HTTP, TCP/IP協(xié)議來(lái)完成通訊,DataSnap服務(wù)應(yīng)用程序還可以把HTTP驗(yàn)證信息保存起來(lái),用于追蹤登陸及試圖登錄系統(tǒng)的用戶。
客戶端在確認(rèn)服務(wù)器應(yīng)用程序啟動(dòng)后進(jìn)行連接,客戶端可以使用HTTPS方式驗(yàn)證用戶身份,實(shí)現(xiàn)連接安全和對(duì)數(shù)據(jù)包加密??蛻舳耸褂肨SQLConnection組件連接到DataSnap服務(wù),TSQLConnection相對(duì)于TADOConnection具有一定靈活性??蛻舳嗽O(shè)置TSQLConnection組件的協(xié)議、主機(jī)名及端口等屬性確保連接上DataSnap服務(wù)。
瘦客戶端通過(guò)TClientDataSet、TDataSetProvider、TDataSource、TDBGrid來(lái)獲取及顯示數(shù)據(jù),它們需要和TSQLConnection組件建立連接。
編譯好的應(yīng)用程序要安裝部署到?jīng)]有delphi的計(jì)算機(jī)中,服務(wù)器應(yīng)用程序端須部署數(shù)據(jù)庫(kù)驅(qū)動(dòng)及依賴文件。發(fā)布應(yīng)用程序時(shí)為省去發(fā)布Midas.dll的過(guò)程,可以在服務(wù)器及客戶端單元文件中加上uses MidasLib;。
3系統(tǒng)的詳細(xì)實(shí)現(xiàn)
在delphi2010中使用DataSnap開(kāi)發(fā)三層的系統(tǒng)可將數(shù)據(jù)庫(kù)、應(yīng)用服務(wù)器、客戶端放在不同的設(shè)備上。本系統(tǒng)中,教學(xué)監(jiān)控機(jī)構(gòu)具有錄入、查詢、修改數(shù)據(jù)等權(quán)力,信息的發(fā)布由教學(xué)督導(dǎo)機(jī)構(gòu)負(fù)責(zé)。提供數(shù)據(jù)的客戶機(jī)分布在不同的區(qū)域,系統(tǒng)比較適合用三層解決方案。
1)使用SQLServer2008創(chuàng)建數(shù)據(jù)庫(kù),創(chuàng)建的數(shù)據(jù)庫(kù)表依照系統(tǒng)功能確定。系統(tǒng)設(shè)計(jì)到教學(xué)的方方面面,為詳細(xì)收集體現(xiàn)教學(xué)質(zhì)量的信息,本系統(tǒng)包括機(jī)構(gòu)信息表、教師信息表、學(xué)生信息表、聽(tīng)課記錄表、作業(yè)檢查表、畢業(yè)生信息表、教學(xué)情況檢查表、教師測(cè)評(píng)記錄表、教學(xué)事故認(rèn)定表、試卷分析表、學(xué)生獲獎(jiǎng)情況表、教材信息表等,用于詳細(xì)記錄教學(xué)相關(guān)的數(shù)據(jù)。部分?jǐn)?shù)據(jù)庫(kù)表結(jié)構(gòu)及表間關(guān)系如圖2:
圖2部分?jǐn)?shù)據(jù)庫(kù)表結(jié)構(gòu)及表間關(guān)系
2)在delphi2010中選擇“File”菜單下的“New”菜單項(xiàng),選擇“Other”創(chuàng)建datasnap server工程,選擇“datasnap server”能創(chuàng)建可獨(dú)立運(yùn)行的三層服務(wù)器應(yīng)用程序。服務(wù)器應(yīng)用程序中使用TSQLConnection組件和數(shù)據(jù)庫(kù)建立連接。
3)在服務(wù)器應(yīng)用程序運(yùn)行后使用delphi2010建立客戶端應(yīng)用程序,在客戶端使用SQLConnection、DataSource、DBGrid等組件實(shí)現(xiàn)與服務(wù)器的連接和數(shù)據(jù)顯示。
4)可以根據(jù)系統(tǒng)需要設(shè)計(jì)添加、刪除、查詢、修改、更新等功能,教學(xué)督導(dǎo)部門擁有系統(tǒng)最高操作權(quán)限,學(xué)校領(lǐng)導(dǎo)、教師及學(xué)生擁有查詢功能。
4系統(tǒng)性能
1)并發(fā)的處理
當(dāng)同時(shí)修改同一個(gè)教師信息時(shí)(如在教師測(cè)評(píng)階段),相同的操作增加了系統(tǒng)并發(fā)處理的風(fēng)險(xiǎn),如何降低并發(fā)的幾率?標(biāo)準(zhǔn)SQL規(guī)范定義了4個(gè)事務(wù)隔離級(jí)別,SQL Server2008也支持這些級(jí)別,SQL Server采用多種鎖來(lái)實(shí)現(xiàn)隔離事務(wù)以防止用戶同時(shí)對(duì)同一數(shù)據(jù)進(jìn)行更新??刹捎每芍貜?fù)讀隔離鎖定數(shù)據(jù),如SET TRANSACTION ISOLATION LEVEL REPEATABLE READ,該語(yǔ)句設(shè)定不能讀取已經(jīng)被其他事務(wù)修改但還未提交的記錄行,并對(duì)事務(wù)中的語(yǔ)句設(shè)置共享鎖并保持到事務(wù)完成。
2)數(shù)據(jù)冗余的處理
數(shù)據(jù)冗余是數(shù)據(jù)庫(kù)中常見(jiàn)的問(wèn)題,冗余的數(shù)據(jù)會(huì)導(dǎo)致系統(tǒng)變得龐大,系統(tǒng)運(yùn)行效率下降。系統(tǒng)設(shè)計(jì)階段,避免數(shù)據(jù)冗余可從應(yīng)用程序和數(shù)據(jù)庫(kù)本身兩個(gè)方面入手解決。
在應(yīng)用程序中進(jìn)行處理的話,需設(shè)計(jì)代碼對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢,確認(rèn)無(wú)重復(fù)記錄再進(jìn)行插入,這樣做的好處可以減輕數(shù)據(jù)庫(kù)的壓力,但程序的效率大大降低,特別是數(shù)據(jù)記錄數(shù)比較大的時(shí)候,系統(tǒng)響應(yīng)明顯變慢。另一種方法是在SQL Server中進(jìn)行處理,可使用的方法是建立一個(gè)與操作的表相同的臨時(shí)表,為臨時(shí)表加上索引,設(shè)置索引選項(xiàng)值唯一并忽略重復(fù)值,再將臨時(shí)表數(shù)據(jù)導(dǎo)入到原表即可有效解決數(shù)據(jù)冗余問(wèn)題。
3)網(wǎng)絡(luò)穩(wěn)定性處理
由于網(wǎng)絡(luò)環(huán)境的不確定因素,在系統(tǒng)設(shè)計(jì)階段必須關(guān)注系統(tǒng)的穩(wěn)定性問(wèn)題。網(wǎng)絡(luò)故障、網(wǎng)速勢(shì)必會(huì)對(duì)整個(gè)系統(tǒng)造成影響。為保證系統(tǒng)穩(wěn)定,可以在服務(wù)器端使用心跳包技術(shù),在服務(wù)器端加入WSAIoctl函數(shù)來(lái)解決,服務(wù)器的連接在指定的時(shí)間沒(méi)有收到數(shù)據(jù),便會(huì)向?qū)Ψ桨l(fā)送心跳包,若對(duì)方多次無(wú)應(yīng)答則結(jié)束連接。
5結(jié)束語(yǔ)
教學(xué)質(zhì)量監(jiān)控管理結(jié)合實(shí)際應(yīng)用需要設(shè)計(jì),以促進(jìn)教學(xué)質(zhì)量提高為最終目的,系統(tǒng)對(duì)教學(xué)過(guò)程中的數(shù)據(jù)進(jìn)行匯總統(tǒng)計(jì),形成有用的反饋數(shù)據(jù),能以統(tǒng)計(jì)報(bào)表、圖表的形式將結(jié)果提供給監(jiān)控機(jī)構(gòu)和教師。設(shè)計(jì)過(guò)程中應(yīng)將教學(xué)質(zhì)量標(biāo)準(zhǔn)和制度融入到系統(tǒng)當(dāng)中,系統(tǒng)的數(shù)據(jù)應(yīng)須反映制度的執(zhí)行情況,反饋的信息必須保證客觀、公正,符合教學(xué)規(guī)律。
參考文獻(xiàn):
[1]張志強(qiáng).基于DataSnap技術(shù)實(shí)現(xiàn)三層C/S體系的數(shù)據(jù)庫(kù)應(yīng)用[J].軟件導(dǎo)刊,2011(8).
[2]李建美,黃愛(ài)軍.教學(xué)質(zhì)量監(jiān)控體系的構(gòu)建與實(shí)踐[J].浙江中醫(yī)藥大學(xué)學(xué)報(bào),2009(1):128-129.
[3]梅賢臣,沈定文,吳基良.高校教學(xué)質(zhì)量監(jiān)控與評(píng)價(jià)體系建設(shè)的理性思考[J].咸寧學(xué)院學(xué)報(bào)2007(2):146-149.