張婧
摘要:將教育考試系統(tǒng)與先進的網(wǎng)絡技術相結合,采用B/S模式的多層體系結構,將Struts、Spring及Hibernate有機融合,設計開發(fā)基于J2EE多層整合框架的在線考試系統(tǒng)。經(jīng)驗證,本系統(tǒng)能夠實現(xiàn)考試的規(guī)范化、無紙化,體現(xiàn)考試的公平性,節(jié)約資源,提高考試的效率。
關鍵詞:J2EE;整合框架;遠程考試系統(tǒng)
中圖分類號:TP311.52文獻標識碼:A文章編號:1007-9599 (2013) 06-0000-03
1引言
傳統(tǒng)的考試通常都是由人工方式組織進行,采用教師統(tǒng)一命題的方式,需要在固定的時間組織學生利用紙質試卷筆試完成的方式進行。即使在目前的高等學校課程考試中,這種工作效率很低的考試方式仍在普遍的使用[1]。在其發(fā)揮作用的同時,也有很多不容忽視的弊端。
互聯(lián)網(wǎng)的迅速發(fā)展帶動了遠程教育應用的發(fā)展,遠程教育不僅從手段和形式上改變了傳統(tǒng)教學模式,更從觀念、過程、方法以及師生角色等諸多深層面賦予教學以新的含義[2],它能夠提供個性化的教學環(huán)境,多元化的教學資源,實現(xiàn)交互式教學和群體化協(xié)作教學,并且能夠提供具有創(chuàng)造性且易修改的教學內(nèi)容。遠程考試系統(tǒng)是現(xiàn)代遠程教育過程中的一個重要實踐,它擔負著因材施教、選拔人才、診斷補救、評價教學、就業(yè)指導等眾多功能,已經(jīng)漸漸成為教育測量學中的一個重要內(nèi)容。開發(fā)和完善遠程考試系統(tǒng)對于減輕教師工作負擔,推動教育教學網(wǎng)絡化、社會化,教育資源建設和共享,提高教育教學效果和質量,都有著深遠的實踐意義。
Struts、Spring及Hibernate是基于J2EE的開源應用框架[3],本文在充分分析了三種構架的特點及優(yōu)勢后,采用B/S模式的多層體系結構設計開發(fā)基于Struts、Spring及Hibernate融合框架的在線考試系統(tǒng),從而實現(xiàn)了考試中的規(guī)范化、無紙化,節(jié)約資源,提高考試的效率。
2遠程在線考試系統(tǒng)
各種課程考試一直是學校非常重要的一個教學組成部分,考試作為一種重要的教學檢查手段,主要是為了考察教師的教學質量和學生的學習效果。相比傳統(tǒng)的考試方式方法,本課題所實現(xiàn)的遠程在線考試系統(tǒng)是建立在國際互聯(lián)網(wǎng)上的應用系統(tǒng),能夠合理地整合考試資源、提高考核效率和科學性,同時具有如下意義[4]:
2.1節(jié)約教育資源,減少人力、物力、財力的消耗。將教育考試與基于Web的計算機軟件系統(tǒng)有機結合起來,可以實現(xiàn)在線組題、考生考試、在線閱讀、自動評分、實時統(tǒng)計等功能,優(yōu)化了傳統(tǒng)考試的運行模式,可以節(jié)約大量的出題時間,閱卷時間,成績統(tǒng)計分析時間,減輕老師的負擔。
2.2可以加強考試過程中的保密性,避免了人為因素對評判的影響,使考試公正,客觀,成績準確無誤。
2.3考生不受時間地點的限制,可以靈活,方便的安排學習和考試時間。
2.4公正地評價教學水平,推動教學方法的改革。本系統(tǒng)以其準確、公正、快速、簡捷等特點,有效實現(xiàn)了考務管理、考試、試題生成及評閱自動化考試,真正實現(xiàn)了教考分離,教學資源共享,降低考試成本,解決繁重的考務工作等,推動了教學改革。
2.5反饋能力強??荚囀强己撕驮u估教學和學習的一種手段。通過對“教”與“學”的雙邊檢測,能發(fā)現(xiàn)教學中存在的問題,進而改進課程教學方法和手段,不斷提高教學質量。教育界把考試對教學和學習的影響稱為反撥效應。科學的、合理的考試會對教學起到積極的反撥作用,反之則會帶來負面影響。因此,系統(tǒng)可以通過網(wǎng)上考試提高正面反撥效應,達到了對學生知識、能力、素質的綜合測試,所以能給學生一個客觀的評價,對教學起到積極的促進作用。
3基于J2EE的多層整合架構
3.1Struts架構。Struts[5]是實現(xiàn)Model-View-Controller (MVC)模式的應用最廣的通用框架,對Model、view和Controller都提供了對應的實現(xiàn)組件。其工作原理見圖1。
圖1Struts工作原理
Struts框架有比較完備的標簽庫,基本可以滿足開發(fā)視圖所需要的JSP標簽的需要,且標簽庫提供通用功能,但JSP實現(xiàn)視圖組件只能借助一些基本的包含和轉發(fā)功能,限制了視圖的靈活性,且struts action組件和web容器強耦合,無法對ACTION進行輕量級單元測試,從測試驅動的角度來看,不利于系統(tǒng)的開發(fā)。
3.2Spring架構。Spring是一個以依賴注入原則和面向方面編程思想為基礎的輕量級框架。既是一個AOP框架,也是一個IoC容器。AOP主要是用來創(chuàng)建CrosscuttingConcerns(橫切關注點),將其插入代碼中,可使代碼具有良好的可重用性。IoC容器允許在需要生成對象的地方創(chuàng)建一個應用上下文,然后裝飾這些對象傳遞給它們的合作對象,可很容易地替換業(yè)務對象,實現(xiàn)對EJB技術的替代和更好的組件重用性。
3.3Hibernate架構。對于MVC模式中的Model,Struts可以使用標準數(shù)據(jù)庫訪問技術,也可以使用第三方工具Hibernate。Hibernate是用來完成數(shù)據(jù)的持久化操作的優(yōu)秀組件之一。它在數(shù)據(jù)庫外包裝了一層面向對象的外殼,可為系統(tǒng)自動生成SQL語句操作數(shù)據(jù)庫,把系統(tǒng)的開發(fā)從數(shù)據(jù)庫編程中解放出來。其體系結構如圖2:
圖2Hibernate體系結構圖
3.4基于Struts、Spring和Hibernate的整合架構。本文根據(jù)J2EE的分層結構,結合Web應用的特點,整合Struts、Spring和Hibernate這三種框架[6],設計出一個適合在線考試系統(tǒng)應用的J2EE通用架構。實現(xiàn)了各層次之間的松散耦合,具有跨平臺、可移植、良好的擴展性和可維護性等特點。其中表示層用Struts框架描述,業(yè)務層用Spring的IoC容器協(xié)助完成,持久層用Hibernate框架的對象關系映射來完成與數(shù)據(jù)庫的交互。表示層與業(yè)務層通過域模型層的VO來進行數(shù)據(jù)傳遞,業(yè)務層和持久層通過域模型層的VO來描述對象之間的關系。集成框架技術的模型見圖3。
圖3集成框架技術的應用模型
4系統(tǒng)設計及實現(xiàn)
4.1需求分析。通過對傳統(tǒng)考試過程中組卷、學生考試和教師閱卷等一系列環(huán)節(jié)進行分析,本系統(tǒng)從實用性、合理性、可靠性等方面作了如下要求:
(1)用戶操作簡易性?;贘2EE平臺開發(fā),所有用戶操作遵循J2EE軟件通則。客戶端不用加裝任何軟件,只需通過瀏覽器即可使用本系統(tǒng)。
(2)獨特的用戶定制機制。采用積木搭建概念,可由用戶自定義科目,考試或學習內(nèi)容,考試題庫,考試試卷,真正意義上實現(xiàn)“所見即所得”系統(tǒng)設計理念。整個系統(tǒng)支持在線考試、在線競賽功能,可根據(jù)機構內(nèi)實際情況及外部環(huán)境變化,隨時自行修改完善。
(3)考試試卷定制。通過科目、知識點、難易程度和題型任意相結合的組卷模式,定義不同的抽題規(guī)則或所占百分比等,根據(jù)當時考試情況可自由人工組卷或隨機組卷。從而實現(xiàn)所有考生考試內(nèi)容完全一樣、所有考生考試內(nèi)容一樣但順序不一樣、所有考生考試內(nèi)容完全不一樣等三種方式。充分體現(xiàn)考試學習系統(tǒng)的智能化。支持A3傳統(tǒng)紙張試卷打印。
(4)考試安全保護機制。整個系統(tǒng)除多種試卷組合機制外,還支持斷電、死機等處理方案,系統(tǒng)還提供在線檢查試卷,在線監(jiān)考等多種功能。
(5)管理角色定制。整個系統(tǒng)分考生、老師、管理員三種角色級別。考生可以在線報名,在線競賽、在線正規(guī)或模擬考試等。老師可以在線編輯學習內(nèi)容,編輯考試內(nèi)容,進行科目管理,試卷管理,監(jiān)考等操作。管理員可以實現(xiàn)整個系統(tǒng)的設置,數(shù)據(jù)分析,數(shù)據(jù)歸檔等等操作。