網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(共60頁(yè))_第1頁(yè)
網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(共60頁(yè))_第2頁(yè)
網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(共60頁(yè))_第3頁(yè)
網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(共60頁(yè))_第4頁(yè)
網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(共60頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩55頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上1緒論1.1選題背景網(wǎng)絡(luò)化教育代表了教育改革的一個(gè)發(fā)展方向,已經(jīng)成為現(xiàn)代教育的一個(gè)特征,并對(duì)教育發(fā)展形成新的推動(dòng)力。隨著Internet/Intranet技術(shù)迅速發(fā)展和廣泛普及,建立在其上的遠(yuǎn)程教育成為現(xiàn)代教育技術(shù)未來(lái)發(fā)展方向之一,在線測(cè)試作為遠(yuǎn)程教育的一個(gè)子系統(tǒng)也成為一個(gè)重要的研究領(lǐng)域?,F(xiàn)代遠(yuǎn)程教育作為一種新的教學(xué)手段已經(jīng)開始進(jìn)入我們的生活,正在給傳統(tǒng)教育模式帶來(lái)新的變革。Internet技術(shù)的發(fā)展使得考試的技術(shù)手段和載體發(fā)生了革命性的變化,Internet的開放性、分布性特點(diǎn)和基于Internet的巨大的計(jì)算能力使得考試突破了時(shí)間和空間的限制。基于Internet

2、的考試系統(tǒng)正成為人們的研究熱點(diǎn)之一,與傳統(tǒng)考試模式相比,網(wǎng)上考試具有無(wú)可比擬的優(yōu)越性,它可以將傳統(tǒng)考試過(guò)程中試卷組織、審定印制、傳送收集、登記發(fā)放、評(píng)判歸檔各個(gè)環(huán)節(jié)縮小到一至兩個(gè)環(huán)節(jié),幾乎屏蔽了所有人工直接干預(yù)考試活動(dòng)的可能性,不但能夠節(jié)約大量時(shí)間、人力、物力與財(cái)力,而且還可以大幅度提高考試成績(jī)的客觀性和公正性。網(wǎng)上考試系統(tǒng)課題產(chǎn)生背景是當(dāng)今教育信息化的趨勢(shì)及我國(guó)高校教育信息化系統(tǒng)的建設(shè);目的是充分利用學(xué)校現(xiàn)有的計(jì)算機(jī)軟、硬件資源和網(wǎng)絡(luò)資源實(shí)現(xiàn)無(wú)紙化考試以避免傳統(tǒng)手工考試的不足。與傳統(tǒng)考試模式相比,網(wǎng)上考試滲入了更多的技術(shù)環(huán)節(jié),對(duì)實(shí)現(xiàn)安全性的途徑、方法也提出了更高的技術(shù)要求。通過(guò)Interne

3、t/Intranet來(lái)實(shí)現(xiàn)網(wǎng)上考試,是現(xiàn)代教育技術(shù)的一個(gè)具體實(shí)現(xiàn),具有很重要的現(xiàn)實(shí)意義??梢詫?shí)現(xiàn)教考分離以及考務(wù)工作的全自動(dòng)化管理,可以有效利用校園網(wǎng)的軟硬件資源,使其發(fā)揮最大效力,更好的為學(xué)校的教學(xué)、科研、管理服務(wù),可以大規(guī)模的實(shí)行考試,實(shí)現(xiàn)考試的客觀、公證性,自動(dòng)化組卷、閱卷可以減輕教師的工作強(qiáng)度。傳統(tǒng)考試要求老師收集資料、出試卷、印試卷、安排考試、監(jiān)考、收集試卷、評(píng)改試卷、講評(píng)試卷和分析試卷。這是一個(gè)漫長(zhǎng)而復(fù)雜的過(guò)程,已經(jīng)越來(lái)越不適應(yīng)現(xiàn)代教學(xué)的需要。網(wǎng)絡(luò)考試系統(tǒng)是傳統(tǒng)考場(chǎng)的延伸,它可以利用網(wǎng)絡(luò)的無(wú)限廣闊空間,隨時(shí)隨地的對(duì)學(xué)生進(jìn)行考試,加上Web數(shù)據(jù)庫(kù)技術(shù)的利用,大大簡(jiǎn)化了傳統(tǒng)考試的過(guò)程。

4、本文以Internet為平臺(tái),研究了基于Web考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),包括系統(tǒng)需求分析和系統(tǒng)功能設(shè)計(jì)以及數(shù)據(jù)庫(kù)設(shè)計(jì)。重點(diǎn)闡述了用戶管理模塊、用戶權(quán)限管理模塊、題庫(kù)管理模塊、試卷管理模塊、信息發(fā)布管理模塊、用戶操作日志記錄模塊和專家答疑模塊的設(shè)計(jì)。特別是在題庫(kù)管理模塊中對(duì)自動(dòng)組卷功能常用的算法(包括隨機(jī)選取法、回溯試探法和遺傳算法)進(jìn)行了比較。對(duì)于較流行的存儲(chǔ)加密、防SQL注入過(guò)濾、模糊檢索、驗(yàn)證碼技術(shù)也給出了具體實(shí)現(xiàn)。1.2國(guó)內(nèi)外網(wǎng)上考試系統(tǒng)現(xiàn)狀與發(fā)展趨勢(shì)隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,現(xiàn)在很多國(guó)外的大學(xué)和社會(huì)其他部門都已經(jīng)開設(shè)了遠(yuǎn)程教育,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)異地教育和培訓(xùn),且這些應(yīng)用

5、正逐步深入到千家萬(wàn)戶。人們迫切要求利用這些技術(shù)來(lái)進(jìn)行網(wǎng)上在線考試,以減輕教師的工作負(fù)擔(dān)及提高工作效率,與此同時(shí)也提高了考試的質(zhì)量,從而使考試更趨于公證、客觀,更加激發(fā)學(xué)生的學(xué)習(xí)興趣。例如目前許多國(guó)際著名的計(jì)算機(jī)公司所舉辦的各種認(rèn)證考試絕大部分采用這種方式。在英國(guó),已經(jīng)實(shí)現(xiàn)了英語(yǔ)資格考試的網(wǎng)上學(xué)習(xí)和水平認(rèn)證全過(guò)程。遠(yuǎn)程教育包括很多環(huán)節(jié),例如教學(xué)系統(tǒng)、答疑系統(tǒng)和考試系統(tǒng)等等。其中很重要的一個(gè)環(huán)節(jié)就是網(wǎng)上考試系統(tǒng),同時(shí)它也是最難實(shí)現(xiàn)的環(huán)節(jié)。在我國(guó),雖然遠(yuǎn)程教育已經(jīng)蓬勃地發(fā)展起來(lái),但是目前學(xué)校與社會(huì)上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過(guò)五個(gè)步驟,即人工出題、考生考試、人

6、工閱卷、成績(jī)?cè)u(píng)估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會(huì)越來(lái)越大,并且其工作將是一件十分煩瑣和非常容易出錯(cuò)的事情,可以說(shuō)傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。網(wǎng)上考試系統(tǒng)是建立在國(guó)際互聯(lián)網(wǎng)上的應(yīng)用系統(tǒng),客戶端的配置可以是極為簡(jiǎn)單,使考試不受地域的局限。1.3本系統(tǒng)設(shè)計(jì)路線目前,網(wǎng)絡(luò)應(yīng)用軟件的模式主要有二類:Client/Server模式,Browser/Web Server模式。前者主要的缺點(diǎn)是維護(hù)、升級(jí)較麻煩,后者是近幾年伴隨Internet迅速發(fā)展起來(lái)的一種技術(shù),它與客戶機(jī)/服務(wù)器方式類似,客戶端是一個(gè)標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是Web Server,

