專利名稱:用于分布式網(wǎng)絡(luò)上的考試的系統(tǒng)和方法
交叉引用本申請要求了2002年11月13日遞交的序列號為60/425,740的美國臨時申請的優(yōu)先權(quán),該申請的名稱為“基于計算機(jī)的考試系統(tǒng)”。
背景技術(shù):
許多年來,出于各種原因而對應(yīng)試者舉行標(biāo)準(zhǔn)化的考試,例如教育性考試或為了評測特定的技能。例如,學(xué)術(shù)技能考試(例如SAT、GRE、LSAT、GMAT等等)通常面向大量學(xué)生舉行。這些考試的結(jié)果被學(xué)院、大學(xué)和其他教育機(jī)構(gòu)用作為確定是否應(yīng)錄用應(yīng)試者到該教育機(jī)構(gòu)學(xué)習(xí)的一個因素。還舉行其他標(biāo)準(zhǔn)化考試來確定某個個體是否達(dá)到了指定的知識水平或掌握了給定的科目(subject)。
傳統(tǒng)上,標(biāo)準(zhǔn)化考試是基于紙面的,應(yīng)試者聚集在房間內(nèi),并向他們給出紙面考試材料,通常包括問卷小冊子和可通過光或磁手段而為計算機(jī)可讀的答題紙。隨著計算機(jī)工業(yè)的增長和計算設(shè)備價格的降低,傳統(tǒng)上通過紙張傳播信息的領(lǐng)域已開始轉(zhuǎn)向電子信息傳播手段。標(biāo)準(zhǔn)化考試領(lǐng)域也不例外??墒褂眠m度定價的計算機(jī)系統(tǒng)來取代紙張考試小冊子,管理對用戶的考試問題。使用計算機(jī)系統(tǒng)將考試問題遞送給用戶通常被描述為“基于計算機(jī)的考試”(CBT)。一種用于基于計算機(jī)的考試的系統(tǒng)在美國專利No.5,827,070(授權(quán)給Kershaw等人)中進(jìn)行了描述,該專利也共同轉(zhuǎn)讓給了本申請的受讓人,其整個內(nèi)容通過引用而包括于此。
雖然用于基于計算機(jī)的考試的系統(tǒng)已經(jīng)可獲得,但是它們通常依賴于過時的技術(shù),例如考試問題和相關(guān)軟件的物理遞送。雖然數(shù)據(jù)存儲介質(zhì)(例如光盤或磁帶)上的數(shù)據(jù)和軟件的物理遞送是可靠且安全的,但它慢而麻煩,因為它存在固有的遲延時間(即遞送該介質(zhì)花費的時間),并且它需要人工來物理處理遞送介質(zhì)(即安裝盤片或磁帶)。雖然安裝物理介質(zhì)上的初始考試材料是可接受的,但是在一些情形下,使用物理介質(zhì)提供對所述材料的重復(fù)性更新的麻煩程度是不可接受的。隨著網(wǎng)絡(luò)技術(shù)中的進(jìn)步,例如因特網(wǎng)容量和使用的增長,許多環(huán)境下網(wǎng)絡(luò)通信正在迅速代替物理遞送,許多現(xiàn)代的預(yù)期需要不低于網(wǎng)絡(luò)通信可提供的速度,同時仍要求物理遞送的安全性和可靠性。在考試環(huán)境下,引入網(wǎng)絡(luò)傳播時保持安全性和可靠性的需求怎么強(qiáng)調(diào)也不過分。
發(fā)明內(nèi)容
公開了一種用于基于計算機(jī)的考試的系統(tǒng)和方法,其中在中央位置準(zhǔn)備并存儲考試信息,并通過因特網(wǎng)遞送到一個或多個執(zhí)行應(yīng)考軟件的考試站,從而舉行考試??荚囆畔荚図椖?item),包括考試問題、測驗標(biāo)識和序列信息。應(yīng)考軟件可以是使用JNLP協(xié)議啟動的JAVA應(yīng)用程序、JAVA小應(yīng)用程序或任何其他軟件應(yīng)用。JAVA應(yīng)用程序與JAVA小應(yīng)用程序不同,它不受限于瀏覽器的約束,通常具有更好的性能,因為該應(yīng)用程序被加載到考試站上,因而是應(yīng)考軟件的優(yōu)選實施方案。另外,作為優(yōu)選實施方案的一部分,使用JAVA網(wǎng)絡(luò)啟動協(xié)議(JNLP),因而使得JAVA應(yīng)用程序可立即通過因特網(wǎng)取得該應(yīng)用程序的最新版本。另外,不需要“保持存活”連接來通過因特網(wǎng)(例如HTTP/HTTPS協(xié)議)在考試站和提供考試的服務(wù)中心之間進(jìn)行通信。包括考試項目的考試信息只存儲在考試站上的易失性存儲器上。將所述項目顯示給應(yīng)考者(這里也稱為用戶),所有與考試站的用戶交互都被發(fā)送給中央位置并存儲在存儲設(shè)備上。
在本發(fā)明的實施方案中,創(chuàng)建一個緩存列表,包括所有考試組件的列表,這些考試組件(component)將被遞送給考試站,并且需要它們來將所述項目顯示給用戶。使用考試組件來創(chuàng)建考試項目以遞送給用戶。將緩存列表遞送給考試站,并與中央服務(wù)器進(jìn)行同步。考試站然后預(yù)取緩存列表上可配置數(shù)量的組件。發(fā)生某些預(yù)定觸發(fā)事件時,從中央服務(wù)器遞送額外的組件到考試站,以最小化數(shù)據(jù)延遲問題。
在本發(fā)明的另一個實施方案中,與考試站上的測驗的狀況和狀態(tài)有關(guān)的信息被記錄在可由中央服務(wù)器訪問的存儲設(shè)備上,以用于故障恢復(fù)。中央服務(wù)器記錄考試站的初始狀態(tài),就給定的正在進(jìn)行的測驗的標(biāo)識,初始狀態(tài)可由中央服務(wù)器確定。初始狀態(tài)包括在數(shù)據(jù)對象中,該數(shù)據(jù)對象被遞送給考試站并存儲在易失性存儲器中,使得可在測試站上維護(hù)該狀態(tài),并在中央服務(wù)器上有鏡像。之后,考試站將所述狀態(tài)的改變(可包括用戶與考試站的交互以及逝去的時間)周期性地以及在發(fā)生特定用戶動作時遞送到中央服務(wù)器。
在附圖中以示例性而非限制性的方式示出了本發(fā)明,其中相似的標(biāo)號表示相似的元件,并且其中圖1示出了根據(jù)本發(fā)明實施方案,示例性的基于計算機(jī)的考試系統(tǒng);圖2示出了根據(jù)本發(fā)明的實施方案,用于在考試站進(jìn)行狀態(tài)管理的方法的流程圖;圖3示出了根據(jù)本發(fā)明的實施方案,用于在服務(wù)中心進(jìn)行狀態(tài)管理的方法的流程圖;圖4示出了根據(jù)本發(fā)明實施方案的考試信息緩存表;圖5示出了根據(jù)本發(fā)明的實施方案,用于進(jìn)行考試緩存的方法的流程圖;圖6示出了根據(jù)本發(fā)明實施方案的示例性的計算機(jī)平臺。
具體實施例方式
在下面的詳細(xì)描述中,給出了大量具體細(xì)節(jié)以透徹理解本發(fā)明。然后,對本領(lǐng)域的普通技術(shù)人員來說很清楚這些具體細(xì)節(jié)對實施本發(fā)明來說不是必需的。在其他情形下,未詳細(xì)示出公知的結(jié)構(gòu)、接口和過程以免不必要地模糊本發(fā)明。
在描述本發(fā)明的方法和系統(tǒng)之前,應(yīng)理解到本發(fā)明并不局限于所描述的特定方法、協(xié)議或系統(tǒng),因為它們是可以變化的。還應(yīng)理解到,說明書中使用的術(shù)語僅僅是為了描述特定的版本或?qū)嵤┓桨?,并非是要限制本發(fā)明的范圍,本發(fā)明的范圍僅受限于所附權(quán)利要求書。具體地說,雖然本發(fā)明是結(jié)合因特網(wǎng)文件來描述的,但應(yīng)認(rèn)識到本發(fā)明可在任何具有一個或多個計算機(jī)的網(wǎng)絡(luò)中獲得應(yīng)用。
還必須注意到,在這里使用時以及在所附權(quán)利要求中,單數(shù)形式“一個”和“所述”包括復(fù)數(shù)引用,除非上下文有明確的相反指示。因此,例如對一個“計算機(jī)”或“服務(wù)器”的引用是對一個或多個計算機(jī)或服務(wù)器及本領(lǐng)域技術(shù)人員所公知的等同物等等的引用。除非有相反的定義,否則這里所使用的所有技術(shù)術(shù)語和科學(xué)術(shù)語都具有本領(lǐng)域的普通技術(shù)人員所共同理解的含義。雖然可使用與這里描述的方法類似或等同的任何方法來實施或測試本發(fā)明的實施方案,但是現(xiàn)在描述的是優(yōu)選的方法。這里提到的所有出版物都通過引用而被包括進(jìn)來。這里的任何內(nèi)容都不應(yīng)被理解為承認(rèn)“本發(fā)明沒有資格作為在先發(fā)明而在日期上早于這種公開”。
這里使用的術(shù)語“項目”指考試問題,優(yōu)選地包括題干、提問、回答和指示,或者這些元素的某個子集。這些包括考試項目的元素也稱為考試組件。與考試領(lǐng)域相關(guān)的“項目”這一概念在美國專利No.5,827,070(授權(quán)給Kershaw等人)中有更完整的討論,該專利的整體通過引用被包括進(jìn)來。
圖1示出了根據(jù)本發(fā)明實施方案的考試系統(tǒng)100。該系統(tǒng)包括考試中心110,考試中心110包括一個或多個考試站111a...n,可與服務(wù)中心120通信,服務(wù)中心120又可與服務(wù)中心后端130通信??荚囍行?10可以是一個或多個應(yīng)考者聚集來參加測驗的位置、教室或應(yīng)考者的個人計算機(jī)的位置。而且,雖然在圖1中未示出,但是應(yīng)認(rèn)識到一個或多個考試中心110可與服務(wù)中心120通信以進(jìn)行多個測驗??荚囍行?10、服務(wù)中心120和服務(wù)中心后端130之間的通信可通過任何數(shù)據(jù)通信方法進(jìn)行,包括無線通信、有線通信、通過公共電話交換網(wǎng)(PTSN)或通過一個或多個網(wǎng)絡(luò),例如因特網(wǎng)、內(nèi)部網(wǎng)、局域網(wǎng)或廣域網(wǎng)。
考試中心110在一個實施方案中,考試站111a...n中的每一個都可通過網(wǎng)絡(luò)與服務(wù)中心120通信,所述網(wǎng)絡(luò)例如是局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)或因特網(wǎng)??扇炕虿糠值厥褂闷渌ㄐ攀侄?,包括無線通信、有線通信、PTSN或它們的組合??荚囌?11a...n可使用任何協(xié)議例如JNLP或HTTP/HTTPS與服務(wù)中心120通信,但是優(yōu)選安全的協(xié)議例如JNLP??荚囌?11a...n和服務(wù)中心120之間的連接可僅在需要交換信息時才建立,而非在評測期間維持連續(xù)的連接??荚囍行?10和服務(wù)中心120之間的連接可通過撥號連接、高速因特網(wǎng)連接或包括無線通信在內(nèi)的任何其他通信手段來實現(xiàn)。
每個考試站111a...n都被配置成執(zhí)行環(huán)境準(zhǔn)備軟件113和應(yīng)考軟件112以為用戶舉行考試。考試站111a...n執(zhí)行的環(huán)境準(zhǔn)備軟件113進(jìn)一步配置每個考試站111a...n,以通過禁用考試站111a...n在應(yīng)考軟件112和任何其他應(yīng)用程序之間切換或在應(yīng)考軟件112和任何其他應(yīng)用程序之間交換數(shù)據(jù)的能力,在安全的環(huán)境中實現(xiàn)考試信息的遞送和管理。
在一個實施方案中,應(yīng)考軟件112是JAVA應(yīng)用程序,可在JNLP期間啟動。JAVA應(yīng)用程序可用來舉行多種考試類型。例如,應(yīng)考軟件112可用來舉行所謂的線性考試(例如具有預(yù)定問題的考試)或所謂的自適應(yīng)性考試(例如基于用戶的在先回答而生成問題的考試)。系統(tǒng)100可改裝來提供和舉行從任何類型的模型生成的測驗。應(yīng)考軟件112還可操作緩存問題,例如下面參考圖5和6所詳細(xì)描述的那樣,并執(zhí)行本發(fā)明的其他方法。
應(yīng)考軟件112可構(gòu)成不被瀏覽器的限制所約束的JAVA應(yīng)用程序,例如其JAVA運行時環(huán)境所支持的版本。而且,在使用JNLP時,應(yīng)考軟件112可被容易地更新。或者,應(yīng)考軟件112可通過小應(yīng)用程序或配置來執(zhí)行這里描述的方法的任何其他軟件應(yīng)用程序來實現(xiàn)。
考試站111a...n下載考試信息以舉行考試。作為安全措施,考試信息存儲在考試站111a...n的易失性存儲器中,并在考試完成后被刪除。在一個實施方案中,考試信息封裝在JAVA存檔文件(JAR)中,并保存在考試站的易失性存儲器中,以為應(yīng)考軟件112所用??荚囆畔y驗標(biāo)識、考試項目和考試組件。
考試站111a...n可位于考試中心110處,可在一個機(jī)構(gòu)處向多個用戶舉行考試。但是,并不需要考試站111a...n物理上處于同一位置。
服務(wù)中心120服務(wù)中心120包括web服務(wù)器122,web服務(wù)器122被配置成通過任何協(xié)議來接收數(shù)據(jù)通信,但優(yōu)選使用安全的協(xié)議例如JNLP或HTTPS。另外,小服務(wù)程序引擎121提供通信框架,應(yīng)用服務(wù)器125被配置成在測驗進(jìn)行中將數(shù)據(jù)遞送給考試站111a...n,并從考試站111a...n接收數(shù)據(jù)。雖然示出為分開的組件,但是web服務(wù)器122、小服務(wù)程序引擎121和應(yīng)用服務(wù)器125可以是物理上分開的組件,或結(jié)合到單個物理組件中。
web服務(wù)器122可與考試站111a...n通信來提供對服務(wù)中心120的訪問。web服務(wù)器122還可與數(shù)據(jù)存儲設(shè)備123通信。數(shù)據(jù)存儲設(shè)備123被配置成存儲所有從考試站111a...n接收的數(shù)據(jù),該數(shù)據(jù)的信息可包括用戶對問題的回答以及用戶和考試站111a...n之間的任何其他交互。另外,數(shù)據(jù)存儲設(shè)備123還存儲用于在考試站111a...n發(fā)生故障時進(jìn)行故障恢復(fù)所必需的數(shù)據(jù)。故障回復(fù)信息可包括正在向用戶舉行的考試的當(dāng)前狀態(tài)的實質(zhì)性鏡像拷貝,其足以使得可進(jìn)行故障恢復(fù)而無需從所存儲的信息重建所述狀態(tài)。狀態(tài)信息可包括例如正在考試站上向用戶舉行的考試的考試答案以及過去的時間。數(shù)據(jù)存儲設(shè)備123還緩存從后端130接收的考試信息(例如考試問題等等),并且還被配置成存儲可被遞送到考試站111a...n并顯示在其上的考試項目,以及存儲從考試站111a...n接收到并要發(fā)送到后端130的信息(例如考試結(jié)果、用戶標(biāo)識信息等等)。
應(yīng)用服務(wù)器125被配置成支持運行在考試站111a...n上的應(yīng)考軟件112。應(yīng)用服務(wù)器125可接收來自考試站111a...n的獲得數(shù)據(jù)的請求,并適當(dāng)?shù)仨憫?yīng)這些請求。應(yīng)用服務(wù)器125將控制考試項目和組件到考試站111a...n的遞送,例如通過ENTERPRISE JAVABEANS(EJB)容器或Active X控件。而且,從考試站111a...n發(fā)送的數(shù)據(jù)通過web服務(wù)器122進(jìn)行接收,并被遞送到數(shù)據(jù)存儲設(shè)備123。
可選地,管理者站(未示出)可與應(yīng)用服務(wù)器125進(jìn)行通信。管理者站可遠(yuǎn)程于服務(wù)中心120、位于服務(wù)中心120處或作為基于計算機(jī)的考試系統(tǒng)100的其他組件之一而被包括其中。管理者站可用來執(zhí)行考試中心110的管理功能,例如監(jiān)控考試站111a...n以發(fā)現(xiàn)故障、登記用戶或打印測試分?jǐn)?shù)。管理者站還可被配置成執(zhí)行服務(wù)中心120的監(jiān)控和其他功能,例如負(fù)載平衡、瀏覽考試和/或回答、監(jiān)控與考試站111a...n的通信以及故障檢修。另外,管理者站還可配置成執(zhí)行后端130的類似功能。
從考試站111a...n接收的數(shù)據(jù)可從數(shù)據(jù)存儲設(shè)備123發(fā)送到后端130,在后端130處對所述數(shù)據(jù)進(jìn)行進(jìn)一步的處理,例如計分或存檔性存儲。所述傳輸可通過考試結(jié)果傳輸模塊124進(jìn)行,考試結(jié)果傳輸模塊124從數(shù)據(jù)存儲設(shè)備123接收用戶信息和考試結(jié)果,并將所述信息和結(jié)果傳輸?shù)胶蠖?30。
后端130數(shù)據(jù)存儲設(shè)備123從后端130接收數(shù)據(jù)并將數(shù)據(jù)遞送到后端130。后端130是從考試站接收的數(shù)據(jù)例如用戶信息和考試結(jié)果存儲的位置,以及準(zhǔn)備并打包考試信息的位置。另外,包遷移工具132存儲將要遞送到數(shù)據(jù)存儲設(shè)備123的考試包的最新版本??荚図椖看鎯υ跀?shù)據(jù)存儲后端設(shè)備133上。在本發(fā)明的實施方案中,考試項目以考試包的形式存儲在數(shù)據(jù)存儲后端設(shè)備133上。包裝遷移工具132從數(shù)據(jù)存儲后端設(shè)備133取得考試項目,進(jìn)行適當(dāng)?shù)母袷交赃f送到數(shù)據(jù)存儲設(shè)備123。當(dāng)以考試包的形式將考試項目存儲在數(shù)據(jù)存儲后端設(shè)備133上時,包裝遷移工具132還管理對考試包的后續(xù)版本的適當(dāng)?shù)奶幚?,以確保從數(shù)據(jù)存儲設(shè)備123正在訪問的是適當(dāng)?shù)陌姹尽@?,可在?shù)據(jù)存儲后端設(shè)備133上創(chuàng)建考試包A(版本1),并由包裝遷移工具132遞送到數(shù)據(jù)存儲設(shè)備123。然后將考試包A更新為版本2。當(dāng)包裝遷移工具132將版本2遞送到數(shù)據(jù)存儲設(shè)備123時,它利用一個指示符進(jìn)行這一工作,該指示符表明在先版本(即版本1)應(yīng)被標(biāo)記為不可遞送,并且響應(yīng)于對考試包A的請求,應(yīng)提供版本2。包裝遷移工具132還可通過任何傳統(tǒng)加密方法來進(jìn)行加密,例如那些基于對稱密鑰算法或公/私鑰算法的方法。
從服務(wù)中心120遞送從考試站接收的數(shù)據(jù)例如用戶信息和考試結(jié)果,并存儲在考試信息存儲庫135中。用戶信息可包括用戶的名字和地址,和/或與應(yīng)考用戶相關(guān)的其他信息,例如包括考試中心110的標(biāo)識??荚嚱Y(jié)果可包括諸如用戶對各個考試項目的回答、采用的考試包的版本以及測驗日期和時間等信息??蛇x地,后端130還可包括考試信息處理器134。考試信息處理器134被配置成從考試信息存儲庫135接收信息,并處理這一數(shù)據(jù)以生成所需的報告和分析。例如,考試信息處理器134可對考試項目的回答計分,可關(guān)聯(lián)考試結(jié)果和用戶信息,以及產(chǎn)生考試分?jǐn)?shù)報告、統(tǒng)計分析或與測驗相關(guān)的其他信息。
狀態(tài)管理重要的是,系統(tǒng)100被配置成在考試站111a...n中的一個或多個在測驗期間出現(xiàn)故障,需要在評測完成前重啟時提供對考試站111a...n的快速、有效的恢復(fù)。本發(fā)明提供了用于這一恢復(fù)的方法,稱為狀態(tài)管理,其可針對每項考試的需要和需求而進(jìn)行配置,并將使得用戶可在測驗中考試站出現(xiàn)故障的基本相同點處重啟他/她的測驗。該方法需要將考試站111a...n上存在的考試狀態(tài)原樣地鏡像到數(shù)據(jù)存儲設(shè)備123上。考試狀態(tài)數(shù)據(jù)是可配置的數(shù)據(jù)對象集合,描述了測驗中給定點處的考試站111a...n的狀態(tài)。
考試狀態(tài)數(shù)據(jù)例如包括已過去的(elapsed)考試時間、當(dāng)前正在進(jìn)行的考試項目、已進(jìn)行的在先評測(assessment)項目以及對在先考試項目的回答。已過去的考試時間包括從正進(jìn)行的考試的開始時間開始已過去的應(yīng)考時間量。已過去的考試時間考慮了考試進(jìn)行期間考試對用戶不可用的任何時間量。例如,考試的一些部分可能是在考試進(jìn)行期間下載的。由于傳輸延遲,問題可能對用戶不可用。如果向用戶分配了預(yù)定量的時間來應(yīng)考,則問題對用戶不可用的時間不會加罰到用戶身上??荚嚑顟B(tài)數(shù)據(jù)中還包括用戶對在先考試項目的回答。這包括用戶已輸入的任何答案。
圖2示出了根據(jù)本發(fā)明的實施方案進(jìn)行狀態(tài)管理的方法。在考試站上,在考試開始205處啟動該方法??荚囌緦⒄谂e行的測驗的標(biāo)識發(fā)送給服務(wù)中心210。服務(wù)中心然后創(chuàng)建該測驗的初始狀態(tài)對象220,并將該初始狀態(tài)對象存儲在數(shù)據(jù)存儲設(shè)備上。從服務(wù)中心將初始狀態(tài)對象遞送到考試站225。狀態(tài)對象包括正在舉行的測驗的標(biāo)識,還可包括考試項目、考試項目回答、已過去的時間以及與參加測驗相關(guān)的任何其他信息。然后啟動心跳(heartbeat)計時器230,并記錄每次用戶與考試站的交互235。然后,檢查用戶交互以確定它是否是以被預(yù)定要引發(fā)狀態(tài)更新的用戶交互240??梢l(fā)狀態(tài)更新的用戶交互可被配置成滿足給定測驗的需要,并可包括任何交互,或只包括那些導(dǎo)致對正在顯示的當(dāng)前考試項目作出回答的交互。如果用戶交互需要更新狀態(tài),則考試站將狀態(tài)改變發(fā)送到服務(wù)中心245。重要的是只發(fā)送狀態(tài)改變,不發(fā)送整個狀態(tài)對象。發(fā)送到服務(wù)中心的狀態(tài)改變不僅包括引發(fā)步驟245處的發(fā)送的用戶交互,還包括自上次發(fā)送以來已發(fā)生的任何其他改變以及時間上的改變。用狀態(tài)中的改變更新狀態(tài)對象后,重新啟動心跳計時器230。
或者,如果用戶交互不需要更新狀態(tài),則將用戶交互排隊以在以后發(fā)送到服務(wù)中心250。檢查心跳計時器以確定它是否已超過最大值255。所述最大值可被配置為任何數(shù)量,依賴于測驗的需求。如果心跳計時器尚未超過其最大值,則增加心跳計時器257,并且方法繼續(xù)到記錄用戶交互235。否則,在步驟245發(fā)生狀態(tài)改變的發(fā)送。
圖3示出了在服務(wù)中心120處進(jìn)行狀態(tài)管理的方法。該方法開始于從考試站接收考試標(biāo)識305。服務(wù)中心然后創(chuàng)建初始狀態(tài)對象310,并將初始狀態(tài)對象遞送到考試站315。然后,啟動故障計時器320,并且服務(wù)中心等待來自考試站的數(shù)據(jù)。如果接收到數(shù)據(jù)325,則將狀態(tài)改變記錄在數(shù)據(jù)存儲設(shè)備中,并記錄狀態(tài)改變350。或者,如果未接收到數(shù)據(jù)325,則檢查故障計時器330,以確定故障計時器是否已超過最大值。如果故障計時器未超過最大值,則增加故障計時器335,并且服務(wù)中心繼續(xù)等待來自考試站的數(shù)據(jù)。如果故障計時器超過最大值,則服務(wù)中心將考試站指定為可重啟340,并關(guān)閉考試會話345。
故障計時器只在它在足以得出結(jié)論“考試站不再在運行”的時間段內(nèi)未從考試站接收到數(shù)據(jù)時才會超過最大值。當(dāng)重啟考試站時,服務(wù)中心將在考試站上進(jìn)行的測驗標(biāo)識為先前關(guān)閉并指定為可重新開始的測驗。使用初始狀態(tài)以及已記錄在數(shù)據(jù)存儲設(shè)備上的初始狀態(tài)的改變,在可配置來滿足測驗的需求的參數(shù)內(nèi),服務(wù)中心將在考試站上在考試站出現(xiàn)故障時處重新創(chuàng)建測驗。
評測項目緩存系統(tǒng)100可操作來舉行任何類型的測驗,包括但不局限于線性考試和自適應(yīng)性考試。對于線性考試,考試的問題是預(yù)先確定的。但是,服務(wù)中心120不是將整個考試發(fā)送到考試站,而是在考試進(jìn)行期間,使用這里描述的方法,一部分一部分地發(fā)送考試。例如,考試的一部分可被發(fā)送到考試站并存儲在本地易失性存儲器中,這樣用戶可開始應(yīng)考。隨著考試的進(jìn)行,考試的多個部分被連續(xù)發(fā)送到考試站并存儲在易失性存儲器中??捎|發(fā)考試的一部分的傳輸?shù)氖录砂ㄓ脩艋卮鹆祟A(yù)定數(shù)量的問題,或過去了預(yù)定量的時間。
包裝遷移工具132可從數(shù)據(jù)存儲后端設(shè)備133取得考試。包裝遷移工具132可將考試存儲在數(shù)據(jù)存儲后端設(shè)備123和web服務(wù)器122中。然后,應(yīng)用服務(wù)器125根據(jù)需要將部分考試發(fā)送到考試站111a...n。
對于自適應(yīng)性考試,提供給用戶的下一個問題不是預(yù)先確定的;相反,它基于用戶對當(dāng)前考試問題的回答。對于自適應(yīng)性考試,服務(wù)中心120將一組考試項目或問題發(fā)送到舉行考試的考試站111a...n。應(yīng)考軟件112然后選擇一個或多個問題,以基于用戶對先前的問題的回答來顯示給用戶。所選擇的(多個)問題然后在要回答的考試期間提供給用戶。重復(fù)這一過程直到考試完成。服務(wù)中心120可在用戶回答問題期間發(fā)送所述問題組。因此,用戶可不必等待讀下一個問題。
包裝遷移工具132可從數(shù)據(jù)存儲后端設(shè)備133取得大量問題,并將問題存儲在數(shù)據(jù)存儲設(shè)備123中。應(yīng)用服務(wù)器125可響應(yīng)于從考試站111a...n接收到回答,從數(shù)據(jù)存儲設(shè)備123中選擇一組問題。所述問題組被發(fā)送到考試站111a...n,從而基于用戶對先前的(多個)問題的回答,將該組中的一個或多個問題提供/顯示給用戶。
圖4示出了在自適應(yīng)性考試的進(jìn)行中,回答和接下來將提供給用戶的問題之間的關(guān)聯(lián)的實施例??荚囌?11a...n接收一組7個問題,存儲在易失性存儲器中。如果用戶對某個問題(例如考試中的問題10)選擇了選項A,則應(yīng)考軟件從該組中選擇問題1和2,并且這些問題是接下來將提供給用戶的問題(例如作為問題11和12)。如果用戶選擇了答案選項B,則從該組中選擇問題3以接下來提供給用戶。如果用戶選擇答案選項C,則從該組中選擇問題4-6。如果用戶選擇答案選項D,則從該組中選擇問題7。
應(yīng)考軟件112和應(yīng)用服務(wù)器125一起管理自適應(yīng)性考試項目選擇算法例如圖4中描述的預(yù)測函數(shù)的實現(xiàn)??稍趹?yīng)用服務(wù)器125和應(yīng)考軟件112上實現(xiàn)任何自適應(yīng)性考試算法。它基于對先前的問題的回答,選擇將從服務(wù)中心取得并顯示給用戶的考試問題。應(yīng)用服務(wù)器125可采用某種機(jī)制來向考試站111a...n提供幾個問題。例如,可將兩組問題遞送到考試站——一組用于當(dāng)前項目被正確回答時,另一組用于當(dāng)前項目未被正確回答時。這是用于問題的一個級別的預(yù)測算法。應(yīng)用在需要時可被配置來作進(jìn)一步的預(yù)測并提供多級問題組以改善性能。另外,應(yīng)用服務(wù)器可使用基于答案選項選擇的算法例如圖4描述的預(yù)測函數(shù)。
圖5示出了緩存考試組件的方法,該方法可用于任何測驗?zāi)P停ǖ痪窒抻诰€性考試或自適應(yīng)性考試。在考試開始505之后,服務(wù)中心創(chuàng)建將遞送到考試站以舉行考試的所有組件的緩存列表510。在優(yōu)選實施方案中,該緩存列表將包括任何數(shù)據(jù)、消息和需要來創(chuàng)建并顯示測驗的考試項目以及記錄用戶的回答的其他信息。緩存列表標(biāo)識出將被遞送到考試站的組件,即考試項目。然后將緩存列表遞送到考試站515,并存儲在易失性存儲器中。然后同步考試站以及服務(wù)中心上的緩存列表520。考試站然后預(yù)取可配置的量的數(shù)據(jù)525。預(yù)取的數(shù)據(jù)量是一種緩沖,所述方法需要維護(hù)它以避免數(shù)據(jù)延遲問題。根據(jù)正舉行的測驗的需要和網(wǎng)絡(luò)的帶寬容量,配置作為緩沖而存儲的數(shù)據(jù)量。監(jiān)視并記錄所有與考試站的用戶交互530。如果用戶動作是觸發(fā)動作535,則該方法管理/更新緩存列表540,以維護(hù)預(yù)取步驟中建立的數(shù)據(jù)緩沖?;旧?,管理緩存列表需要從服務(wù)中心取額外的數(shù)據(jù)。但是,為了避免在用戶正與考試站交互時不利地影響考試站的性能,所述取動作將被定時在將使這些問題最小化的時間發(fā)生,例如與回答當(dāng)前考試項目相關(guān)聯(lián)的不活動期間。如果所記錄的用戶交互不是觸發(fā)動作,則系統(tǒng)返回到監(jiān)視用戶交互。
任何時候只要需要就可終結(jié)所述方法,以繼續(xù)有序地向用戶顯示考試項目并記錄對考試項目的回答。例如,如果用戶跳到尚未預(yù)加載到考試站的考試項目,則將終結(jié)項目緩存方法以將該考試項目的組件下載到考試站。下載了該考試項目的組件后,重啟考試緩存方法。
在優(yōu)選實施方案中,可亂序取緩存列表上的組件。在本實施方案中,可亂序地從緩存列表取需要成比例的大量數(shù)據(jù)的考試項目組件。
項目緩存還需要管理可用帶寬,以不僅優(yōu)化項目緩存還優(yōu)化狀態(tài)管理。在優(yōu)選實施方案中,預(yù)留一部分帶寬用于與狀態(tài)管理相關(guān)的數(shù)據(jù),即使在項目緩存的取步驟中也是如此。按照這種方式,本系統(tǒng)可實現(xiàn)狀態(tài)管理和項目緩存二者的優(yōu)點。
圖6示出了根據(jù)本發(fā)明實施方案的示例性計算機(jī)平臺,用于系統(tǒng)100中的計算設(shè)備,例如考試站、服務(wù)器等等。該平臺包括一個或多個處理器,例如處理器602,提供用于執(zhí)行考試軟件的平臺。來自處理器602的命令和數(shù)據(jù)被通過通信總線604而被傳送。平臺600還包括主存儲器606和副存儲器608,主存儲器606例如是隨機(jī)訪問存儲器(RAM),運行時期間可在此運行軟件。副存儲器608例如包括硬盤驅(qū)動器610和/或代表軟盤驅(qū)動器、磁帶驅(qū)動器、光盤驅(qū)動器等等的可拆卸存儲驅(qū)動器612,在此可存儲用于對等隱私模塊的計算機(jī)程序?qū)嵤┓桨傅目截???刹鹦洞鎯︱?qū)動器612以公知的方式從可拆卸存儲單元614讀并且/或者對其寫。用戶可利用鍵盤616、鼠標(biāo)618和顯示器620與平臺600相接口。顯示適配器622與通信總線604和顯示器620相接口,從處理器602接收顯示數(shù)據(jù),轉(zhuǎn)換來自處理器602的顯示數(shù)據(jù),并將顯示數(shù)據(jù)轉(zhuǎn)換為顯示器620的顯示命令。
這里已經(jīng)描述并示出了本發(fā)明的優(yōu)選實施方案及其變體。這里使用的術(shù)語、描述和附圖的提出只是為了進(jìn)行說明,而非限制。本領(lǐng)域的技術(shù)人員將會認(rèn)識到在本發(fā)明由所附權(quán)利要求書及其等同物所定義的精神和范圍內(nèi)可以有許多變體,在權(quán)利要求書中所有術(shù)語應(yīng)被理解為它們最寬的合理的含義,除非有相反的說明。
權(quán)利要求
1.一種用于舉行測驗的系統(tǒng),包括一個或多個考試站,其被配置成接收多個考試項目并向用戶顯示所述考試項目,并且其中所述一個或多個考試站還被配置成記錄狀態(tài)信息,該狀態(tài)信息包括從所述測驗的開始已過去的時間、顯示給所述用戶的考試項目的標(biāo)識以及與所述考試站的用戶交互;可與所述一個或多個考試站通信的第一服務(wù)器計算機(jī)系統(tǒng),其中所述第一服務(wù)器計算機(jī)系統(tǒng)被配置成電子化地發(fā)送所述考試項目到所述一個或多個考試站,并從所述一個或多個考試站接收用戶信息以及對所述考試項目的回答,并且其中所述第一服務(wù)器計算機(jī)系統(tǒng)還被配置成從所述一個或多個考試站接收所述狀態(tài)信息以及電子化地存儲所述狀態(tài)信息;以及可與所述第一服務(wù)器計算機(jī)系統(tǒng)通信的第二服務(wù)器計算機(jī)系統(tǒng),其中所述第二服務(wù)器計算機(jī)系統(tǒng)被配置成從所述第一服務(wù)器計算機(jī)系統(tǒng)接收用戶信息和對所述考試項目的回答,并將考試包遞送給所述第一服務(wù)器計算機(jī)系統(tǒng)。
2.如權(quán)利要求1所述的系統(tǒng),其中所述第一服務(wù)器計算機(jī)系統(tǒng)通過分布式網(wǎng)絡(luò)與所述一個或多個考試站通信。
3.如權(quán)利要求2所述的系統(tǒng),其中所述分布式網(wǎng)絡(luò)是因特網(wǎng)。
4.如權(quán)利要求1所述的系統(tǒng),其中所述一個或多個考試站還被配置成將所述考試項目存儲在易失性存儲器中。
5.如權(quán)利要求1所述的系統(tǒng),其中所述第一服務(wù)器計算機(jī)系統(tǒng)包括一個或多個計算機(jī),其被配置成執(zhí)行web服務(wù)器、小服務(wù)程序引擎和應(yīng)用服務(wù)器的功能;以及一個或多個數(shù)據(jù)存儲設(shè)備。
6.如權(quán)利要求1所述的系統(tǒng),其中所述一個或多個考試站還被配置成周期性地將所述狀態(tài)信息的改變遞送到所述第一服務(wù)器計算機(jī)系統(tǒng)。
7.如權(quán)利要求1所述的系統(tǒng),其中所述一個或多個考試站還被配置成在所述用戶與所述考試站交互時,將所述狀態(tài)信息的改變遞送到所述第一服務(wù)器計算機(jī)系統(tǒng)。
8.如權(quán)利要求1所述的系統(tǒng),其中所述第二服務(wù)器計算機(jī)系統(tǒng)包括一個或多個計算機(jī);一個或多個數(shù)據(jù)存儲設(shè)備;以及包遷移工具,其被配置成在將考試包遞送到所述第一服務(wù)器計算機(jī)系統(tǒng)之前適當(dāng)?shù)馗袷交隹荚嚢?br>
9.如權(quán)利要求8所述的系統(tǒng),其中所述包遷移工具還被配置成管理所述考試包的后續(xù)版本的使用。
10.如權(quán)利要求1所述的系統(tǒng),其中所述第二服務(wù)器計算機(jī)系統(tǒng)還被配置成對所述考試項目的回答進(jìn)行計分。
11.如權(quán)利要求1所述的系統(tǒng),其中所述測驗是線性測驗。
12.如權(quán)利要求1所述的系統(tǒng),其中所述測驗是自適應(yīng)性測驗。
13.一種通過分布式網(wǎng)絡(luò)向用戶舉行測驗的方法,包括同步在服務(wù)器和在可與所述服務(wù)器通信的一個或多個考試站上的初始狀態(tài)對象,其中所述初始狀態(tài)對象包括必須在其中完成所述測驗的時間以及將提供給所述用戶的考試項目;將多個考試項目遞送到一個或多個考試站;向所述用戶顯示所述多個考試項目并記錄所述用戶的回答;以及向所述服務(wù)器遞送已改變的狀態(tài)對象,該對象包括所述測驗已過去的時間、提供給所述用戶的考試項目以及所述用戶對所述考試項目的回答。
14.如權(quán)利要求13所述的方法,其中在所述考試站上發(fā)生觸發(fā)事件時,將所述已改變的狀態(tài)對象遞送到所述服務(wù)器。
15.如權(quán)利要求14所述的方法,其中所述觸發(fā)事件是過去了預(yù)定的時間段。
16.如權(quán)利要求14所述的方法,其中觸發(fā)事件是所述用戶與所述考試站交互。
17.如權(quán)利要求13所述的方法,其中所述測驗是自適應(yīng)性測驗。
18.如權(quán)利要求13所述的方法,其中所述測驗是線性測驗。
19.如權(quán)利要求13所述的方法,其中在所述考試站出現(xiàn)故障時,使用所述初始狀態(tài)對象和存儲在所述服務(wù)器上的所述已改變的狀態(tài)對象來在所述考試站上,在所述故障發(fā)生的測驗點處重新創(chuàng)建所述測驗。
20.一種管理測驗狀態(tài)的方法,該方法包括將要在一個或多個考試站上舉行的測驗的標(biāo)識遞送到服務(wù)計算機(jī);在所述服務(wù)器計算機(jī)上創(chuàng)建初始狀態(tài)對象,其中所述初始狀態(tài)對象定義了所述測驗的初始狀態(tài);將所述初始狀態(tài)對象遞送到所述一個或多個考試站;記錄與所述一個或多個考試站的每次用戶交互;以及將所述初始狀態(tài)對象的改變從所述一個或多個考試站遞送到所述服務(wù)器計算機(jī)。
21.如權(quán)利要求20所述的方法,還包括在所述考試站出現(xiàn)故障后重新開始所述測驗,其中,使用所述初始狀態(tài)對象和存儲在所述服務(wù)器計算機(jī)上的所述初始狀態(tài)對象的改變來在所述考試站上,在所述的考試站的故障發(fā)生的測驗點處重新創(chuàng)建所述測驗。
22.一種將考試項目遞送到考試站以向用戶提供測驗的方法,該方法包括在服務(wù)器計算機(jī)上創(chuàng)建緩存列表,其中所述緩存列表包括將遞送到所述考試站的考試組件的標(biāo)識;將所述緩存列表遞送到所述考試站;將第一組考試組件遞送到所述考試站,其中所述第一組考試組件在所述測驗開始時被遞送;以及在所述考試站上發(fā)生觸發(fā)事件時,將一組或多組后續(xù)考試組件遞送到所述考試站。
23.如權(quán)利要求22所述的方法,其中,執(zhí)行所述遞送所述一組或多組后續(xù)考試組件的步驟來在所述考試站上維護(hù)預(yù)定數(shù)量的未顯示的考試組件。
24.如權(quán)利要求22所述的方法,其中所述考試組件用于創(chuàng)建考試項目。
25.如權(quán)利要求22所述的方法,其中所述觸發(fā)事件是所述用戶與所述考試站的交互。
26.如權(quán)利要求22所述的方法,其中所述測驗是線性測驗。
27.如權(quán)利要求22所述的方法,其中所述測驗是自適應(yīng)性測驗。
全文摘要
公開了用于基于計算機(jī)的考試系統(tǒng)的方法和系統(tǒng),其中該系統(tǒng)包括可通過因特網(wǎng)與考試服務(wù)中心通信以提供考試服務(wù)的考試站(111n)??荚嚪?wù)中心(110)還可與后端數(shù)據(jù)存儲服務(wù)器(133)通信,后端數(shù)據(jù)存儲服務(wù)器向考試服務(wù)中心(110)提供考試包,并存儲對顯示給應(yīng)考者的考試項目的回答。所述系統(tǒng)可操作來執(zhí)行狀態(tài)管理以實現(xiàn)在考試進(jìn)行期間由于計算設(shè)備出現(xiàn)故障而引發(fā)的故障恢復(fù)。該系統(tǒng)還可操作來利用多種緩存技術(shù)以舉行考試。
文檔編號G06F15/16GK1732490SQ200380108147
公開日2006年2月8日 申請日期2003年11月13日 優(yōu)先權(quán)日2002年11月13日
發(fā)明者廷巴蒂亞·達(dá)山, 史蒂夫·亨德肖特, 肯·伯杰 申請人:教育考試服務(wù)中心