摘 要:利用ASP.NET技術(shù)實(shí)現(xiàn)了網(wǎng)絡(luò)課程的開(kāi)發(fā)。該網(wǎng)絡(luò)課程利用 Web Form(網(wǎng)絡(luò)窗體)技術(shù)設(shè)計(jì)動(dòng)態(tài)頁(yè)面,用ADO.NET 實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接與訪(fǎng)問(wèn),用SQL Server 2000 實(shí)現(xiàn)數(shù)據(jù)庫(kù)的管理,用 Dream weaver MX 2004 開(kāi)發(fā)工具實(shí)現(xiàn)靜態(tài)頁(yè)面的設(shè)計(jì),用Web Services(網(wǎng)絡(luò)服務(wù))實(shí)現(xiàn)網(wǎng)絡(luò)的調(diào)用。介紹了學(xué)生在線(xiàn)自測(cè)系統(tǒng)、在線(xiàn)答疑系統(tǒng)的總體設(shè)計(jì)與實(shí)現(xiàn),且對(duì)其各模塊的實(shí)現(xiàn)作了詳細(xì)探討,同時(shí)附有少量的重要源程序代碼。
關(guān)鍵詞:ASP.NET技術(shù);網(wǎng)絡(luò)課程;開(kāi)發(fā)
1基于ASP.NET技術(shù)的網(wǎng)絡(luò)課程的體系結(jié)構(gòu)
網(wǎng)絡(luò)課程共分教學(xué)內(nèi)容、課程大綱、課程實(shí)驗(yàn)、課程設(shè)計(jì)、課程教案、網(wǎng)上答疑、作業(yè)、自測(cè)系統(tǒng)、參考文獻(xiàn)、網(wǎng)上書(shū)店10大模塊,這10大模塊構(gòu)成一個(gè)系統(tǒng),相互依存、相輔相成、密不可分。基于ASP.NET對(duì)網(wǎng)絡(luò)課程開(kāi)發(fā)的技術(shù)研究,特對(duì)學(xué)生網(wǎng)上自我測(cè)試、網(wǎng)上答疑系統(tǒng)進(jìn)行了細(xì)致的分析。本課程的模塊結(jié)構(gòu)如下圖1所示:

2基于ASP.NET技術(shù)的網(wǎng)絡(luò)課程自我測(cè)試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
為了配合網(wǎng)絡(luò)課程的學(xué)習(xí),在本網(wǎng)絡(luò)課程上開(kāi)發(fā)了一個(gè)采用ASP.NET技術(shù)基于Browser/Server(B/S)模式的、通用的、功能基本完善的自我測(cè)試系統(tǒng),為使用者提供了一個(gè)自主學(xué)習(xí)、自我測(cè)試學(xué)習(xí)效果的平臺(tái)。
本系統(tǒng)的目標(biāo)是在 Internet/Intranet 上設(shè)計(jì)考試系統(tǒng),所以首先要考慮的是系統(tǒng)的維護(hù)工作量,盡可能地減少客戶(hù)端的系統(tǒng)維護(hù)工作。因此,本系統(tǒng)的體系結(jié)構(gòu)建立在 Web 的 B/S 基礎(chǔ)上,通過(guò)與 B/S 結(jié)構(gòu)的數(shù)據(jù)庫(kù)系統(tǒng)結(jié)合,真正實(shí)現(xiàn)了客戶(hù)機(jī)模型和客戶(hù)端零配置,使得系統(tǒng)的維護(hù)僅在服務(wù)器端進(jìn)行即可。良好的可擴(kuò)展性是本系統(tǒng)的另一個(gè)重要設(shè)計(jì)思想。系統(tǒng)采用了模塊化的設(shè)計(jì)方法,本系統(tǒng)整體上可劃分為若干個(gè)功能模塊,雖然整個(gè)考試系統(tǒng)的完成需要不同的參與者協(xié)調(diào)工作,但各個(gè)功能模塊卻是相互獨(dú)立的,因而各部分都可以獨(dú)立地進(jìn)行功能擴(kuò)展。
系統(tǒng)安全可靠也是一個(gè)重要的設(shè)計(jì)思想。本系統(tǒng)的配置是采用 Windows NTServer 作為網(wǎng)絡(luò)操作系統(tǒng),SQL Server 作為數(shù)據(jù)庫(kù)服務(wù)器,Internet information Server(IIS)作為 Web 服務(wù)器。ASP.NET 技術(shù)中的安全措施也是本系統(tǒng)要使用的安全措施,而 ASP.NET 的安全措施可以分別從 IIS 自身的安全功能和 ASP.NET 編程的兩個(gè)方面來(lái)考慮。
2.1系統(tǒng)結(jié)構(gòu)
(1)系統(tǒng)功能模塊。
網(wǎng)上自我測(cè)試系統(tǒng)的簡(jiǎn)單框圖如圖2所示:

本系統(tǒng)是一個(gè) Internet/Intranet 的自測(cè)考試系統(tǒng),它具有2個(gè)基本功能:普通用戶(hù)功能模塊、特權(quán)教師功能模塊。
普通用戶(hù)功能模塊針對(duì)參加自測(cè)試的普通用戶(hù),只要用戶(hù)通過(guò) TCP/IP 協(xié)議連到本系統(tǒng)上,就可以注冊(cè)參加一次遠(yuǎn)程在學(xué)習(xí)之后的自我在線(xiàn)測(cè)試、查看成績(jī)、參考答案等;用戶(hù)可以根據(jù)自己的學(xué)習(xí)進(jìn)度按章節(jié)、按難度從題庫(kù)中隨機(jī)地抽取測(cè)試題,隨時(shí)進(jìn)行自我測(cè)試,以檢查學(xué)習(xí)效果,并可以根據(jù)測(cè)試的結(jié)果和計(jì)算機(jī)給出的評(píng)價(jià),決定下一步是進(jìn)行下一章節(jié)的學(xué)習(xí)還是繼續(xù)復(fù)習(xí)本章節(jié)內(nèi)容。

(2)數(shù)據(jù)庫(kù)結(jié)構(gòu)
①數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流程。
整個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流程結(jié)構(gòu)如圖3所示:

②系統(tǒng)后臺(tái)數(shù)據(jù)庫(kù)結(jié)構(gòu)
數(shù)據(jù)庫(kù)名為:自我測(cè)試
③系統(tǒng)的數(shù)據(jù)流圖。
2.3系統(tǒng)實(shí)現(xiàn)
系統(tǒng)頁(yè)面間的鏈接關(guān)系為:
(1)用戶(hù)登錄身份驗(yàn)證
(2)試題組卷
自我測(cè)試組卷頁(yè)面:
(3)評(píng)閱試卷。
3基于ASP.NET 技術(shù)的網(wǎng)絡(luò)課程網(wǎng)上答疑系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
3.1設(shè)計(jì)思想
網(wǎng)上答疑系統(tǒng)是在校園網(wǎng)下開(kāi)發(fā)的,作為計(jì)算機(jī)輔助教學(xué)系統(tǒng)的一部分,整個(gè)系統(tǒng)采用 B/S 結(jié)構(gòu),客戶(hù)端的教師和學(xué)生只需用瀏覽器來(lái)使用本系統(tǒng),服務(wù)器端采用了 ASP.NET 技術(shù)來(lái)完成動(dòng)態(tài)頁(yè)面的生成和數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)。系統(tǒng)的后臺(tái)數(shù)據(jù)庫(kù)采用 Microsoft SQL Server 2000。
3.2系統(tǒng)結(jié)構(gòu)
(1)軟件結(jié)構(gòu)。
根據(jù)系統(tǒng)實(shí)現(xiàn)功能的要求,將整個(gè)系統(tǒng)分成3個(gè)功能模塊:站點(diǎn)管理、網(wǎng)上交談和網(wǎng)上答疑板。站點(diǎn)管理包括:用戶(hù)管理、信息維護(hù)2個(gè)模塊。用戶(hù)管理模塊負(fù)責(zé)上網(wǎng)用戶(hù)的管理,包括用戶(hù)注冊(cè)、口令修改和用戶(hù)注銷(xiāo);信息維護(hù)完成網(wǎng)上交談數(shù)據(jù)庫(kù)和網(wǎng)上答疑板數(shù)據(jù)庫(kù)的查詢(xún)、刪除和轉(zhuǎn)存。網(wǎng)上交談模塊實(shí)現(xiàn)網(wǎng)上多人實(shí)時(shí)交談功能,用于問(wèn)題的實(shí)時(shí)問(wèn)答和討論,網(wǎng)上答疑的實(shí)現(xiàn)類(lèi)似于公告板的功能。為了使用方便,將答疑按課程和教師分類(lèi),學(xué)生可通過(guò)選擇課程和教師進(jìn)入某位教師的答疑板,教師可直接進(jìn)入自己的答疑板。教師就是自己答疑板的板主,對(duì)自己的答疑板有一定的管理權(quán)限,學(xué)生對(duì)答疑板沒(méi)有管理權(quán)限,只能在答疑板上留下問(wèn)題或?yàn)g覽問(wèn)題。另外,系統(tǒng)提供了常見(jiàn)問(wèn)題答疑板的功能,將一些比較典型的問(wèn)題放到常見(jiàn)問(wèn)題答疑板上,學(xué)生通過(guò)瀏覽常見(jiàn)問(wèn)題答疑板,了解典型問(wèn)題的解答方法,這對(duì)鞏固所學(xué)的知識(shí)起到了重要的作用。
(2)后臺(tái)數(shù)據(jù)庫(kù)結(jié)構(gòu)。
網(wǎng)上答疑系統(tǒng)的數(shù)據(jù)庫(kù)名為:在線(xiàn)答疑,由 Student 表、Teacher表、ReNoteSheet表、NoteSheet 表、JLContent 表、FaceSheet 表、Course 表、CourseTeacher 表組成,其中各表的結(jié)構(gòu)如下:

③系統(tǒng)的數(shù)據(jù)流圖
網(wǎng)上答疑系統(tǒng)的數(shù)據(jù)流圖為:
圖3 網(wǎng)上答疑系統(tǒng)的數(shù)據(jù)流圖

3.3系統(tǒng)實(shí)現(xiàn)
(1)用戶(hù)管理模塊的實(shí)現(xiàn)。
為了對(duì)使用網(wǎng)上答疑系統(tǒng)的用戶(hù)進(jìn)行管理,用戶(hù)管理模塊實(shí)現(xiàn)了用戶(hù)注冊(cè)、口令修改和用戶(hù)注銷(xiāo)等幾項(xiàng)功能,這些功能實(shí)質(zhì)上是對(duì)用戶(hù)表的增加、修改和刪除。
(2)學(xué)生登錄模塊的實(shí)現(xiàn)。
學(xué)生登錄模塊實(shí)現(xiàn)學(xué)生登錄后,系統(tǒng)為學(xué)生提供了一個(gè)選擇教師、選擇課程的頁(yè)面,學(xué)生選擇一門(mén)課程及該門(mén)課程的任課教師,就進(jìn)入某門(mén)課程、某位教師的答疑板,系統(tǒng)將于答疑板上顯示有關(guān)該教師所有問(wèn)題的標(biāo)題。系統(tǒng)將于答疑板上顯示有關(guān)該教師所有問(wèn)題的標(biāo)題,學(xué)生可以單擊某一標(biāo)題,來(lái)顯示問(wèn)題內(nèi)容及解答方法。
(3)教師答疑板模塊的實(shí)現(xiàn)。
若用戶(hù)是教師,系統(tǒng)直接顯示該教師答疑板上所有問(wèn)題的標(biāo)題,教師可以單擊某一標(biāo)題,來(lái)顯示問(wèn)題內(nèi)容并可解答問(wèn)題,此頁(yè)面也提供了對(duì)標(biāo)題的增加、刪除等功能。下圖為教師用戶(hù)的頁(yè)面:

參考文獻(xiàn)
[1] Johnson,R.;Kemp,E.; Kemp, R.; From electronic textbook to multidimensional learning environment:overcoming the loneliness of the distance learner Computers in Education, Dec.2002 Page(s):632 ~636 vol.1
[2] Aiguo He RIDEE:a realtime and interactive distance education support system Advanced Information Networking and Applications,March 2003 Page:775~781
[3] Lin,F(xiàn)uhua;Poon, Lawrence; Integrating web services and agent technology for E~learning course content maintenance Lecture Notes in Artificial Intelligence v 3029, Innovations in Applied Artificial Intelligence,2004,Page:848~856
[4] 肖建等. ASP.NET 編程基礎(chǔ)[M]. 北京:清華大學(xué)出版社. 2005.
[5] 陳惠貞,陳俊榮. ASP.NET 程序設(shè)計(jì)[M]. 北京:中國(guó)鐵道出版社. 2004.
[6] 陳嫻等. ASP.NET 項(xiàng)目開(kāi)發(fā)實(shí)踐[M]. 北京:中國(guó)鐵道出版社. 2005.
[7] 微軟公司. ASP.NET 標(biāo)準(zhǔn)教材[M].北京: 中國(guó)勞動(dòng)社會(huì)保障出版社. 2006.