7、而Web Server與數(shù)據(jù)庫(kù)和應(yīng)用服務(wù)器的緊密結(jié)合,使得這種模式的應(yīng)用范圍不斷擴(kuò)大,它已不僅僅用于網(wǎng)上查詢,有很多部門的業(yè)務(wù)系統(tǒng)、企業(yè)的MIS系統(tǒng)紛紛采用這種模式,它的主要優(yōu)點(diǎn)是便于擴(kuò)充應(yīng)用、升級(jí)維護(hù)更簡(jiǎn)便。利用網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前硬件價(jià)格普遍下跌與寬帶網(wǎng)大力建設(shè)的有利優(yōu)勢(shì),應(yīng)用ASP(Active Server Page)技術(shù),開發(fā)了基于Web的B/S模式的網(wǎng)絡(luò)考試系統(tǒng)。它運(yùn)用方便、操作簡(jiǎn)單,效率很高?,F(xiàn)階段雖只實(shí)現(xiàn)了試卷的客觀題部分,但已具有多用戶同時(shí)在線考試、動(dòng)態(tài)隨機(jī)出題、時(shí)間控制、自動(dòng)閱卷,試題管理、修改試題庫(kù)、用戶管理、章節(jié)管理、用戶權(quán)限管理、用戶日志管理等重要功能,也就是說(shuō)

8、實(shí)現(xiàn)了真正的無(wú)紙化考試,滿足任何授權(quán)的考生隨時(shí)隨地考試并迅速獲得成績(jī),同時(shí)也大大減輕了教師出題和閱卷等繁重的工作量?;谏鲜隹紤],整個(gè)考試系統(tǒng)采用Browser/Web Server的二層體系結(jié)構(gòu)比較合適,服務(wù)器端采用Microsoft SQL Server數(shù)據(jù)庫(kù)系統(tǒng)和ASP組件來(lái)構(gòu)成考試的應(yīng)用服務(wù)系統(tǒng);客戶端采用瀏覽器來(lái)完成考試全過(guò)程,同時(shí)可進(jìn)行遠(yuǎn)程系統(tǒng)維護(hù)和管理。Web服務(wù)器接受請(qǐng)求,通過(guò)應(yīng)用程序服務(wù)器執(zhí)行一個(gè)ASP程序,從而實(shí)現(xiàn)與客戶機(jī)進(jìn)行信息資源的交互。數(shù)據(jù)庫(kù)服務(wù)器用來(lái)存儲(chǔ)管理信息系統(tǒng)中所用到的各種數(shù)據(jù)。系統(tǒng)的客戶端只需要一個(gè)瀏覽器即可。相關(guān)人員通過(guò)瀏覽器來(lái)增加、修改、刪除數(shù)據(jù),對(duì)信息

9、進(jìn)行管理。2系統(tǒng)實(shí)現(xiàn)關(guān)鍵技術(shù)本網(wǎng)上考試系統(tǒng)設(shè)計(jì)遵循軟件工程的基本原則,經(jīng)過(guò)可行性分析、需求分析、數(shù)據(jù)庫(kù)分析與設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測(cè)試等幾個(gè)階段。系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)包括Web技術(shù)、ASP技術(shù)、數(shù)據(jù)庫(kù)技術(shù)、頁(yè)面布局顯示技術(shù),以及試卷的生成與評(píng)估的算法等。下面對(duì)涉及的技術(shù)和相關(guān)理論作一個(gè)概述。2.1 Web技術(shù)Web技術(shù)的迅猛發(fā)展,使全人類都能共享Web上的各類資源,包括功能強(qiáng)大的計(jì)算資源、海量信息的數(shù)據(jù)庫(kù)資源、五花八門的多媒體信息資源、門類齊全的軟件工具資源等,這些使得任何人能在任何時(shí)間、任何地點(diǎn)和任何設(shè)備上獲得所需要的信息資源和服務(wù)。Web技術(shù)為Internet的普及與推廣起到關(guān)鍵性的作用,例如

10、在遠(yuǎn)程教育、電子商務(wù)、電子政務(wù)、辦公自動(dòng)化、掌上電腦、信息家電、嵌入式系統(tǒng)等方面的應(yīng)用,幾乎無(wú)所不在。Web是一個(gè)無(wú)集中控制、無(wú)統(tǒng)一結(jié)構(gòu)、無(wú)完整性約束、無(wú)事務(wù)管理、無(wú)標(biāo)準(zhǔn)查詢語(yǔ)言和數(shù)據(jù)模型、可無(wú)限擴(kuò)充的一個(gè)松散的分布式信息系統(tǒng)。Web是在TCP/IP、Mime、Hypertext等技術(shù)之上發(fā)展起來(lái)的,并在此基礎(chǔ)之上,開發(fā)了HTTP、HTML、URL等技術(shù),但其核心是HTTP。從本質(zhì)上講是各種技術(shù)的集成與綜合應(yīng)用,它以TCP/IP協(xié)議為基礎(chǔ),使用HTML描述網(wǎng)絡(luò)的資源,通過(guò)超文本(Hypertext)、超媒體(Hypermedia)技術(shù)實(shí)現(xiàn)超級(jí)鏈接,無(wú)論文本、圖形,還是動(dòng)畫、聲音都能通過(guò)文擋中的

11、鏈接連接到服務(wù)器上的其它文檔或其它站點(diǎn),使客戶以用交互方式快速地搜索所需要的資料,通過(guò)表單供用戶填寫并通過(guò)服務(wù)器應(yīng)用程序提交給數(shù)據(jù)庫(kù)等。2.2 ASP技術(shù)簡(jiǎn)介隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,Internet/Intranet應(yīng)用在全球范圍內(nèi)日益普及,在眾多的網(wǎng)絡(luò)服務(wù)中,Web給人耳目一新的感覺(jué),而在這其中,ASP技術(shù)則因?yàn)榭梢赃M(jìn)行復(fù)雜的數(shù)據(jù)庫(kù)操作、很強(qiáng)的交互性以及方便用戶控制管理且簡(jiǎn)便易學(xué)而備受青睞,成為當(dāng)前相當(dāng)熱門的網(wǎng)絡(luò)開發(fā)技術(shù)。ASP程序工作在Web服務(wù)端,瀏覽器向服務(wù)器發(fā)出一個(gè)HTTP請(qǐng)求,請(qǐng)求一個(gè).asp文件,Web服務(wù)器響應(yīng)該請(qǐng)求并調(diào)用ASP引擎執(zhí)行該文件,當(dāng)遇到任何與Active腳

12、本兼容的腳本(如VBScript 、JavaScript)時(shí)ASP引擎調(diào)用相應(yīng)的腳本引擎解釋執(zhí)行其中的腳本命令,若腳本中含有訪問(wèn)數(shù)據(jù)庫(kù)的請(qǐng)求,則通過(guò)ODBC連結(jié)后臺(tái)數(shù)據(jù)庫(kù),由數(shù)據(jù)庫(kù)訪問(wèn)組件ADO(Active Data Object)執(zhí)行訪庫(kù)操作,最后,ASP依據(jù)訪數(shù)據(jù)庫(kù)的結(jié)果集自動(dòng)生成標(biāo)準(zhǔn)的HTML頁(yè)面發(fā)送到客戶瀏覽器。此過(guò)程如圖21所示:Web服務(wù)器客戶端瀏覽器ASPADO訪問(wèn)ODBC數(shù)據(jù)庫(kù)HTTP圖21 客戶訪問(wèn)數(shù)據(jù)過(guò)程圖ASP是服務(wù)器端腳本編程環(huán)境。使用ASP可以交互HTML頁(yè)、腳本命令和ActiveX組件組合起來(lái),創(chuàng)建動(dòng)態(tài)的、交互的Web網(wǎng)頁(yè)和基于Web的功能強(qiáng)大的應(yīng)用程序。ASP(

13、Active Server Pages )是微軟公司推出的一種用以取代CGI(Common Gateway Interface)的技術(shù)。簡(jiǎn)單講,ASP是位于服務(wù)器端的腳本運(yùn)行環(huán)境,通過(guò)這種環(huán)境,用戶可以創(chuàng)建和運(yùn)行動(dòng)態(tài)的、交互式的Web應(yīng)用程序,如交互式的動(dòng)態(tài)網(wǎng)頁(yè),包括使用html表單收集和處理信息、上傳與下載文件等。ASP工作原理如圖22所示:瀏覽器WEB服務(wù)器Active Server Pages圖22 Active Server Pages工作原理圖ASP內(nèi)含于IIS(Microsoft Internet Information Server)3.0和4.0之中。有了ASP就不必?fù)?dān)心客戶瀏

