喬 威,宋玉厚,朱榜芹,鞠傳寶(.山東大學威海分校 實驗室與設備管理處,山東 威海 6409;.山東大學威海分校 后勤管理處,山東 威海 6409;.山東大學威海分校 商學院,山東 威海 6409)
網(wǎng)絡實驗選課系統(tǒng)的設計與實現(xiàn)*
喬 威1,宋玉厚1,朱榜芹2,鞠傳寶3(1.山東大學威海分校 實驗室與設備管理處,山東 威海 264209;2.山東大學威海分校 后勤管理處,山東 威海 264209;3.山東大學威海分校 商學院,山東 威海 264209)
本文針對傳統(tǒng)實驗教學中的弊端,介紹山東大學威海分校打破按固定班級組織教學的形式,采用全方位開放式的實驗教學模式,設計開發(fā)了基于ASP.NET的網(wǎng)絡實驗選課系統(tǒng),為學生提供更加廣泛、自主、開放的選擇空間。概述了網(wǎng)絡實驗選課系統(tǒng)的技術基礎、功能設計、部分功能實現(xiàn)及系統(tǒng)特點。多年的實踐證明:該系統(tǒng)大大提高了開放式實驗教學的質量和效率,激發(fā)了學生的自主學習熱情,減輕了實驗教師的工作量,實現(xiàn)了實驗室資源效益最大化。
實驗教學;網(wǎng)上預約;ASP.NET
實驗教學是高等學校教學過程中的重要組成部分,對于學生實踐能力的培養(yǎng)和創(chuàng)新意識的形成起著至關重要的作用。[1]近幾年來,在省級實驗教學示范中心建設過程中,山東大學威海分校打破傳統(tǒng)實驗課教學模式,改革實驗教學內容,全面開放實驗室,積極推進全方位開放式實驗教學模式。
全方位開放式實驗教學模式有效地解決實驗資源與學生公共時間的矛盾。開放式實驗教學實施需先進的信息管理平臺做支撐,基于ASP.NET技術開發(fā)設計的實驗選課系統(tǒng),使學生通過預約方式大大提高開放實驗的準確性和便捷性。
ASP.NET是一項功能強大的、非常靈活的服務器端技術,用于創(chuàng)建動態(tài)Web頁面。[2]網(wǎng)站導入服務器端動態(tài)網(wǎng)頁ASP.NET技術,可以方便地獲取底層數(shù)據(jù)庫的訪問功能,從傳統(tǒng)靜態(tài)頁面的重復設計中解放出來,并能夠做到實時更新、實時處理。.NET Framework是用于創(chuàng)建所有應用程序的巨大工具箱,ASP.NET作為構成.NET Framework的技術組件之一,相對于過去以服務器端為基礎的動態(tài)網(wǎng)頁技術,有以下幾項革命性的突破:(1)面向對象技術的引入,發(fā)展出以對象為基礎的服務器控件,使ASP.NET網(wǎng)頁開發(fā)人員可以通過服務器端的程序代碼直接控制瀏覽器所呈現(xiàn)的HTML標簽對象。(2)ASP.NET本身會自行針對狀態(tài)進行維護,網(wǎng)頁設計人員不需要處理狀態(tài)維護的相關細節(jié)。(3)ASP.NET支持多語言編程模式,如:C#和VB.NET。本系統(tǒng)選用C#來開發(fā)編程。
實驗選課系統(tǒng)需要進行分層次的設計,可以借助ASP.NET的代碼隱藏技術將用戶界面和業(yè)務邏輯代碼分離。在業(yè)務邏輯中,把對 Word讀寫文檔的操作封裝成Word操作對象,把對數(shù)據(jù)庫的操作封裝為數(shù)據(jù)操縱對象,然后由數(shù)據(jù)操縱對象通過ADO.NET對數(shù)據(jù)庫(數(shù)據(jù)源)進行讀寫。選課系統(tǒng)層次結構如圖1所示。
訪問數(shù)據(jù)庫的ADO.NET提供了平臺互用性和可伸縮的數(shù)據(jù)訪問。由于傳送的數(shù)據(jù)都是XML格式的,因此任何能夠讀取XML格式的應用程序都可以進行數(shù)據(jù)處理。[3]
ADO.NET通過數(shù)據(jù)處理將數(shù)據(jù)訪問分解為多個可以單獨使用或一前一后使用的不連續(xù)組件。ADO.NET包含用于連接到數(shù)據(jù)庫、執(zhí)行命令和檢索結果的.NET Framework數(shù)據(jù)提供程序。可直接處理檢索到的結果,或將其放入ADO.NET DataSet對象,以便與來自多個源的數(shù)據(jù)或在層之間進行遠程處理的數(shù)據(jù)組合在一起,以特殊方式向用戶公開。ADO.NET DataSet對象也可以獨立于.NET Framework數(shù)據(jù)提供程序使用,以管理應用程序本地的數(shù)據(jù)或源自XML的數(shù)據(jù)。如圖2闡釋了ADO.NET結構框架。
實驗選課系統(tǒng)主要面向開設實驗課程的的學生、相關的授課教師和實驗中心管理人員使用,由選課管理子系統(tǒng)和教學資源子系統(tǒng)組成。選課管理子系統(tǒng)功能主要分三部分:學生選課模塊、授課教師管理模塊和管理員模塊。[4]教學資源子系統(tǒng)主要分:實驗室資源模塊、實驗指導模塊、實驗教師信息模塊。系統(tǒng)功能結構如圖3所示。
在選課模塊中學生使用自己的學號和登錄密碼成功登錄系統(tǒng)后,根據(jù)系統(tǒng)中提供的實驗信息并結合自身的時間,選擇自己感興趣的實驗,并可進行實驗項目的查詢、預約、取消等操作,同時還可以查看自己的實驗成績,觀看實驗項目演示,進行實驗預習、處理實驗數(shù)據(jù),通過留言管理與使用本系統(tǒng)的所有人員進行信息的交流。學生登錄系統(tǒng)界面如圖4所示。
授課教師登錄后可以維護實驗項目信息、實驗安排信息、個人信息,查詢學生預約信息,登記其負責的實驗項目成績。如果教師沒有任何授課任務則不能進行成績的管理,即只有授課教師本人可以登記和修改學生的成績信息。教師通過教師模塊可以得知整體選課情況,可以查詢和打印自己授課實驗的學生名單,對學生成績進行統(tǒng)計計算等功能。每位教師要對自己的課程成績負責,對于別人的課程任何人無權查看修改,對與實驗教學的規(guī)范化起到積極作用。
系統(tǒng)管理員可以對系統(tǒng)中的學生、教師基本信息進行初始化管理,能對所有用戶的名稱、密碼及相關資料進行查詢、修改、刪除,還能對教學資源子系統(tǒng)、實驗項目、實驗預約、新聞及留言情況管理。
系統(tǒng)采用SQL Server2000來管理系統(tǒng)數(shù)據(jù),系統(tǒng)中使用的數(shù)據(jù)庫表及表項如下:(1)學生信息表。主要包括:學號、姓名、密碼、專業(yè)、年級、院系。(2)學生選課信息表。主要包括:學生編號、內容編號、周次、節(jié)次、成績。(3)實驗內容信息表。主要包括:名稱、課程號、實驗室、相關信息、教師、內容編號、院系、最大人數(shù)。(4)實驗安排信息表。主要包括:內容編號、開始周次、結束周次、安排、院系、安排周次。(5)教師信息表。主要包括:教師名字、教師密碼、教師編號。(6)管理員信息表。主要包括:名稱、密碼。(7)系統(tǒng)公告信息表。主要包括:內容、是否開放。
系統(tǒng)采用三重限制來保證系統(tǒng)的安全運行。首先利用ASP.NET的Form認證,只有合法的用戶才能進入系統(tǒng),否則返回至登錄頁面。其次對于不同用戶登錄后,根據(jù)其權限不同呈現(xiàn)的頁面也不相同,只顯示具有相應權限的頁面的導航。此外,在每一個頁面中判斷當前用戶是否具有權限,若沒有權限,則提示返回。
傳統(tǒng)的Web應用允許用戶填寫表單(form),當提交表單時就向Web服務器發(fā)送一個請求。服務器接收并處理傳來的表單,然后返回一個新的網(wǎng)頁。這個做法浪費了許多帶寬,因為在前后兩個頁面中的大部分HTML代碼往往是相同的。由于每次應用的交互都需要向服務器發(fā)送請求,應用的響應時間就依賴于服務器的響應時間。這導致了用戶界面的響應比本地應用慢得多。與此不同,AJAX應用可以僅向服務器發(fā)送并取回必需的數(shù)據(jù),它使用SOAP或其他一些基于XML的Web Service接口,并在客戶端采用JavaScript處理來自服務器的響應。因為在服務器和瀏覽器之間交換的數(shù)據(jù)大量減少,結果我們就能看到響應更快的應用。同時很多的處理工作可以在發(fā)出請求的客戶端機器上完成,所以Web服務器的處理時間也減少了。
AJAX應用程序的優(yōu)勢在于:(1)通過異步模式,提升了用戶體驗;(2)優(yōu)化了瀏覽器和服務器之間的傳輸,減少不必要的數(shù)據(jù)往返,減少了帶寬占用;(3)AJAX引擎在客戶端運行,承擔了一部分本來由服務器承擔的工作,從而減少了大用戶量下的服務器負載。[5]
為了保證多用戶并發(fā)時實驗項目人數(shù)的限制,系統(tǒng)利用AJAX技術實現(xiàn)了可選時間的刷新,避免并行操作造成的錯誤。圖5顯示了學生預約實驗項目的時間和地點。
龐大的信息如何能更方便快捷地導入,是本系統(tǒng)遇到的一個重大問題。考慮到教師對Office操作更加熟練,系統(tǒng)在批量導入數(shù)據(jù)時,采用Excel文件導入的方式進行。例如在導入學生信息時,管理員可以將各個院系上報的學生數(shù)據(jù)篩選相關列后復制到模板中上傳后即可批量導入,如圖6所示。
網(wǎng)絡實驗選課系統(tǒng)是我校開展開放式實驗教學的有效支撐平臺,該系統(tǒng)自2005年經(jīng)過小面試點、大片推開地不斷改進,技術日臻成熟完善,保障了全校范圍內全面的開放式實驗教學的順利實施,并在實踐過程中體現(xiàn)出以下幾點:
(1)系統(tǒng)實現(xiàn)了我校信息工程學院、機電工程學院、空間科學與物理學院11個理工科專業(yè)3000多名學生全面、公開、自主的計算機預約選課,使學生對實驗的學習真正實現(xiàn)了時間、空間、內容的自主選擇,為學生創(chuàng)新提供了廣闊的空間。同時,教師還利用預約成功的學生實驗名單,這大大方便了開放實驗室的管理。
(2)系統(tǒng)根據(jù)我校電工電子實驗教學中心儀器資源、教師資源情況,針對不同的實驗項目限制實驗人數(shù),設置不同實驗開放時間,使實驗室儀器資源得到充分合理的利用。
(3)系統(tǒng)實現(xiàn)了網(wǎng)上預習實驗,網(wǎng)上成績查詢,網(wǎng)絡答疑。學生遇到疑難問題,隨時可以發(fā)布到網(wǎng)上,教師及時反饋信息,實現(xiàn)了教師和學生的網(wǎng)絡交流,提高教學效果
(4)系統(tǒng)后臺管理功能強大,可以實現(xiàn)教師姓名、實驗開放時間、開放實驗題目的查詢,學生信息、學生成績等信息的批量導入和批量導出,學生成績的統(tǒng)計分析、開放實驗室工作量統(tǒng)計。
(5)系統(tǒng)對不同用戶采取不同的安全限制。學生可以在校園網(wǎng)內任何節(jié)點進行操作,教師和管理員只能在指定的IP進行訪問,有效防止非法攻擊,保證了系統(tǒng)的安全。系統(tǒng)還對操作時間進行記錄,如果5分鐘內沒有操作,則系統(tǒng)認為超時,用戶必須重新進行登錄,以防止他人修改用戶記錄。
網(wǎng)絡實驗選課系統(tǒng)是在Internet基礎上,利用ASP.NET技術實現(xiàn)了服務器端與客戶端的交互式連接。經(jīng)過三年多的系統(tǒng)運行表明,系統(tǒng)具有穩(wěn)定、高效、實用等特征,滿足了我校電子信息、自動化、應用物理等11個理工科專業(yè)學生的開放式實驗教學的管理要求,取得了良好的教學效果。
[1]鄧萬友,孟雅杰等.學分制下網(wǎng)絡選課系統(tǒng)的構想與實現(xiàn)[J].黑龍江高教研究,2001,99(1):92-94.
[2]張敏.基于ASP.NET的預約型開放實驗室管理系統(tǒng)[J].實驗技術與管理,2007,7(1):73-76.
[3]Mike Gunderloy.ADO and ADO.NET Programming[M].SYBEX,2002.
[4]樊國梁.開放式大學物理實驗網(wǎng)絡選課系統(tǒng)研究與應用[J].高等理科教育,2007,67(6):101-103.
[5](美)阿斯利森,舒塔著,金靈等譯.Ajax基礎教程[M].北京:人民郵電出版社,2006.
(編輯:楊馥紅)
G250.73
A
1673-8454(2010)23-0055-03
山東省高等學校教學改革研究項目(2009172),山東大學威海分校教學改革項目(B201005)資助。