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