14、覽器是否能運(yùn)行你所編寫的代碼,因?yàn)樗械某绦蚨紝⒃诜?wù)器執(zhí)行,包括所有嵌在普通html中的腳本程序。當(dāng)程序執(zhí)行完畢后,服務(wù)器僅將執(zhí)行的結(jié)果返回客戶瀏覽器,這樣就減輕了客戶瀏覽器的負(fù)擔(dān),大大提高了信息交互速度。從字面上說(shuō),ASP包含下面3方面的含義: Active、Server、 Pages。作為IIS環(huán)境下開發(fā)WEB應(yīng)用的一種簡(jiǎn)單、方便的編程工具,ASP具有如下特點(diǎn):(1)使用VBScript JavaScript 等簡(jiǎn)單易懂的腳本語(yǔ)言,結(jié)合html代碼,可快速完成網(wǎng)站應(yīng)用程序的開發(fā);(2)容易編寫,無(wú)須編譯,可在服務(wù)器直接執(zhí)行;(3)使用普通的文本編輯器,如windows的記事本,即可進(jìn)行編

15、輯;(4)與瀏覽器無(wú)關(guān),只要客戶端瀏覽器能夠執(zhí)行html代碼,就可以瀏覽ASP設(shè)計(jì)的網(wǎng)頁(yè)內(nèi)容。ASP所使用的腳本語(yǔ)言均在WEB服務(wù)器執(zhí)行,客戶端的瀏覽器不執(zhí)行這些腳本語(yǔ)言;(5)ASP需要能夠能與任何ActiveX Scripting語(yǔ)言相兼容,除了可以使用VBScript 或JavaScript腳本語(yǔ)言來(lái)設(shè)計(jì)外,還可以通過(guò)plug-in的方式,使用由第三方所提供的其他腳本語(yǔ)言,例如rexx、perl 、tcl等,腳本引擎是處理腳本程序的COM組件;(6)ASP 的源程序不會(huì)被傳到客戶瀏覽器,因而可以避免源程序被剽竊,提高了程序的安全性;(7)可使用服務(wù)器端的腳本來(lái)產(chǎn)生客戶端的腳本;Activ

16、es服務(wù)器組件具有無(wú)限可擴(kuò)充性,可以使用Visual Basic、Java、Visual C+、Cobol等編程語(yǔ)言來(lái)編寫所需的Actives服務(wù)器組件。2.3 數(shù)據(jù)庫(kù)技術(shù)簡(jiǎn)介由于本系統(tǒng)涉及到許多數(shù)據(jù)的處理,這就需要有一個(gè)強(qiáng)大的后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng)支持。目前主要的數(shù)據(jù)庫(kù)有:Access、DB2、FoxPro、Informix、Oracle、Sybase、SQL Server、達(dá)夢(mèng)、虛谷等,其中網(wǎng)絡(luò)型的SQL Server、Oracle產(chǎn)品安全性遠(yuǎn)遠(yuǎn)高于桌面型的Access、FoxPro等數(shù)據(jù)庫(kù)。本系統(tǒng)采用的是微軟公司的SQL Server 2000。原因如下:第一,SQL Server與Wind

17、ows 2000 Server服務(wù)器緊密集成,而Windows 2000 Server服務(wù)器具有很好的安全性,能夠排除所有未經(jīng)授權(quán)的非法用戶的訪問(wèn),確保了SQL Server 2000服務(wù)器的安全性,符合系統(tǒng)對(duì)安全性的要求;第二,用戶可以使用Web瀏覽器查詢存儲(chǔ)在SQL Server 2000數(shù)據(jù)庫(kù)中的數(shù)據(jù),符合系統(tǒng)遠(yuǎn)程訪問(wèn)數(shù)據(jù)庫(kù)的要求。第三,容量龐大,每個(gè)數(shù)據(jù)庫(kù)中可創(chuàng)建多達(dá)20萬(wàn)個(gè)數(shù)據(jù)表,數(shù)據(jù)表中的記錄的行數(shù)只受服務(wù)器硬盤空間的限制,符合系統(tǒng)的考題數(shù)目較多的要求。2.4 ASP訪問(wèn)Web數(shù)據(jù)庫(kù)原理ASP是一個(gè)服務(wù)器的腳本環(huán)境,內(nèi)嵌在HTML頁(yè)面中的腳本程序在這里運(yùn)行并建立Web服務(wù)器應(yīng)用程序

18、。在ASP腳本中可以通過(guò)三種方式訪問(wèn)數(shù)據(jù)庫(kù):傳統(tǒng)的IDC(Internet Database Connector)、ADO(ActiveX Data Object)和RDS(Remote Data Server)。其中ADO是ASP內(nèi)置的數(shù)據(jù)庫(kù)存取組件,各種腳本和語(yǔ)言均可調(diào)用它實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的直接訪問(wèn),并利用相應(yīng)的數(shù)據(jù)接口顯示查詢結(jié)果。ADO擁有強(qiáng)大的活力,它是位于ODBC和OLEDB之上的高性能數(shù)據(jù)庫(kù)操作接口,提供了開放的數(shù)據(jù)操作對(duì)象模型,允許開發(fā)人員使用任何語(yǔ)言和統(tǒng)一的編程模式操作各種與ODBC和OLEDB兼容的數(shù)據(jù)庫(kù),如Microsoft Access、FoxPro、Microsoft S

19、QL Server、Oracle等。ADO簡(jiǎn)單易行、應(yīng)用廣泛使之成為ASP訪問(wèn)數(shù)據(jù)庫(kù)所采用的最佳選擇。這種對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)方式是由Internet Information Server來(lái)完成的。執(zhí)行過(guò)程如圖23所示:圖23 ASP訪問(wèn)Web數(shù)據(jù)庫(kù)過(guò)程(1)瀏覽器:用戶通過(guò)Web瀏覽器用HTTP協(xié)議向Internet信息服務(wù)器(IIS)發(fā)出請(qǐng)求。(2)服務(wù)器:服務(wù)器檢查網(wǎng)頁(yè)文件的類型,對(duì)擴(kuò)展名是.asp的文件服務(wù)器調(diào)用ASP系統(tǒng)程序,解釋執(zhí)行被請(qǐng)求頁(yè)面文件的所有腳本命令。若腳本中含有對(duì)數(shù)據(jù)庫(kù)的請(qǐng)求,服務(wù)器就執(zhí)行連接訪問(wèn)數(shù)據(jù)庫(kù)的操作,并將結(jié)果以HTML格式送回用戶瀏覽器作為響應(yīng)。(3)數(shù)據(jù)庫(kù):儲(chǔ)存了

20、動(dòng)態(tài)交互所需的信息數(shù)據(jù),用戶可通過(guò)指令對(duì)其進(jìn)行查詢、修改、添加、刪除等操作。數(shù)據(jù)庫(kù)是實(shí)現(xiàn)有組織的,動(dòng)態(tài)的存儲(chǔ)大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問(wèn)的計(jì)算機(jī)軟硬自愿組成的系統(tǒng),它與文件系統(tǒng)的重要區(qū)別是數(shù)據(jù)的充分共享,交叉訪問(wèn),與應(yīng)用程序的高度獨(dú)立性。ADO是一項(xiàng)容易使用并且可擴(kuò)展的將數(shù)據(jù)庫(kù)訪問(wèn)添加到Web頁(yè)的技術(shù)??梢允褂肁DO去編寫緊湊簡(jiǎn)明的腳本以便連接到ODBC兼容的數(shù)據(jù)庫(kù)和OLEDB兼容的數(shù)據(jù)源。ADO包括Command、Connection、Recordset、Fields、Parameters、Property、Error七個(gè)對(duì)象和一個(gè)動(dòng)態(tài)的Properties集合,絕大部分的數(shù)據(jù)庫(kù)訪問(wèn)任務(wù)都可

