版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、在線考試系統(tǒng)的設計隨著英特網(wǎng)的迅速發(fā)展和廣泛普及,數(shù)字化、 網(wǎng)絡化、 多媒體化的教學手段作為新型的教學與考核模式已逐步走進了教育機構1 。它們具有對于教育、教學過程來說極為寶貴的特性。利用計算機技術實現(xiàn)無紙化考試,取代傳統(tǒng)的紙質(zhì)考核方式, 是近年來計算機技術的一2。內(nèi)容提要個非?;钴S的應用領域。在線考試系統(tǒng)的使用已成為近幾年來的大勢所趨本論文首先分析了在線考試系統(tǒng)設計的需求, 在系統(tǒng)需求以及在線考試系統(tǒng)的各個環(huán)節(jié) 的基礎上,對在線考試系統(tǒng)進行了概要設計以及詳細設計,最后利用了程序開發(fā)集成工具 MyEclipse給出了在線考試系統(tǒng)的實現(xiàn)。使用到的軟件架構模式是MVC莫式,使用到的技術工具有 Ja
2、va 程序語言, Oracle 數(shù)據(jù)庫, Tomcat 服務器等。網(wǎng)絡和信息快速發(fā)展的今天,很多國外的教育機構已經(jīng)開設了遠程教育,通過網(wǎng)絡計 算機遠程的方式實現(xiàn)了異地教學授課,其中在線考試系統(tǒng)就是遠程教學中很重要的組成部 分。隨著國內(nèi)遠程教育教學需求的不斷增加, 就要求有更好、 更完善的在線考試系統(tǒng)應用到 遠程教育當中去,這就給軟件設計人員提出了更高的設計要求。傳統(tǒng)的考試方式是老師事先出題 , 學生用筆和紙在指定的時間和地點答題。 教師改卷的 模式也很單一和枯燥 , 考試成本偏高。隨著數(shù)字化、多媒體化教學的發(fā)展,考試的手段和方 式發(fā)生了很大的變化。 英特網(wǎng)的開放性和分布性的特點以及基于計算機的
3、巨大計算能力使得 傳統(tǒng)的考試可以突破時間和空間的限制, 通過網(wǎng)絡來實現(xiàn)。 在線考試系統(tǒng)就是這樣一種突破, 它不僅為老師減輕了評卷, 監(jiān)考之苦, 也為學生提供了快捷輕松的考試環(huán)境。 并且考試時間 也更加靈活, 這樣既可以便于學生發(fā)揮出最佳的水平并通過網(wǎng)上評卷能及時反饋學生的掌握 情況,也方便了老師的閱卷評分工作,可謂是一舉三得3 。本文分析傳統(tǒng)考試手段的各種不足,并且指出了紙質(zhì)考試將會逐步被網(wǎng)絡在線考試的 形式所代替,同時進行了需求分析已經(jīng)設計, 提出在線考試系統(tǒng)的構成、設計原理、使用到 的技術,最后說明了在設計過程中如何解決設計中出現(xiàn)的各種問題以及將來的工作展望。 一、系統(tǒng)需求分析(一)系統(tǒng)角
4、色需求分析在線考試系統(tǒng)是以網(wǎng)絡為基礎, 為教育機構和學生提供考試服務, 同時它能自動判卷并 且提供考試成績作為教學參考的管理系統(tǒng)。本論文設計的在線考試系統(tǒng)可以在高校中使用, 系統(tǒng)主要針對系統(tǒng)管理員、 老師及學生。 本系統(tǒng)能結合高校不同院系、 不同專業(yè)科目等考試 屬性進行管理。1.系統(tǒng)后臺管理員。系統(tǒng)后臺管理員可以對在線考試系統(tǒng)進行維護,一些初始化信息, 如添加課程,教師,學生,班級,為老師分配課程等。維護包括添加、刪除、修改三種基本 的操作。 管理員還兼有老師和學生的功能, 可以查詢有關學生和老師的相關信息是最大權限 的用戶,擁有系統(tǒng)的所有功能的權限。2、老師。老師登錄系統(tǒng)后,可以從自己所教課
5、程中選擇一門進行考試試題錄入,并可 以對自己錄入的試題進行修改和刪除等操作, 但不能修改其他老師關于同一門課程的相關試 題。并可以添加所教課程的學生和查詢自己所教班級學生的考試成績信息。3、考試學生。學生登錄后可以參加考試,選擇一門課程后,系統(tǒng)會自動的抽出一套試答捲選徑試卷一看個人成績 沓一看學主信息 一俸改密耐沓看敎師自息 杳看學生成績 一童節(jié)営理課韻管理 _題庫管理 _3-理一判堂I組堂一僅玫密科 n w Rs S |學生管理 nlls3n 泄圾管理 系部管理題,開始考試后,系統(tǒng)進行倒計時,在規(guī)定的時間內(nèi)考生如果沒有交卷,系統(tǒng)會自動幫他交卷,并在考試結束、自動評卷后,學生能及時的查看到自己
6、的考試成績和答題情況,并可以查詢自己以往的考試成績信息。(二)系統(tǒng)模塊需求分析在線考試系統(tǒng)可分為以下幾個模塊,這些模塊是保證在線考試系統(tǒng)安全、高效運行的基礎,按照角色的需求分為三大基本模塊,每個角色下面分為若干個子模塊。如圖1.1所示。圖1.1在線考試系統(tǒng)需求分析以上對所要開發(fā)的在線考試系統(tǒng)的功能模塊進行劃分,對各個子模塊進行需求分析,說明了各個模塊所要實現(xiàn)的功能。 基于以上的這些需求分析才能更好更完善的進行系統(tǒng)的進一步分析、設計。、系統(tǒng)分析與設計(一)系統(tǒng)總體概述根據(jù)MVC三層架構,系統(tǒng)采用三層結構,如圖2.1系統(tǒng)原理圖所示:圖2.1系統(tǒng)總體結構界面層, 也叫表示層, 是客戶環(huán)境, 負責從客
7、戶端采集信息并將它傳送到服務層進行處理,客戶接收該處理的結果并將其向用戶呈現(xiàn),該層的應用程序以 Web瀏覽器為主,從Web站點上下載應用程序并執(zhí)行,無需進行復雜的安裝及配置 4 。Web 服務器為表示層提供 Web 服務,也可以為表示層和中間件之間的通信提供 HTTP 協(xié)議的支持,本項目所采用的Web服務程序為 Apache的Tomcat,它作為一個 WWW服務器5,起到一個協(xié)調(diào)者的作用,一方面它通過HTTP 協(xié)議與客戶端進行交互,另一方面它還要負責解釋執(zhí)行JSP頁面完成相應的服務。所有的數(shù)據(jù)源構成了 Web 應用的數(shù)據(jù)層。后端的數(shù)據(jù)層負責實際的數(shù)據(jù)存儲和檢索, 它包含系統(tǒng)的數(shù)據(jù)處理邏輯,它的
8、任務是接受客戶對數(shù)據(jù)庫操縱的請求,實現(xiàn)數(shù)據(jù)庫查詢、 修改、更新等功能。(二)設計思路 在線考試系統(tǒng)框架需要滿足實用性、可靠性、安全性等系統(tǒng)性能,需要完成包括用戶登 錄控制,在線考試,試題錄入,評分系統(tǒng),查詢等相關功能在整個框架開發(fā)過程中,采用Struts+JDBC +JSP的J2EE開發(fā)過程中最常用的框架。其中Struts實現(xiàn)從視圖層到業(yè)務邏輯層的跳轉(zhuǎn)控制、表項參數(shù)傳遞等。通過調(diào)用JDBC完成對數(shù)據(jù)庫的連按操作 6。鑒于本次設計的框架并沒有特別關注界面的設計,所以登錄、控制操 作等各個界面僅僅使用 JSP(Java Server Pages) 語言實現(xiàn)基本功能,沒有增加具體的樣式 功能。(三)
9、設計結構 在線考試系統(tǒng)的整體框架設計分為三個層次:視圖層,業(yè)務邏輯層,數(shù)據(jù)接口層。視圖層即用戶所能接觸到的操作界面 。用戶所做的各種輸入以及后臺返回的有信息都空過視圖層 呈現(xiàn)給用戶,由于本次設計并沒有特別關注前臺表現(xiàn),所以對于JSP頁面的美化,格式的控制等并沒有投入太多的經(jīng)歷,而是將重點放在 了業(yè)務邏輯層。業(yè)務邏輯層用來處理前胎傳遞的各種請求以及參數(shù),從而進行相應的方法調(diào) 用、數(shù)據(jù)處理以及返回結果等功能。所有的控制操作都是由業(yè)務邏輯層來完成的, 是的用戶界面與數(shù)據(jù)庫之間的交互分離開來。這樣的設計是符合MVC莫式的思想的 7 。數(shù)據(jù)接口層用來創(chuàng)建、維護基于RBAC權限管理框架所要使用到的數(shù)據(jù)庫表
10、。在本次設計中按照縱向分割的思想,將所有的數(shù)據(jù)交互處理都設計為Dao類,實現(xiàn)各個模塊之間的解耦 ,更加符合軟件開發(fā)的基本原則 。本次設計選用的是 Oracle 數(shù)據(jù)庫, 而在數(shù)據(jù)庫交互時選用 JDBC來完成對數(shù)據(jù)的所有操作。1)全局配置級詳細設計。Java Web項目最重要的是 web.xml文件,配置 Struts 實現(xiàn)Struts.xml 文件。2)登錄處理機以及頁面設計。主要包括登陸頁面,使用JSP語言實現(xiàn)基本功能,后臺由Struts負責完成將用戶名密碼等信息傳遞給業(yè)務邏輯層,有Logi nAction類實現(xiàn)用戶登錄以及鑒權等功能。3)管理員操作設計。主要包括用戶控制界面實現(xiàn)對教師和學生
11、用戶的增加、刪除、修改等。使用 JSP語言實現(xiàn)基本功能。用戶實體MnagerUserBean,以及和數(shù)據(jù)庫進行交互的MnagerUserDao 類。4)教師操作設計。主要色括試題的錄入,查詢,以及登錄環(huán)節(jié),使用JSP語言實現(xiàn)基本功能,角色實體 TeacherBean,以及和數(shù)據(jù)庫進行交互的TeacherDao類。5)學生操作設計,主要色括登錄,查詢,以及考試環(huán)節(jié),使用 JSP語言實現(xiàn)基本功能主要包括權限實體StuBean,以及和數(shù)據(jù)庫交互的StuDao類。Struts作為一款優(yōu)秀的基于MVC的框架,已經(jīng)得到企業(yè)和開發(fā)人員的廣泛認可,成為Java Web開發(fā)的首選框架。Struts在View層和
12、Controller 層分別提供了豐富的UI表示和強大的轉(zhuǎn)發(fā)支持,Model層優(yōu)良的開放兼容性,提高了開發(fā)人員對數(shù)據(jù)模型處理的自由度。下圖是整合框架的示意圖。圖2.2整合框架示意圖(四)設計概念和處理流程圖2.3基本處理流程在管理端子系統(tǒng)中:1)系統(tǒng)維護模塊主要是針對管理員,學生,教師,班級等信息進行修改操作。2)權限管理模塊主要是對各使用者對系統(tǒng)的操作權限進行管理。例如學生只能查看個 人信息,選擇試卷,答卷,查看成績等;教師只能出題,組卷,判卷,查看學生成績等;管 理員可以全面對系統(tǒng)進行操作及數(shù)據(jù)維護等。在教師端子系統(tǒng)中:1)出題模塊主要是由教師根據(jù)題型不同向題庫中輸入題目以及答案,方便組卷
13、。題目 自動存入對應的數(shù)據(jù)庫中。2)組卷模塊中可以由系統(tǒng)隨機組卷,輸入各題型的數(shù)量,分值,系統(tǒng)自動從題庫中隨 機選擇題目構成試卷;也可以由教師自主選擇題目進行出題。3)統(tǒng)計成績模塊中教師可以根據(jù)學生答卷情況對成績進行統(tǒng)計,方便教師對學生答卷 情況有直觀了解,利于教學。4)提交成績模塊由教師將學生綜合成績情況輸入相關管理系統(tǒng)。在學生端子系統(tǒng)中:1)選擇試卷模塊由學生選擇所要進行的考試試卷。2) 答卷模塊顯示學生所選試卷,供學生作答,選擇判斷直接對選項進行選擇,主觀題 填寫在相應的文本框中。3) 交卷模塊會自動根據(jù)題庫中的信息對學生的選擇判斷題進行判卷,減少了教師的工 作量。4) 學生個人信息查詢
14、學生請求查看自己的個人信息,系統(tǒng)根據(jù)學生登錄時的信息, 在學生信息表中找到符合條件的信息反饋給學生。查看學生個人信息。5)學生成績查詢學生請求查看考試成績,系統(tǒng)根據(jù)學生的基本信息,在學生成績表中找到符合條件的信 息反饋給學生。6)學生修改密碼學生請求修改自己的密碼,系統(tǒng)根據(jù)學生修改的信息, 在學生信息表中插入修改的信息并提示學生修改結果。7)學生考試學生想考試系統(tǒng)請求考試,考試系統(tǒng)為學生查找該學生可以進行的考試科目和相對應的 試卷,并把試卷信息反饋給學生。學生進入考試狀態(tài)開始答題,并保存試卷??荚嚱Y束時, 學生應提交試卷。(五)數(shù)據(jù)庫中表的設計根據(jù)在線考試系統(tǒng)中各個模塊的需求,分別設計以下幾張
15、數(shù)據(jù)庫表。并為他們分配字段。管理員表字段名類型說明備注AIDINT管理員ID號主鍵,自增,非空A_NameVARCHAR管理員姓名A_PsdVARCHAR管理員密碼教師表字段名類型說明備注T_NOVARCHAR教工號主鍵,非空T_NameVARCHAR教師姓名T_PsdVARCHAR教師密碼T_MajorVARCHAR教師專業(yè)課程表字段名類型說明備注C_NOVARCHAR】田千口 i=r. 課程號主鍵,非空C_NameVARCHAR課程名教師一課程關系表字段名類型說明備注T_NOVARCHAE教工號外鍵,非空C_NOVARCHAE】田千口 i=r. 課程號外鍵,非空班級表字段名類型說明備注Cl
16、ass_NOVARCHAR班級號主鍵,非空Class_NaVARCHAR班級名meClass_MajVARCHAR所屬專業(yè)or班級課程表字段名類型說明備注Class_NOVARCHAR班級號外鍵,非空C_NOVARCHAR】田千口 i=r. 課程號外鍵,非空試題表字段名類型說明備注Test01_NOINT題號主鍵,遞增,非空Test01_Co nteVARCHAR題干ntTest01_Poi ntVARCHAR知識點Test01_ScoreVARCHAR分值Option_AVARCHAR選項AOption_BVARCHAR選項BOption_CVARCHAR選項COption_DVARCHAR
17、選項DTest01_A nswerVARCHAR答案C_NOVARCHAR所屬課程號說明:為了使系統(tǒng)評卷方便,準確,快速,本系統(tǒng)所包含的試題類型僅為單選,判斷,填空。由于不同題型的試題選項個數(shù)不同,因此,將不同類型的試題放不同的表中。學生表字段名類型說明備注S_NOVARCHAR學號主鍵,非空S_NameVARCHAR學生姓名S_PsdVARCHAR學生密碼S_MajorVARCHAR學生專業(yè)S_ClassVARCHAR學生班級學生成績表字段名類型說明備注S_NOVARCHAR學號外鍵,非空C_NOVARCHAR】田千口 i=r. 課程號外鍵,非空MarkFLOAT成績?nèi)?、系統(tǒng)非功能性概述(一
18、)J2EE 技術J2EE是一套全然不同于傳統(tǒng)應用開發(fā)的技術架構,包含許多組件,主要可簡化且規(guī)范應用系統(tǒng)的開發(fā)與部署,進而提高可移植性、安全與再用價值。J2EE為搭建具有可伸縮性、靈活性、易維護性的商務系統(tǒng)提供了良好的機制:1 高效的開發(fā)。J2EE允許公司把一些通用的、很繁瑣的服務端任務交給中間供應商去完成。這樣開發(fā)人員可以集中精力在如何創(chuàng)建商業(yè)邏輯上,相應地縮短了開發(fā)時間。高級中間件供應商提供以下這些復雜的中間件服務: 狀態(tài)管理服務讓開發(fā)人員寫更少的代碼,不用關心如何管理狀態(tài),這樣能夠更快地完成程序開發(fā)。持續(xù)性服務讓開發(fā)人員不用對數(shù)據(jù)訪問邏輯進行編碼就能編寫應用程序,能生成更輕巧,與數(shù)據(jù)庫無關
19、的應用程序,這種應用程序更易于開發(fā)與維護。分布式共享數(shù)據(jù)對象 CACHE 服務讓開發(fā)人員編制高性能的系統(tǒng),極大提高整體部署的伸縮性9。2.支持異構環(huán)境:J2EE能夠開發(fā)部署在異構環(huán)境中的可移植程序?;贘2EE的應用程序不依賴任何特定操作系統(tǒng)、中間件、硬件。因此設計合理的基于J2EE的程序只需開發(fā)一次就可部署到各種平臺。這在典型的異構企業(yè)計算環(huán)境中是十分關鍵的。J2EE標準乜允許客戶訂購與 J2EE兼容的第三方的現(xiàn)成的組件,把他們部署到異構環(huán)境中,節(jié)省了由自己制訂整個方案所需的費用。(二)Struts 技術Struts最早是作為 Apache Jakarta項目的組成部分,項目的創(chuàng)立者希望通過
20、對該項目的研究,改進和提高JavaServer Pages、Servlet、標簽庫以及面向?qū)ο蟮募夹g水準。Struts這個名字來源于在建筑和舊式飛機中使用的支持金屬架。這個框架之所以叫”Struts ”,是為了提醒我們記住那些支撐我們房屋,建筑, 橋梁,甚至我們踩高蹺時候的基礎支撐。這也 是一個解釋Struts在開發(fā)Web應用程序中所扮演的角色的精彩描述。當建立一個物理建筑 時,建筑工程師使用支柱為建筑的每一層提供支持。同樣,軟件工程師使用Struts為業(yè)務應用的每一層提供支持。它的目的是為了幫助我們減少在運用MVC設計模型來開發(fā) Web應用的時間。我們?nèi)匀恍枰獙W習和應用該架構,不過它將可以完
21、成其中一些繁重的工作。如果想混合使用Servlets和JSP的優(yōu)點來建立可擴展的應用,Struts是一個不錯的選擇。(三)JSP技術JSP技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過 tags 和 scriptlets 訪問存在于服務端的資源的應用邏輯10 。 JSP將網(wǎng)頁邏輯與網(wǎng)頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發(fā)變得迅速和容易。Web服務器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序段,然后將執(zhí)行結果連同 JSP文件中的HTML弋碼一起返回給客戶。 插入的Java程序段可以操作 數(shù)
22、據(jù)庫、重新定向網(wǎng)頁等,以實現(xiàn)建立動態(tài)網(wǎng)頁所需要的功能。JSP與JavaServlet - 樣,是在服務器端執(zhí)行的,通常返回給客戶端的就是一個HTML文本,因此客戶端只要有瀏覽器就能瀏覽。JSP的1.0規(guī)范的最后版本是 1999年9月推出的,12月又推出了 1.1規(guī)范。目 前較新的是JSPI.2規(guī)范,JSP2.0規(guī)范的征求意見稿也己出臺。JSP頁面由HTML代碼和嵌入其中的 Java 弋碼所組成。 服務器在頁面被客戶端請求以后對這些 Java 弋碼進行處理, 然后 將生成的HTMLM面返回給客戶端的瀏覽器。Java Servlet是JSP的技術基礎,而且大型酌Web應用程序的開發(fā)需要 Java
23、Servlet 和JSP配合才能完成。JSP具備了 Java技術的簡單 易用,完全的面向?qū)ο?,具有平臺無關性且安全 11 。(四)MVC架構模式MVC架構模式的產(chǎn)生早期的 Web應用程序?qū)?shù)據(jù)庫查詢語句和像HTML這樣的表示層代碼混在一起, 這樣的后果就是數(shù)據(jù)處理、 程序功能與修按時弋碼部分完全糾結在一起, 是的 程序的靈活性大大降低, 因為一個很小的改動也會牽涉到大量的代碼修改, 增加了程序開發(fā) 和維護的工作量和工作難度。70 年代,MVC(Model-View-Controller)莫式在 Smalltalk 的 GUI設計中被提出。 MVC模式把數(shù)據(jù)處理、 程序輸入輸出控制以及數(shù)據(jù)的展示
24、分離開來, 使他們不必卷入彼此的數(shù)據(jù) 模型和方法中,MVC從根本上強制性的將它們分離開來,使得程序結構清晰和靈活起來13。MVC莫式包括三個部分:模型 (Model)、視圖(View)和控制器(Controller),它們分別對應于內(nèi)部數(shù)據(jù)、數(shù)據(jù)表示和輸入輸出控制部分。MVC莫式的一般結。本系統(tǒng)可用于大多數(shù)課程的期末考試或練習,是一種通用性的考試系統(tǒng)。 本考試系統(tǒng)的開發(fā)目標是實現(xiàn)考試的命題、組卷、考試、評分、打印成績一體化、自動化的在線考試,同 時在性能上要具有伸縮性好、易使用、易維護、易擴展、安全性高等特點。本系統(tǒng)功能考慮較為靈活、完善,界面操作簡單友好,較易掌握。系統(tǒng)提供的功能替代教師的大部分手工勞動, 提高工作效率。自使用以來較好地完成了考試任務,本系
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024高考化學一輪復習第一部分考點42生命中的基礎有機化學物質(zhì)強化訓練含解析
- 2024高考地理一輪復習一等值線專練含解析
- 小學2025年教育教學工作計劃
- 工程竣工財務決算資料清單
- 工程項目安全生產(chǎn)操作規(guī)程
- 二零二五年股份制企業(yè)股東墊資及利潤分成協(xié)議3篇
- 小動物三年級作文300字
- 2024年深圳信息職業(yè)技術學院高職單招職業(yè)適應性測試歷年參考題庫含答案解析
- 芯軸粗車一序作業(yè)指導書.文檔
- 第3章電阻式傳感器講解學習
- 2025年月度工作日歷含農(nóng)歷節(jié)假日電子表格版
- 山西省呂梁市2023-2024學年高二上學期期末考試數(shù)學試題(解析版)
- 2024年市場運營部職責樣本(3篇)
- 2024體育活動區(qū)鋪沙子(合同)協(xié)議
- 《中華人民共和國機動車駕駛?cè)丝颇恳豢荚囶}庫》
- 2024年VB程序設計:從入門到精通
- 2024年故宮文化展覽計劃:課件創(chuàng)意與呈現(xiàn)
- 公共交通乘客投訴管理制度
- 不銹鋼伸縮縫安裝施工合同
- 水土保持監(jiān)理總結報告
- Android移動開發(fā)基礎案例教程(第2版)完整全套教學課件
評論
0/150
提交評論