王浩
摘要:在Java技術中B/S(Browser/Server,瀏覽器/服務器結構)軟件體系結構以其先進和便利的優勢,已廣泛應用于各個領域。本文簡要介紹了B/S軟件體系結構、JSP技術、MVC架構和相關背景知識,按照面向對象的軟件開發的順序,對學校在線技能評測系統進行需求分析、系統設計、系統實現等方面進行了簡要分析和說明。
關鍵詞:在線技能測評 多媒體 B/S結構 JSP MVC模式
中圖分類號:TP317.1 文獻標識碼:A 文章編號:1007-9416(2016)12-0171-02
隨著計算機網絡技術的迅速發展和高校計算機網絡建設的日益完善,網絡在線技能評測已成為發展趨勢,在線評測系統的實現不但能減輕學校及教師工作量,也使得考試更加公平公正。本文闡述采用基于Java技術的B/S軟件體系結構在線技能評測設計與實現。
1 Java相關技術介紹及背景知識
1.1 Browser/Server三層體系結構
B/S(Browser/Server)結構即瀏覽器和服務器結構,在這種結構下,用戶工作界面是通過WWW瀏覽器來實現,它將極少部分事務邏輯放在前端來實現,把主要事務邏輯還是在服務器端來實現,形成所謂三層(3-tier)結構:即用戶界面層、業務邏輯層、數據服務層。這種結構具有很多優越性:減輕了客戶端機器的負擔,使得系統維護升級更加方便,系統的擴展性能增強;如需增加服務,只要在中間層添加代碼,用戶界面完全可以通過WWW瀏覽器來實現。由此,這種結構成為當今應用軟件的首選體系結構。
1.2 JSP技術概覽
JavaServer Pages(JSP)技術是一種動態網頁開發技術,使用它來創建和顯示動態生成內容的Web頁面,簡單而快速。JSP技術的工作原理主要是JSP頁面使用XML標簽和scriptlets(一種使用Java語言編寫的腳本代碼),封裝了生成頁面內容的邏輯。它將各種格式的標簽(HTML或者XML)直接傳遞回響應頁面。通過這種方式,JSP頁面實現了頁面邏輯與其設計和顯示的分離。
JSP技術是Java系列技術的一部分。JSP頁面被編譯成 servlets,并可能調用JavaBeans組件(beans)或Enterprise JavaBeans組件(企業beans),以便在服務器端處理。因此,JSP技術在構建可升級的基于Web的應用程序時發揮了重要作用。
2 系統需求分析
2.1 系統的功能需求
在線技能測評系統著眼于學校信息管理工作的需求,針對教學過程中存在的考試評卷工作繁重易出錯,學生查詢試卷難等問題,要求能夠實現教師編制試題、組卷、組織考試、系統自動評卷,以及學生注冊、參加考試等考試工作的基本功能。
用戶嘗試進入系統時應進行身份驗證。只有注冊用戶(包括學生、教師)才能夠登錄系統,得到系統服務。不同角色的用戶成功登錄系統后,可以根據自身需要選擇相應的服務內容。系統的服務對象有三種:學生用戶、教師用戶、系統管理員。其中:
學生,其服務的主要內容包括:注冊登錄,修改個人資料,在線技能自測(題目來源于系統自帶的試題庫),參加教師招考(題目來源于教師自建的試題庫),查詢考試結果和歷史成績。
教師,其服務的主要內容有:注冊登錄、修改個人資料、自建題庫管理、試卷管理(手工組卷,自動組卷)、考試管理(考試計劃管理,在線考場管理,查看考試結果,查閱考生信息)。
系統管理員,其服務的主要內容有:系統監控,當前系統注冊用戶統計、系統題庫統計、考試情況統計等。
2.2 多媒體試題部分的需求
系統的試題類型包括是非題、選擇題(單選和多選)、填空題、問答題。每種題型的題干或選項中都是文字內容,沒有圖片信息和流媒體信息。作為新增需求,多媒體試題要求展現給考生的試題內容能夠“圖文并茂”,在文字內容的基礎上,能夠在題干或選項中呈現圖片或者播放流媒體。這樣一來,試題的考察方式會更靈活,角度更多維化,同時也激發考生的參與熱情。
如此便要求教師用戶在自建題庫的過程中,能夠編輯多媒體試題的內容,在各種類型的題目中,能夠輕松自如的添加圖片和流媒體信息。
3 系統總體設計
3.1 系統運行環境架構設計
通過功能需求分析,我們知道,利用JSP技術開發的在線技能測評系統,應具有用戶注冊、多用戶同時在線考試,動態隨機生成試卷、考試時間控制、自動判卷、題庫維護、試卷查詢管理等功能。對于多媒體試題的相關需求,系統需要具備多媒體文件上傳,流媒體試題保存與播放等功能。綜合考慮,按照“三層結構”(用戶層、應用層和數據層)來實施架構。
3.2 系統軟件結構設計
按照MVC架構的軟件設計思想,由Servlet和部分JSP作為Controller,負責接收頁面的請求,并根據請求分派給適合的JSP網頁;由JavaBean作為Model,負責業務邏輯部分;部分JSP作為View,仍負責將所要顯示的內容送到客戶端。
3.3 系統功能模塊設計
3.3.1 學生用戶功能模塊設計
按照需求分析,學生用戶的功能模塊設計如圖1所示。
3.3.2 教師用戶功能模塊設計
按照需求分析,教師用戶的功能模塊設計如圖2所示。
3.4 數據庫設計
3.4.1 數據庫(Database)設計
根據在線技能測評系統的需求分析結果和系統功能概要設計,考慮到系統需要利用外部存儲進行持久化存取的部分信息內容,我們可以將系統中所涉及到的數據模型按照功能分為如下幾類,每一類數據模型在物理設計時都認為是一個關系數據庫。
①基本信息庫:存放與考試相關的公共信息。如考試科目分類信息,測試的方向信息等。
②教師信息庫:存放教師的注冊資料,自動組卷規則,考試計劃、在線考試情況等。
③學生信息庫:存放學生的注冊資料,參加考試的歷史成績,個性化定制科目等
④試題庫:存放系統題庫中的題目[和教師自建的試題,按照題型的不同對表進行分類,是非題表、選擇題表、填空題表、問答題表等。
⑤系統管理信息庫:存放系統管理員的帳號信息以及系統配置運行的參數。
3.4.2 表(Table)結構設計
在線技能測評系統的需要用到的數據庫和表相當多,本文限于篇幅,只對該系統中的核心數據——試題內容信息庫的表結構設計做一詳細說明。其中,各種題型具有以下數據需求:
是非題、填空題、問答題:題干中可以包含0~1張圖片,0~1個流媒體。
選擇題(分為單選和多選):題干中可以包含0~1張圖片,0~1個流媒體。
選項最大數量為8個,且內容類型必須統一,全為文本、圖片或流媒體。
4 結語
總之,基于JSP技術的在線技能評測系統開發,實現了學校對考試評測功能需求,不過在詳細設計中還要進行類的設計和Web層的設計,限于篇幅原因不再贅述。
參考文獻
[1]劉志成.《Java程序設計方法與實例》[J].人民郵電出版社,2010-08.
[2]雷林海.基于Java在線考試系統的功能設計[J].太原師范學院學報(自然科學版),2009(01).
[3]徐廣龍,殷文雄.在線考試系統的設計與實現[J].電腦編程技巧與維護,2014(10).
[4]鄧勤.高職院校學生技能評測系統的設計與實現[D].電子科技大學,2015.