21、以通過(guò)它們的組合來(lái)完成。一般使用ADO訪問(wèn)數(shù)據(jù)庫(kù)的ASP腳本程序使用Connection對(duì)象建立并管理與遠(yuǎn)程數(shù)據(jù)庫(kù)的連接;使用Command對(duì)象提供靈活的查詢;使用Recordset對(duì)象訪問(wèn)數(shù)據(jù)庫(kù)查詢所返回的結(jié)果。這三者是ADO中最基本也是最核心的對(duì)象。使用ASP通過(guò)ADO訪問(wèn)數(shù)據(jù)庫(kù),主要有以下步驟:(1)確定數(shù)據(jù)源,連接數(shù)據(jù)庫(kù)。ADO提供Connection對(duì)象,可以使用該對(duì)象建立和管理應(yīng)用程序和ODBC數(shù)據(jù)庫(kù)之間的連接。Connection對(duì)象具有各種屬性和方法,可以使用它們打開和關(guān)閉數(shù)據(jù)庫(kù)連接,并且發(fā)出查詢請(qǐng)求來(lái)更新信息。要建立數(shù)據(jù)庫(kù)連接,首先應(yīng)創(chuàng)建Connection對(duì)象的實(shí)例。(2)

22、使用“Server.CreateObject”建立ADO的連結(jié)對(duì)象。(3)通過(guò)Connection對(duì)象的“Open”方法打開數(shù)據(jù)庫(kù)。(4)表單中提取信息,構(gòu)造處理數(shù)據(jù)庫(kù)的SQL命令并使用“Execute”命令執(zhí)行訪問(wèn)數(shù)據(jù)庫(kù)的操作,并將返回的結(jié)果集儲(chǔ)存到Recordset中。(5)使用Recordsets對(duì)象提供的方法和屬性,完成SQL結(jié)果集的處理,并顯示結(jié)果。(6)關(guān)閉Recordsets結(jié)果集和數(shù)據(jù)庫(kù)。2.5 頁(yè)面顯示技術(shù)CSS和DIVCSS是Cascading Style Sheets(層疊樣式表)的簡(jiǎn)稱。由W3C的CSS工作組產(chǎn)生和維護(hù),是一種標(biāo)記語(yǔ)言,它不需要編譯,可以直接由瀏覽器執(zhí)行

23、(屬于瀏覽器解釋型語(yǔ)言)。在標(biāo)準(zhǔn)網(wǎng)頁(yè)設(shè)計(jì)中CSS負(fù)責(zé)網(wǎng)頁(yè)內(nèi)容(XHTML)的表現(xiàn)。CSS文件也可以說(shuō)是一個(gè)文本文件,它包含了一些CSS標(biāo)記,CSS文件必須使用css為文件名后綴??梢酝ㄟ^(guò)簡(jiǎn)單的更改CSS文件,改變網(wǎng)頁(yè)的整體表現(xiàn)形式,從而減少設(shè)計(jì)工作量,實(shí)現(xiàn)內(nèi)容與表現(xiàn)分離,有了CSS,網(wǎng)頁(yè)的內(nèi)容(XHMTL)與表現(xiàn)就可以分開了。使網(wǎng)頁(yè)的表現(xiàn)非常統(tǒng)一,并且容易修改。CSS支持多種設(shè)備,比如手機(jī),PDA、打印機(jī)、電視機(jī)、游戲機(jī)等。使用CSS可以減少網(wǎng)頁(yè)的代碼量,增加網(wǎng)頁(yè)的瀏覽速度,減少硬盤容量。DIV元素是用來(lái)為HTML文檔內(nèi)大塊(block-level)的內(nèi)容提供結(jié)構(gòu)和背景的元素。DIV的起始標(biāo)簽

24、和結(jié)束標(biāo)簽之間的所有內(nèi)容都是用來(lái)構(gòu)成這個(gè)塊的,其中所包含元素的特性由DIV標(biāo)簽的屬性來(lái)控制,或者是通過(guò)使用樣式表(CSS)格式化這個(gè)塊來(lái)進(jìn)行控制。2.6 UML概述UML (統(tǒng)一建模語(yǔ)言)是一套用來(lái)設(shè)計(jì)軟件藍(lán)圖的標(biāo)準(zhǔn)建模語(yǔ)言,也是一種可視化的面向?qū)ο蟮哪P头治稣Z(yǔ)言。從系統(tǒng)工程角度來(lái)看,UML可以說(shuō)是一種軟件結(jié)構(gòu)分析工具。也就是說(shuō),UML是一種從軟件分析、設(shè)計(jì)到編寫程序規(guī)范的標(biāo)準(zhǔn)化建模語(yǔ)言。2.6.1 UML的概念模型為了理解UML,需要形成一個(gè)語(yǔ)言的概念模型。UML包括三個(gè)主要要素: UML的基本構(gòu)建塊、支配這些構(gòu)建塊放在一起的規(guī)則和一些運(yùn)用于整個(gè)UML的公共機(jī)制。這三部分構(gòu)成了UM

25、L的概念模型。(1) UML的基本構(gòu)建塊UML的詞匯表中包括三種構(gòu)建塊:事物、關(guān)系和圖。事物是模型中最有代表性的成分的抽象;關(guān)系把事物結(jié)合在一起;圖聚集了相關(guān)的事物。在UML中,事物分為結(jié)構(gòu)事物(包括類、接口、協(xié)作、用例、主動(dòng)類、構(gòu)件和節(jié)點(diǎn))、行為事物(包括交互和狀態(tài)機(jī))、分組事物(包)和注釋事物(注解);有四種關(guān)系:依賴關(guān)系、關(guān)聯(lián)關(guān)系、泛化關(guān)系、實(shí)現(xiàn)關(guān)系:及可歸納為兩類的九種圖:一類是結(jié)構(gòu)圖,用于描述系統(tǒng)的靜態(tài)方面,包括用例圖、類圖、對(duì)象圖、構(gòu)件圖和部署圖;另一類是行為圖,用來(lái)描述系統(tǒng)的動(dòng)態(tài)方面,包括順序圖、協(xié)作圖、狀態(tài)圖和活動(dòng)圖。(2)UML規(guī)則UML用于描述事物的語(yǔ)義規(guī)則分別是:為事物、

26、關(guān)系和圖命名;給一個(gè)名字以特定含義的語(yǔ)境,即范圍;怎樣使用或看見名字,即可見性;事物如何正確、一致地相互聯(lián)系,既完整性;運(yùn)行或模擬動(dòng)態(tài)模型的含義是什么,即執(zhí)行。另外,UML還允許在一定的階段隱藏模型的某些元素、遺漏某些元素以及保證模型的完整性,但模型逐步地要達(dá)到完整和一致。在軟件開發(fā)的生命周期內(nèi),隨著系統(tǒng)細(xì)節(jié)的展開和變動(dòng),不可避免地要出現(xiàn)一些不太規(guī)范的模型。UML的規(guī)則鼓勵(lì)(不是強(qiáng)迫)你專注于最重要的分析、設(shè)計(jì)和實(shí)現(xiàn)問(wèn)題。這些問(wèn)題將促使模型隨時(shí)間的推移而具有良好的結(jié)構(gòu)。(3)UML的公共機(jī)制有四種在整個(gè)UML語(yǔ)言中一致應(yīng)用的機(jī)制,使該語(yǔ)言變得較為簡(jiǎn)單。這四種機(jī)制是規(guī)格說(shuō)明、修飾、通用劃分和擴(kuò)展

27、機(jī)制。2.6.2 UML的建模機(jī)制從應(yīng)用的角度看,當(dāng)采用面向?qū)ο蠹夹g(shù)設(shè)計(jì)系統(tǒng)時(shí),首先是描述;其次根據(jù)需求建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu);第三步是描述系統(tǒng)的行為,其中在第一步與第二步中所建立的模型都是靜態(tài)的,包括用例圖、類圖(包含包)、對(duì)象圖、構(gòu)件圖和部署圖等5個(gè)圖形,是標(biāo)準(zhǔn)建模語(yǔ)言UML的靜態(tài)建模機(jī)制。其中第三步中所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時(shí)的時(shí)序狀態(tài)或交互關(guān)系。它包括狀態(tài)圖、活動(dòng)圖、順序圖和協(xié)作圖等4個(gè)圖形,是標(biāo)準(zhǔn)建模語(yǔ)言UML的動(dòng)態(tài)建模機(jī)制。因此,標(biāo)準(zhǔn)建模語(yǔ)言UML的主要內(nèi)容也可以歸納為靜態(tài)建模機(jī)制和動(dòng)態(tài)建模機(jī)制兩大類。(l)靜態(tài)建模機(jī)制任何建模語(yǔ)言都以靜態(tài)建模機(jī)制為基礎(chǔ)

28、,標(biāo)準(zhǔn)建模語(yǔ)言UML也不例外。UML的靜態(tài)建模機(jī)制包括用例圖(usecasediagram)、類圖(classdiagram)、對(duì)象圖 (objeetdiagram)、包(Paekage)、構(gòu)件圖 (Compnentdiagram)和部署圖 (Deploymentdiagram)。用例圖:用例圖展現(xiàn)了一組用例、參與者以及它們之間的關(guān)系??梢杂糜美龍D描述系統(tǒng)的靜態(tài)使用情況。在對(duì)系統(tǒng)行為組織和建模方面,用例圖是相當(dāng)重要的。類圖:類圖展現(xiàn)了一組類、接口和協(xié)作及它們間的關(guān)系,在建模中所建立的最常見的圖就是類圖。用類圖說(shuō)明系統(tǒng)的靜態(tài)設(shè)計(jì)視圖,包含主動(dòng)類的類圖專注于系統(tǒng)的靜態(tài)進(jìn)程視圖。系統(tǒng)可有多個(gè)類圖,單

29、個(gè)類圖僅表達(dá)了系統(tǒng)的一個(gè)方面。要在高層給出類的主要職責(zé),在低層給出類的屬性和操作。對(duì)象圖:對(duì)象圖展示了一組對(duì)象及它們間的關(guān)系,用對(duì)象圖說(shuō)明類圖中所反映的事物實(shí)例的數(shù)據(jù)結(jié)構(gòu)和靜態(tài)快照。對(duì)象圖表達(dá)了系統(tǒng)的靜態(tài)設(shè)計(jì)視圖或靜態(tài)過(guò)程視圖,除了現(xiàn)實(shí)和原型方面的因素外,它與類圖作用是相同的。構(gòu)件圖:構(gòu)件圖展現(xiàn)了一組構(gòu)件之間的組織和依賴,用于對(duì)原代碼、可執(zhí)行的發(fā)布、物理數(shù)據(jù)庫(kù)和可調(diào)整的系統(tǒng)建模。部署圖:部署圖展現(xiàn)了對(duì)運(yùn)行時(shí)處理節(jié)點(diǎn)以及其中構(gòu)件的配置。它描述系統(tǒng)硬件的物理拓?fù)浣Y(jié)構(gòu)(包括網(wǎng)絡(luò)布局和構(gòu)件在網(wǎng)絡(luò)上的位置),以及在此結(jié)構(gòu)上執(zhí)行的軟件(即運(yùn)行時(shí)軟件在節(jié)點(diǎn)中的分布情況)。用部署圖說(shuō)明系統(tǒng)結(jié)構(gòu)的靜態(tài)部署,即說(shuō)

30、明分布、交付和安裝的物理系統(tǒng)。(2)動(dòng)態(tài)建模機(jī)制系統(tǒng)的動(dòng)態(tài)行為主要是由交互圖(順序圖和協(xié)作圖)、狀態(tài)圖和活動(dòng)圖來(lái)表達(dá)。順序圖:順序圖展現(xiàn)了一組對(duì)象和由這組對(duì)象收發(fā)的消息,用于按時(shí)間順序?qū)刂屏鹘?。用順序圖說(shuō)明系統(tǒng)的動(dòng)態(tài)視圖。協(xié)作圖:協(xié)作圖展現(xiàn)了一組對(duì)象,這組對(duì)象間的連接以及這組對(duì)象收發(fā)的消息。它強(qiáng)調(diào)收發(fā)消息的對(duì)象的結(jié)構(gòu)組織,按組織結(jié)構(gòu)對(duì)控制流建模。狀態(tài)圖:狀態(tài)圖展現(xiàn)了一個(gè)特定對(duì)象的所有可能狀態(tài)以及由于各種事件的發(fā)生而引起的狀態(tài)間的轉(zhuǎn)移。一個(gè)狀態(tài)圖描述了一個(gè)狀態(tài)機(jī),用狀態(tài)圖說(shuō)明系統(tǒng)的動(dòng)態(tài)視圖。它對(duì)于接口、類或協(xié)作的行為建模尤為重要,可用它描述用例實(shí)例的生命周期?;顒?dòng)圖:活動(dòng)圖是一種特殊的狀態(tài)圖

31、,描述需要做的活動(dòng)、執(zhí)行這些活動(dòng)的順序(多為并行的)以及工作流(完成工作所需要的步驟)。它對(duì)于系統(tǒng)的功能建模特別重要,強(qiáng)調(diào)對(duì)象間的控制流程。高層活動(dòng)圖用于表示需要完成的一些任務(wù),即用于分析用例,理解涉及多個(gè)用例的工作流、多線程及并行,顯示相互聯(lián)系的行為整體,還可用于對(duì)企業(yè)過(guò)程建模,對(duì)系統(tǒng)的功能建模。低層活動(dòng)圖用于表示類的方法。但活動(dòng)圖不適用于描述動(dòng)作與對(duì)象間的關(guān)系,顯示對(duì)象間的合作以及顯示對(duì)象在生命周期內(nèi)的運(yùn)轉(zhuǎn)情況。3系統(tǒng)需求分析軟件需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。通過(guò)對(duì)問(wèn)題及其環(huán)境的理解與分析,為問(wèn)題涉及的信息、功能及系統(tǒng)行為建立模型,將用戶需求精確化、完

32、全化。3.1系統(tǒng)功能需求分析網(wǎng)上考試系統(tǒng)的基本功能是使用計(jì)算機(jī)來(lái)代替人工完成考試中需要完成的一系列任務(wù),達(dá)到考試智能化。為了保證系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行,系統(tǒng)應(yīng)該滿足以下的性能需求:首先,采用開放、動(dòng)態(tài)的系統(tǒng)架構(gòu),將傳統(tǒng)的考試模式與先進(jìn)的網(wǎng)絡(luò)應(yīng)用相結(jié)合。在考試之前建立有關(guān)學(xué)科的試題庫(kù),并設(shè)置考試參數(shù)和信息。其次,由于考試是面向特定的某些對(duì)象,所以考生進(jìn)入系統(tǒng)應(yīng)該進(jìn)行身份驗(yàn)證??忌M(jìn)入考試系統(tǒng)后,應(yīng)該能根據(jù)自己的需要選擇考試科目,所以該系統(tǒng)還應(yīng)具有考試科目選擇的功能。在線考試與一般的單機(jī)考試是不同的。鑒于考試環(huán)境一般為機(jī)房,考試者之間的距離很近,為了在線考試的規(guī)范性,對(duì)于每個(gè)應(yīng)

33、試者來(lái)說(shuō),試卷的題型和題量都應(yīng)是相同的,但試題并不相同。在線考試基于網(wǎng)絡(luò)環(huán)境,試卷應(yīng)該從服務(wù)器的試題庫(kù)隨機(jī)抽取試題后動(dòng)態(tài)生成的??紤]到本考試系統(tǒng)的實(shí)用性,從考試內(nèi)容設(shè)計(jì)上,題型不能單一,既要有選擇題、判斷題等客觀題,又要有填空題、簡(jiǎn)答題等主觀題。所以一定要考慮題型在數(shù)據(jù)庫(kù)中的保存及主觀題和客觀題的評(píng)分問(wèn)題。另外,系統(tǒng)還應(yīng)該對(duì)考試時(shí)間進(jìn)行控制,時(shí)間到了會(huì)要求考試者交卷。考試者選擇提交后,應(yīng)該由計(jì)算機(jī)自動(dòng)判卷,并將成績(jī)保存。考試完畢后,可以返回登錄界或繼續(xù)考試??荚囅到y(tǒng)還應(yīng)當(dāng)根據(jù)考試情況對(duì)試題區(qū)分度、難度進(jìn)行評(píng)估,以及試卷信度的分析。此外,應(yīng)該能夠方便、快捷的對(duì)在線考試系統(tǒng)管理,此外,用戶還應(yīng)能進(jìn)

34、行遠(yuǎn)程注冊(cè)。根據(jù)以上分析和考試流程,本系統(tǒng)至少應(yīng)該具有以下功能或目標(biāo):(1)用戶管理:可以對(duì)教師、學(xué)生用戶增加、編輯、刪除。(2)授權(quán)管理:可以對(duì)教師用戶授予不同的操作權(quán)限。(3)試題庫(kù)管理:對(duì)各題型的管理,試題的錄入、編輯、刪除等。(4)試題參數(shù)設(shè)置:知識(shí)范圍、題型、數(shù)量、分值等。(5)試卷生成:可以指定試卷的各題型的數(shù)量,從試題庫(kù)里隨機(jī)抽取試題生成一份考卷。(6)在線考試:系統(tǒng)嚴(yán)格控制整個(gè)考試過(guò)程,實(shí)現(xiàn)實(shí)時(shí)監(jiān)控與狀態(tài)的控制,考生需要在限定的考試時(shí)間內(nèi)交卷。(7)計(jì)算機(jī)自動(dòng)閱卷:能夠自動(dòng)對(duì)考生的客觀題部分進(jìn)行評(píng)分,主觀題部分則由閱卷教師閱卷后將其成績(jī)手工輸入,最后計(jì)算機(jī)生成每個(gè)考生的成績(jī),并

35、將結(jié)果保存于考生成績(jī)數(shù)據(jù)庫(kù)。(8)綜合查閱:不同的用戶,根據(jù)不同的權(quán)限,可以對(duì)考生試卷、成績(jī)等信息進(jìn)行查詢,并能夠刪除指定記錄。(9)考試分析與評(píng)估:考試系統(tǒng)根據(jù)考試情況對(duì)試題區(qū)分度、難度進(jìn)行評(píng)估,以及試卷信度的分析。(10)在線考試系統(tǒng)應(yīng)該具備友好、簡(jiǎn)潔的操作界面,安全性要高,穩(wěn)定性要強(qiáng),能夠滿足多人以上同時(shí)及進(jìn)行在線考試。3.2系統(tǒng)用例分析通過(guò)對(duì)系統(tǒng)的需求進(jìn)行建模,直觀形象的圖形化表示,便于清晰地認(rèn)識(shí)整個(gè)系統(tǒng)的流程和功能。按照面向?qū)ο蟮姆治雠c設(shè)計(jì)思想,首先分析員通過(guò)識(shí)別出系統(tǒng)參與者(角色)及系統(tǒng)應(yīng)完成的動(dòng)作(用例),得到系統(tǒng)業(yè)務(wù)模型圖(用例圖);然后分析并得出各個(gè)動(dòng)作(用例)的活動(dòng)圖(參與

36、者參與系統(tǒng)的活動(dòng));最后根據(jù)參與者的相關(guān)操作建立時(shí)序圖。UML是一種圖示化的面向?qū)ο蠼UZ(yǔ)言,對(duì)Web技術(shù)和組件技術(shù)在系統(tǒng)開發(fā)中的建模方法有合理有效的定義。本文采用UML的用例圖、活動(dòng)圖、狀態(tài)圖、時(shí)序圖和協(xié)作圖來(lái)對(duì)網(wǎng)絡(luò)考試系統(tǒng)的需求進(jìn)行分析,并建立用例模型。(1)識(shí)別參與者(角色)參與者是代表與系統(tǒng)交互的人、硬件設(shè)備或另一系統(tǒng),它存在于系統(tǒng)的外部。通過(guò)對(duì)本考試系統(tǒng)的需求分析,可以確定系統(tǒng)有兩個(gè)主要參與者:學(xué)生(Student)、教師(Teacher)。這兩個(gè)參與者的描述如下:角色名:教師(Teacher)角色職責(zé):管理教師和學(xué)生帳戶、教師用戶授權(quán)、維護(hù)題庫(kù)、設(shè)置組卷參數(shù)、監(jiān)督考試情況、評(píng)閱主觀

37、題、查詢學(xué)生的試卷和成績(jī),對(duì)考試情況的統(tǒng)計(jì)和分析、回答學(xué)生提問(wèn)等。角色名:學(xué)生(Student)角色職責(zé):在線考試、查詢考試成績(jī)、提交問(wèn)題等。(2)識(shí)別用例用例(use case):規(guī)定系統(tǒng)或部分系統(tǒng)的行為,它描述系統(tǒng)所執(zhí)行的動(dòng)作序列集,并為執(zhí)行者產(chǎn)生一個(gè)可供觀察的結(jié)果。在角色的基礎(chǔ)上需要確定系統(tǒng)的用例。經(jīng)過(guò)對(duì)需求進(jìn)一步的分析,確定系統(tǒng)中存在如圖31所示的如下用例:圖31系統(tǒng)的用例關(guān)系圖與教師相關(guān)的用例教師信息的查詢、增加、刪除、修改教師權(quán)限的查詢、授予考生信息的查詢、增加、刪除、修改操作日志的查詢、刪除答疑信息的查詢、刪除、回復(fù)試題庫(kù)中試題的查詢、增加、刪除、修改生成試卷考試過(guò)程的監(jiān)視試卷客

38、觀題的批閱試卷總分的計(jì)算試卷的分析與評(píng)估考生相關(guān)的用例完成答卷查詢分?jǐn)?shù)疑問(wèn)的查詢、提交個(gè)人操作日志的查看3.3用例建模用例:用于反映用戶與計(jì)算機(jī)之間進(jìn)行典型的交互。用例模型:描述的是外部執(zhí)行者所理解的系統(tǒng)功能。一個(gè)用例模型由若干用例圖描述。用例圖:從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。用例圖的主要元素是用例和執(zhí)行者。根據(jù)前面對(duì)系統(tǒng)參與角色及用例的分析,可得用例圖。由于本系統(tǒng)涉及的用例較多,這里僅給出幾個(gè)主要的用例圖。(1)用戶登錄用例圖本用例提供了用戶如何登錄到考試系統(tǒng)中。如圖32所示。圖32登錄用例圖(2)題庫(kù)管理用例圖本用例提供用戶進(jìn)行考試試題的錄入、題庫(kù)相關(guān)信息進(jìn)行管理和維護(hù)功能

39、。如圖33所示。圖33題庫(kù)管理用例圖(3)試卷管理用例圖本用例提供了用戶進(jìn)行試卷生成、修改相關(guān)管理過(guò)程描述。如圖34所示。圖34試卷管理用例圖(4)考試管理用例圖本用例提供了教師實(shí)時(shí)監(jiān)控考生、學(xué)生在線考試的交互過(guò)程描述。如圖35所示。圖35考試管理用例圖(5)專家答疑用例圖本用例實(shí)現(xiàn)了學(xué)生提問(wèn)、教師答疑及管理維護(hù)等操作過(guò)程。如圖36所示。圖36專家答疑用例圖3.4活動(dòng)圖描述用例活動(dòng)圖記錄單個(gè)操作或方法的邏輯、單個(gè)用例或商業(yè)過(guò)程的邏輯流程。實(shí)質(zhì)上活動(dòng)圖是結(jié)構(gòu)化開發(fā)中流程圖和數(shù)據(jù)流程圖(DFD)的面向?qū)ο蟮韧w。在UML中活動(dòng)圖(Activity Diagram)的本質(zhì)上就是流程圖,它描述系統(tǒng)的活

40、動(dòng)、判斷點(diǎn)和分支等。一個(gè)活動(dòng)結(jié)束自動(dòng)引發(fā)下個(gè)活動(dòng)開始,則兩個(gè)活動(dòng)之間用帶箭頭的連線連接,連線的箭頭指向下一個(gè)活動(dòng)。根據(jù)前面得到的用例圖,經(jīng)過(guò)分析,可以得到對(duì)應(yīng)的活動(dòng)圖。由于本系統(tǒng)涉及的活動(dòng)較多,這里僅給出幾個(gè)主要的活動(dòng)圖。(1)學(xué)生登錄活動(dòng)圖如圖37所示,系統(tǒng)首先提示用戶輸入用戶名和密碼,然后學(xué)生輸入用戶名和密碼提交,系統(tǒng)驗(yàn)證輸入的用戶輸入用戶名和密碼是否正確,如果正確就啟動(dòng)系統(tǒng),將用戶信息寫入日志,否則提示錯(cuò)誤信息,并提示學(xué)生(student)重新輸入用戶名和密碼。圖37學(xué)生登錄活動(dòng)圖(2)題庫(kù)管理如圖38所示,系統(tǒng)首先提示教師輸入用戶名和密碼,然后教師輸入用戶名和密碼提交,系統(tǒng)驗(yàn)證輸入的用

41、戶名和密碼是否正確,如正確,則啟動(dòng)系統(tǒng),教師可以對(duì)題庫(kù)存進(jìn)行維護(hù)操作。否則,系統(tǒng)提示錯(cuò)誤信息,并提示教師重新輸入用戶名和密碼。圖38題庫(kù)管理活動(dòng)圖(3)在線考試如圖39所示,系統(tǒng)首先提示考生輸入用戶名和密碼,然后考生輸入用戶名和密碼提交,系統(tǒng)驗(yàn)證輸入的用戶名和密碼是否正確,如正確,則啟動(dòng)系統(tǒng),出現(xiàn)考試界面,考生可以在線答題,并更新考生答案表的相關(guān)信息。否則,系統(tǒng)提示錯(cuò)誤信息,并提示考生重新輸入用戶名和密碼。圖39在線答題活動(dòng)圖(4)專家答疑如圖310所示,本圖簡(jiǎn)化了有關(guān)學(xué)生、教師登錄驗(yàn)證等相關(guān)動(dòng)作,當(dāng)學(xué)生提交問(wèn)題,系統(tǒng)接收到問(wèn)題集中,教師查看問(wèn)題集和回答問(wèn)題,學(xué)生可以查看已經(jīng)回復(fù)的問(wèn)題。有特殊

42、權(quán)限的教師還可以刪除問(wèn)題,這些類似執(zhí)行刪除的操作將會(huì)寫入日志,為以后系統(tǒng)分析提供依據(jù)。圖310專家答疑活動(dòng)圖3.5類圖描述用例類是具有相似結(jié)構(gòu)、行為和關(guān)系的一組對(duì)象的描述符。類圖(Class Diagram)顯示了一組類、接口、協(xié)作以及他們之間的關(guān)系。在UML中問(wèn)題域最終要被逐步轉(zhuǎn)化,通過(guò)類來(lái)建模,通過(guò)編程語(yǔ)言構(gòu)建這些類從而實(shí)現(xiàn)系統(tǒng)。類加上他們之間的關(guān)系就構(gòu)成了類圖,類圖中還可以包含接口、包等元素,也可以包括對(duì)象、鏈等實(shí)例。下面以教師、學(xué)生為對(duì)象用類圖來(lái)描述一下。如圖311所示。圖311教師、學(xué)生類圖類圖中一般用戶(user)具有姓名、密碼、身份三個(gè)屬性和瀏覽、登錄兩個(gè)方法。學(xué)生(studen

43、t)繼承了一般用戶的所有屬性和方法,還擁有自己的年級(jí)、班級(jí)屬性和自己獨(dú)有的考試、提問(wèn)方法。教師(teacher)則繼承一般屬性方法外獨(dú)立擁有權(quán)限屬性和管理、監(jiān)考、答疑等方法。通過(guò)類圖可以清楚的了解到類之間的繼承關(guān)系、相關(guān)屬性和方法,并且可以細(xì)化到哪些屬性是公有的哪些是私有的。相類似的信息管理模塊也可以用類圖來(lái)描述。如圖312所示。圖312信息管理模塊類圖3.6系統(tǒng)狀態(tài)圖UML狀態(tài)圖(Statechart Diagram)描述一個(gè)實(shí)體基于事件反應(yīng)的動(dòng)態(tài)行為,顯示了該實(shí)體如何根據(jù)當(dāng)前所處的狀態(tài)對(duì)不同的時(shí)間做出反應(yīng)的,通過(guò)類對(duì)象的生命周期建立模型來(lái)描述對(duì)象隨時(shí)間變化的動(dòng)態(tài)行為。圖313所示是考生在考

44、試過(guò)程中的幾種狀態(tài),整個(gè)考試過(guò)程需要教師參與,教師監(jiān)考也是改變考生狀態(tài)的一個(gè)重要角色。圖313考生考試狀態(tài)圖3.7時(shí)序圖描述用例在UML中,系統(tǒng)的動(dòng)態(tài)行為模型可以用交互作用圖(包括時(shí)序圖和協(xié)作圖)來(lái)描述。時(shí)序圖(Sequence Diagram)是UML用于描述按照時(shí)間順序?qū)o定場(chǎng)景中相互協(xié)作對(duì)象之間消息傳遞的視圖。時(shí)序圖強(qiáng)調(diào)對(duì)象之間消息的時(shí)間順序,同時(shí)顯示了對(duì)象之間的交互?;顒?dòng)圖描述從活動(dòng)到活動(dòng)的控制流,而交互作用圖則強(qiáng)調(diào)從對(duì)象到對(duì)象的控制流。經(jīng)過(guò)分析,在本考試系統(tǒng)中主要包含了兩種類型的時(shí)序圖:(1)考生活動(dòng)時(shí)序圖描述考生參加考試全過(guò)程的時(shí)序圖,如圖314所示。圖314考生活動(dòng)時(shí)序圖(2)教

45、師活動(dòng)時(shí)序圖描述教師組織考試全過(guò)程的時(shí)序圖,如圖315所示。圖315教師活動(dòng)時(shí)序圖4 數(shù)據(jù)庫(kù)分析與設(shè)計(jì)數(shù)據(jù)庫(kù)技術(shù)對(duì)數(shù)據(jù)處理量大、數(shù)據(jù)類型復(fù)雜,以及對(duì)數(shù)據(jù)的存儲(chǔ)、維護(hù)、檢索、分類、統(tǒng)計(jì)等諸多方面具有強(qiáng)大的功能。網(wǎng)上考試系統(tǒng)離不開數(shù)據(jù)庫(kù)系統(tǒng)的支持,不論是試題、答案,還是考生信息都需要存放在數(shù)據(jù)庫(kù)中,而且數(shù)據(jù)庫(kù)獨(dú)立于程序而存在,具有較好的安全性,本考試系統(tǒng)使用Microsoft SQL Server 2000作為后臺(tái)數(shù)據(jù)庫(kù)。4.1數(shù)據(jù)流程分析通過(guò)前面對(duì)系統(tǒng)功能需求,以及功能模塊的劃分情況的深入研究分析,可以得到如圖41所示的網(wǎng)上考試系統(tǒng)的數(shù)據(jù)流程圖。圖41網(wǎng)上考試系統(tǒng)的數(shù)據(jù)流程圖進(jìn)一步對(duì)網(wǎng)上考試系統(tǒng)

46、的考試過(guò)程、考試內(nèi)容和數(shù)據(jù)流程分析,本系統(tǒng)應(yīng)當(dāng)具有如下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):教師信息,包括的數(shù)據(jù)項(xiàng)有:教師編號(hào)、教師姓名、管理密碼、權(quán)限等。學(xué)生信息,包括的數(shù)據(jù)項(xiàng)有:學(xué)生編號(hào)、學(xué)生姓名、管理密碼、年級(jí)、班級(jí)等??颇?,包括的數(shù)據(jù)項(xiàng)有:科目編號(hào)、科目名稱、科目信息等。年級(jí),包括的數(shù)據(jù)項(xiàng)有:年級(jí)編號(hào)、年級(jí)名稱等。班級(jí),包括的數(shù)據(jù)項(xiàng)有:班級(jí)編號(hào)、班級(jí)名稱等。試題,包括的數(shù)據(jù)項(xiàng)有:試題編號(hào)、科目、題干、題型、備選項(xiàng)、答案、選中次數(shù)、答對(duì)率、試題作者、添加時(shí)間等??紙?chǎng),包括的數(shù)據(jù)項(xiàng)有:考場(chǎng)編號(hào)、考卷名稱、考場(chǎng)密碼、考試類型、考試科目、開始時(shí)間、結(jié)束時(shí)間、監(jiān)考老師、考生年級(jí)、考生班級(jí)、判斷題數(shù)目、判斷題分值、

47、單選題數(shù)目、單選題分值、多選題數(shù)目、多選題分值、填空題數(shù)目、填空題分值、總分、平均分、考場(chǎng)狀態(tài)等??忌嚲?,包括的數(shù)據(jù)項(xiàng)有:試卷編號(hào)、學(xué)號(hào)、考場(chǎng)號(hào)、題目編號(hào)、試題編號(hào)(題庫(kù))、試題類型、試題答案、試題狀態(tài)、試題分?jǐn)?shù)、考生答案、考生得分等。學(xué)生成績(jī),包括的數(shù)據(jù)項(xiàng)有:學(xué)號(hào)、考場(chǎng)密碼、考場(chǎng)編號(hào)、試題編號(hào)、正確答案、考生答案、考生分?jǐn)?shù)、考生狀態(tài)等。專家答疑,包括的數(shù)據(jù)項(xiàng)有:?jiǎn)栴}編號(hào)、學(xué)生姓名、問(wèn)題簡(jiǎn)述、問(wèn)題描述、提問(wèn)時(shí)間、答疑教師、答疑內(nèi)容等。日志操作,包括的數(shù)據(jù)項(xiàng)有:日志編號(hào)、操作者編號(hào)、操作者姓名、操作者身份、操作時(shí)間、主機(jī)IP、執(zhí)行操作等。信息分類,包括的數(shù)據(jù)項(xiàng)有:分類編號(hào)、分類名稱等。信息發(fā)布

48、,包括的數(shù)據(jù)項(xiàng)有:信息編號(hào)、新聞標(biāo)題、分類編號(hào)、教師姓名、新聞內(nèi)容、發(fā)布時(shí)間等。4.2數(shù)據(jù)庫(kù)概念設(shè)計(jì)通過(guò)上面對(duì)考試系統(tǒng)各數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的分析,以及對(duì)現(xiàn)實(shí)世界概念模型的抽象,可以確立在線考試的主要實(shí)體為:教師、學(xué)生、考題、年級(jí)、班級(jí)、科目、信息分類、信息等,并簡(jiǎn)要地設(shè)計(jì)出如圖42所示的E-R關(guān)系圖,為數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)奠定基礎(chǔ)。圖42考試系統(tǒng)E-R關(guān)系圖4.3數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)是將數(shù)據(jù)的概念結(jié)構(gòu)轉(zhuǎn)化為SQL server 2000數(shù)據(jù)庫(kù)系統(tǒng)的實(shí)際模型,從而得到數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),以便在數(shù)據(jù)庫(kù)中建立表結(jié)構(gòu)。本考試系統(tǒng)中的所有表均保存于數(shù)據(jù)庫(kù)examDB.Mdf,主要包括教師信息表、學(xué)

49、生信息表、科目表、年級(jí)表、班級(jí)表、試題庫(kù)表、考試信息表、考生試卷表、考生成績(jī)表、學(xué)生試卷表、專家答疑表、操作日志表、新聞信息表等12個(gè)表,在編程時(shí)還需要產(chǎn)生臨時(shí)表。各表的結(jié)構(gòu)如表41412所示。表41教師信息表(teainfo)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明IDbigint(8)not null自動(dòng)編號(hào)teaIDnvarchar(50)key,not null教師編號(hào)teaNamenvarchar(50)not null教師姓名teaPwdnvarchar(50)not null密碼purviewnvarchar(50)not null權(quán)限表42學(xué)生信息表(stuinfo)字段名稱數(shù)據(jù)類型約

50、束說(shuō)明功能說(shuō)明stuIDbigint(8)key,not null學(xué)號(hào)stuNamenvarchar(50)not null學(xué)生姓名stuPwdnvarchar(50)not null密碼gradeIDintnot null年級(jí)編號(hào)classIDintnot null班級(jí)編號(hào)表43科目信息表(subject)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明subjIDint(4)key,not null科目編號(hào)subjNamenvarchar(50)not null科目名稱subjInfonvarchar(250)null科目信息表44年級(jí)信息表(gradeInfo)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明grade

51、IDint(4)key,not null年級(jí)編號(hào)gradeNamenvarchar(50)not null年級(jí)名稱表45班級(jí)信息表(classInfo)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明classIDint(4)key,not null班級(jí)編號(hào)classNamenvarchar(50)not null班級(jí)名稱表46試題表(quizLib)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明quizIDbigint(8)key,not null試題編號(hào)subjIDint(4)not null所屬科目quizTitlenvarchar(1000)not null題干quizClassnvarchar(50)not nu

52、ll題型quizOptionnvarchar(200)not null選項(xiàng)quizKeynvarchar(50)not null標(biāo)準(zhǔn)答案quizHitsint(4)not null選中次數(shù)quizKeyOkint(4)not null答對(duì)率quizWriternvarchar(50)null試題作者quizTimesmalldatetime(4)not null添加時(shí)間表47考卷信息表(examInfo)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明examIDbigint(8)key,not null考卷編號(hào)examNamenvarchar(200)not null班級(jí)名稱examPwdnvarchar(

53、50)not null考場(chǎng)密碼examClassnvarchar(50)not null考試類別subjIDint(4)not null考試科目examStartsmalldatetime(4)not null開考時(shí)間字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明examEndsmalldatetime(4)not null結(jié)束時(shí)間teaIDnvarchar(50)not null教師號(hào)GradeIDint(4)not null考生年級(jí)編號(hào)ClassIDint(4)not null考生班級(jí)編號(hào)radio1Sumint(4)not null判斷題數(shù)目radio1Valint(4)null判斷題分值radio2

54、Sumint(4)not null單選題數(shù)目radio2Valint(4)null單選題分值checkboxSumint(4)not null多選題數(shù)目checkboxValint(4)null多選題分值textSumint(4)not null填空題數(shù)目textValint(4)null填空題分值examScoreint(4)null總分值examAvgint(4)null平均分?jǐn)?shù)examStatusnvarchar(50)not null考場(chǎng)狀態(tài)表48學(xué)生成績(jī)表(stuPaper)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明stuIDbigint(8)key,not null考生號(hào)examIDbigi

55、nt(8)key,not null考場(chǎng)編號(hào)paperIDint(4)not null試卷編號(hào)quizIDint(4)not null試題編號(hào)quizClassnvarchar(50)not null試題類型quizKeynvarchar(50)not null試題答案quizStatusbit(1)not null試題狀態(tài)quizScoreint(4)not null試題分?jǐn)?shù)stuKeynvarchar(50)null學(xué)生答案stuScoreint(4)null考生得分表49學(xué)生成績(jī)表(stuScore)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明stuIDbigint(8)key,not null考生號(hào)

56、stuPwdnvarchar(50)not null考場(chǎng)密碼examIDbigint(8)not null考場(chǎng)編號(hào)quizIDntext (16)not null試題編號(hào)quizKeyntext (16)not null正確答案stuKeyntext (16)null考生答案stuScoreint(4)null考生分?jǐn)?shù)stuStatusnvarchar(50)null考生狀態(tài)表410專家答疑表(board)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明boardidbigint(8)key,not null問(wèn)題編號(hào)useridbigint(8)not null學(xué)生號(hào)字段名稱數(shù)據(jù)類型約束說(shuō)明功能說(shuō)明usernamenvarchar(50)not null學(xué)生姓名titlentext (16)not null問(wèn)題簡(jiǎn)述contentntext (16)not null問(wèn)題描述vtimesmalldatetime(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論