【《基于Android的在線考試APP設(shè)計》18000字】_第1頁
【《基于Android的在線考試APP設(shè)計》18000字】_第2頁
【《基于Android的在線考試APP設(shè)計》18000字】_第3頁
【《基于Android的在線考試APP設(shè)計》18000字】_第4頁
【《基于Android的在線考試APP設(shè)計》18000字】_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

摘要傳統(tǒng)考試的組織方式往往需要一名老師專門負(fù)責(zé)組織編寫考試試卷、然后到打印室打印考生試卷、教務(wù)處負(fù)責(zé)考生考試時間安排、考場安排、監(jiān)考安排、考完試后監(jiān)考老師收取所有考生所考試卷、然后組織專業(yè)老師進(jìn)行集中閱卷并通過考試成績的數(shù)據(jù)分析此次考試的情況。這顯然是一個漫長而復(fù)雜傳統(tǒng)教育考試模式,并且,目前疫情尚未完全結(jié)束,跨地域的線下考試很難進(jìn)行,傳統(tǒng)的線下筆試考試的模式已經(jīng)越來越不適應(yīng)現(xiàn)代教育教學(xué)考試的需要了,因此,對線上考試需求也在逐步提高。筆者針對目前的現(xiàn)實設(shè)計和實現(xiàn)了基于JavaEE和Android客戶端的在線考試系統(tǒng)APP,該在線考試系統(tǒng)app架構(gòu)是由一個通過瀏覽器訪問服務(wù)器的B/S架構(gòu)的后臺管理系統(tǒng)和一個通過移動設(shè)備訪問服務(wù)器的C/S架構(gòu)的Android客戶端組合而成的[1]。后臺管理系統(tǒng)采用JavaEE最新整合框架(SSM)(SpringMVC、Spring、Mybatis),該框架能偶使得系統(tǒng)的控制層、系統(tǒng)的業(yè)務(wù)層、系統(tǒng)的展示層以及數(shù)據(jù)持久層四層結(jié)構(gòu)得到很好的分離,這樣以來,一方面能降低該在線考試系統(tǒng)各層之間的耦合度,另一方面還能提高該系統(tǒng)的可維護(hù)性與可擴(kuò)展性;本次開發(fā)在移動客戶端使用JAVA語言和AndroidSDK開發(fā),服務(wù)器軟件使用Tomcat,并使用MySQL數(shù)據(jù)庫服務(wù)器進(jìn)行數(shù)據(jù)存儲。本論文首先介紹該系統(tǒng)的開發(fā)背景及意義,詳細(xì)分析了國內(nèi)外同類系統(tǒng)的現(xiàn)狀情況。接著介紹了開發(fā)該系統(tǒng)需要的研發(fā)技術(shù)及環(huán)境配置,然后根據(jù)在網(wǎng)上做的調(diào)研對該在線考試系統(tǒng)app做出了需求分析,并做了相應(yīng)的可行性研究,主要包括經(jīng)濟(jì)可行性、技術(shù)可行性、環(huán)境可行性;然后又在需求分析的基礎(chǔ)上對該在線考試系統(tǒng)APP先是進(jìn)行了總體設(shè)計,主要包括:詳細(xì)討論了系統(tǒng)數(shù)據(jù)流的設(shè)計情況、還有數(shù)據(jù)庫設(shè)計(包括E-R圖、數(shù)據(jù)流圖等),并分別對客戶端及后臺管理系統(tǒng)各功能做了詳細(xì)的分析設(shè)計,然后又根據(jù)系統(tǒng)設(shè)計的情況逐步實現(xiàn)它,接著對該系統(tǒng)各功能做了測試,最后完成了整個在線考試系統(tǒng)[2]。關(guān)鍵詞:在線考試;Android;C/S架構(gòu);JavaEE;SSM第1章緒論1.1研究背景和意義1.1.1研究背景去年疫情期間,由于全國高校都開不了學(xué),學(xué)生到不了校,全國高校都采用線上的方式上課教學(xué)、線上的方式考試,所以想以此為課題,開發(fā)一款專門用于線上考試的app。教師登錄后臺管理系統(tǒng)可以創(chuàng)建考試題庫,學(xué)生登錄客戶端系統(tǒng)會根據(jù)相應(yīng)的算法,從題庫里隨機(jī)抽題自動組合成一張具有選擇題、填空題、判斷題、簡答題的完整試卷,然后進(jìn)行答題。該系統(tǒng)可以保證同學(xué)之間的試卷都不一樣,這樣技能為大家提供方便提高效率,也能保證考試的公平、公正性[3]。1.1.2研究意義當(dāng)今時代是互聯(lián)網(wǎng)時代,傳統(tǒng)的線下筆試已經(jīng)不能適應(yīng)所有的考試,比如在疫情嚴(yán)重的地區(qū),出行都不方便也不安全,如果要參加跨地域的線下考試,可能需要隔離做檢測,這樣一來,既浪費(fèi)了時間精力,也可能會耽誤了考試。由此,在線考試的優(yōu)勢就能體現(xiàn)出來了:首先,考生可以不用到現(xiàn)場只要有互聯(lián)網(wǎng)和移動設(shè)備就能登錄到考試系統(tǒng)中參加考試,節(jié)省了考生行程的費(fèi)用的同時,也讓考生不用為跨地域參加考試而浪費(fèi)不必要的時間精力。其次,考試組織方不用印刷紙質(zhì)試卷,節(jié)省了組織考試的費(fèi)用,計算機(jī)判題也能減輕教師判題的負(fù)擔(dān),節(jié)省了考試方的人力、物力和財力;最后,在互聯(lián)網(wǎng)時代,在線考試的方式充分發(fā)揮了計算機(jī)在信息處理方面能力強(qiáng)大的優(yōu)勢,比如教師登錄后臺可以建立海量的考試題庫供未來的考試使用,考生在客戶端使用用戶名和密碼登錄系統(tǒng),試卷由系統(tǒng)的設(shè)置自動從題庫中隨機(jī)抽題組合而成,兩兩考生之間試卷完全相同的概率幾乎為0,考試結(jié)束后,客觀題可由計算機(jī)自動判卷,這樣能提高教師閱卷的效率,并且由計算機(jī)對試卷結(jié)果進(jìn)行統(tǒng)計分析并生成成績報表,提供給老師查看考試情況。所以,設(shè)計并開發(fā)一個能實現(xiàn)網(wǎng)絡(luò)化、跨地域的在線考試系統(tǒng)app,對現(xiàn)代教育的信息化建設(shè)有著深遠(yuǎn)的使用價值和現(xiàn)實意義。1.2研究狀況1.2.1國外研究現(xiàn)狀網(wǎng)絡(luò)考試模式是起源于現(xiàn)代美國,目前在國外也已經(jīng)得到了普遍的廣泛應(yīng)用。西方國家還有很多專門的企業(yè)招聘人員考試考核機(jī)制,使用各種計算機(jī)面試輔助招聘測試系統(tǒng)來準(zhǔn)確評估所有能夠參與面試考核的應(yīng)聘人員。著名的國際人力資源管理考試專業(yè)機(jī)構(gòu)主要包括有一家美國思而文學(xué)習(xí)系統(tǒng)股份有限公司,它在美國國內(nèi)長期致力于為教育事業(yè)和大學(xué)電子信息行業(yè),其中還包括計算機(jī)技能考試的專業(yè)服務(wù),這家公司遍布在全球六大洲,其中包括了一百四十多個國家和地區(qū),在這些地區(qū)一共開設(shè)了二千二百多個考試服務(wù)中心,該公司用二十五種語言提供了大約一百個不同種類型的一千多場考試,世界上最大的綜合考試管理機(jī)構(gòu)之一美國高等教育綜合考試教學(xué)服務(wù)管理中心于1993年起就已經(jīng)正式開始對GRE(碩士研究生入學(xué)基本考試)實行了自動適應(yīng)綜合考試的模式,并且也逐漸逐步減少了以考試紙質(zhì)卷筆試類型的考試。2000起,TOEFL考試管理模型在中國正式推出,并且全部采取了自適應(yīng)分級考核的模式進(jìn)行。1.2.2國內(nèi)研究現(xiàn)狀我國在網(wǎng)絡(luò)考試這一領(lǐng)域相對比較落后,目前主要還是計算機(jī)專業(yè)類這一小部分的考試使用了計算機(jī)作為輔助考試的工具。例如中學(xué)時期的計算機(jī)信息技術(shù)會考考試,大學(xué)時間的計算機(jī)等級水平考試等等。目前國內(nèi)大學(xué)英語四六級都采用先在數(shù)據(jù)庫中出題,然后計算機(jī)根據(jù)相應(yīng)的算法隨機(jī)從數(shù)據(jù)庫中抽題組卷進(jìn)行難度的測試[4],測試成功難度指數(shù)正常后才正式當(dāng)考試真題出考題。此外,國家目前正在在中小學(xué)教育中建立相應(yīng)的試題數(shù)據(jù)庫,并在不斷地更新和完善題庫的內(nèi)容。Internet的誕生后,人們將注意力集中到了一種基于web的互聯(lián)網(wǎng)網(wǎng)絡(luò)在線考試系統(tǒng)上。相對來說現(xiàn)階段國外領(lǐng)先一步,國外目前已有許多成功在線考試案例,如GRE、TOEFL考試等等。對于國內(nèi)而言,北京學(xué)習(xí)通教育科技有限公司開發(fā)的超星學(xué)習(xí)通,目前幾乎全國高校都在使用該app,該軟件主要功能是一款專門針對移動智能手機(jī)、平板電腦等各種新型移動網(wǎng)絡(luò)終端的新型商業(yè)移動網(wǎng)絡(luò)學(xué)習(xí)應(yīng)用綜合性強(qiáng)和專業(yè)化的學(xué)習(xí)平臺,用戶隨時都已經(jīng)可以在超星移動學(xué)習(xí)通上隨時進(jìn)行自助和本地查詢完成對學(xué)校圖書館的電子藏品查詢借閱信息查詢,學(xué)習(xí)本地的高等學(xué)校網(wǎng)絡(luò)課程和隨時參加學(xué)校網(wǎng)絡(luò)教學(xué)測試、考核,為廣大高校用戶隨時提供了方便快捷的新型移動網(wǎng)絡(luò)學(xué)習(xí)應(yīng)用服務(wù)。1.3本文的組織結(jié)構(gòu)本文從實際需求出發(fā),著重于開發(fā)在線考試系統(tǒng)APP。本文首先介紹與APP開發(fā)有關(guān)的基礎(chǔ)技術(shù),開發(fā)環(huán)境。然后根據(jù)在網(wǎng)上做的調(diào)研對該在線考試系統(tǒng)app做出了需求分析,并做了相應(yīng)的可行性研究,主要包括經(jīng)濟(jì)可行性、技術(shù)可行性、環(huán)境可行性;然后又在需求分析的基礎(chǔ)上對該在線考試系統(tǒng)APP先是進(jìn)行了總體設(shè)計,主要包括:詳細(xì)討論了系統(tǒng)數(shù)據(jù)流的設(shè)計情況、還有數(shù)據(jù)庫設(shè)計(包括E-R圖、數(shù)據(jù)流圖等),然后根據(jù)總體設(shè)計對各功能進(jìn)行編碼實現(xiàn),接著對系統(tǒng)做綜合測試,最后做出了總結(jié)。論文共分為7章,總體結(jié)構(gòu)安排如下:第1章主要介紹了該系統(tǒng)的的研究背景及研究意義,并詳細(xì)分析了當(dāng)前國內(nèi)外在線考試系統(tǒng)APP的發(fā)展現(xiàn)狀。第2章主要闡述了本在線考試系統(tǒng)APP所涉及到的主要技術(shù)知識點(diǎn),包括對Android做了簡單介紹,分析了Android軟件的結(jié)構(gòu)層次,然后分別介紹了客戶端和后臺管理系統(tǒng)的開發(fā)環(huán)境,以及Tomcat服務(wù)器、MySQL數(shù)據(jù)庫服務(wù)器的相關(guān)介紹。第3章可行性研究與需求分析,給出了總體方案,對該項目進(jìn)行了需求分析,分別列出了該系統(tǒng)客戶端學(xué)生用戶需求,后臺管理系統(tǒng)教師和管理員需求,并做了可行性分析,包括經(jīng)濟(jì)可行性、技術(shù)可行性、環(huán)境可行性;還介紹了系統(tǒng)開發(fā)的原則。第4章首先給出了系統(tǒng)設(shè)計所要遵循的原則,接著對系統(tǒng)總體架構(gòu)進(jìn)行了分析與設(shè)計,包括Android手機(jī)客戶端與服務(wù)器采用C/S架構(gòu),后臺管理系統(tǒng)與服務(wù)器采用B/S架構(gòu);然后給出了系統(tǒng)數(shù)據(jù)流設(shè)計圖分析了該系統(tǒng)的數(shù)據(jù)流設(shè)計;詳細(xì)設(shè)計包括后臺管理系統(tǒng)和客戶端各功能各模塊的分析與設(shè)計;最后是設(shè)計數(shù)據(jù)庫,給出了全局E-R圖,還有各數(shù)據(jù)表的詳細(xì)設(shè)計。第5章首先介紹了開發(fā)該系統(tǒng)所需要開發(fā)環(huán)境和開發(fā)工具,包括客戶端、后臺管理系統(tǒng)的開發(fā)環(huán)境和開發(fā)語言;緊接著對該系統(tǒng)總體實現(xiàn)做出了概述總結(jié),給出了系統(tǒng)總體實現(xiàn)圖;然后介紹了后臺管理系統(tǒng)各功能的實現(xiàn),包括用戶注冊登錄、用戶權(quán)限控制管理、考試管理等等;客戶端各功能實現(xiàn)包括主頁查看個人信息、課程及考試查詢、在線考試功能等等。第6章首先介紹了系統(tǒng)測試的目的與目標(biāo),給出了AndroidAPP基本測試的流程圖,然后分別對客戶端和后臺管理系統(tǒng)各功能做實驗測試,并分析該APP的功能,最后給出測試結(jié)論。第7章首先總結(jié)了本文的主要做的工作及存在不足的之處、然后又針對本在線考試系統(tǒng)APP的不足之處提出了改進(jìn)方案并做出了展望。第2章相關(guān)技術(shù)知識介紹2.1Android介紹2.1.1Android簡介Android是一個移動設(shè)備的平臺,它的軟件結(jié)構(gòu)層次包括以下四個方面:一是操作系統(tǒng)(OS),Android使用Linux2.6作為它的操作系統(tǒng);第二是中間件(MiddleWare),中間件由各種庫和Android運(yùn)行環(huán)境組成,第三是應(yīng)用程序框架(ApplicationFramework),它為應(yīng)用程序?qū)拥拈_發(fā)者提供APIs,第四是應(yīng)用程序(Application),其主要是用戶界面(UserInterface)方面的,通常以JAVA程序語言編寫的,Android軟件層次結(jié)構(gòu)圖如圖2.1所示。圖2.1Android軟件層次結(jié)構(gòu)2.2開發(fā)環(huán)境2.2.1客戶端開發(fā)環(huán)境AndroidSDK開發(fā)包sdk是softwaredevelopmentkit的英文縮寫,它也是一個適用于各種應(yīng)用程序和軟件開發(fā)的工具集。而androidsdk則是指google專門針對android開發(fā)人員量身定制的一個軟件開發(fā)工具包。筆者所研究設(shè)計的主要是基于android軟件應(yīng)用系統(tǒng)層次上軟件程序的設(shè)計開發(fā),基于adsdk的開發(fā)android應(yīng)用軟件開發(fā)課程只能只是局限于自己一人來設(shè)計開發(fā)一個android應(yīng)用系統(tǒng)的軟件應(yīng)用程序,其實也只能就是自己一人來設(shè)計開發(fā)一個android應(yīng)用系統(tǒng)中最上層的軟件應(yīng)用程序。主要功能是通過借助微軟官方一些簡單的設(shè)計方法與對capil的接口適配來對其進(jìn)行一些相關(guān)的數(shù)據(jù)邏輯結(jié)構(gòu)設(shè)計,并且通過一些接口適配器把整個數(shù)據(jù)庫的表現(xiàn)顯示出來后并放置連接到由ccxml腳本編程語言所自行編寫的一個布局式數(shù)據(jù)文件中。android每個新的版本中也都會同時附帶一個與編號api相同或?qū)?yīng)的編號api[9],目前最新的一個版本編號為api29(Android10.0Nougat)。6.0以上的系統(tǒng)權(quán)限等級管理沒有重大的功能改變,權(quán)限等級管理功能不會在系統(tǒng)重新安裝時一次性地再賦予其他用戶一個下屬的授權(quán),權(quán)限被重新劃分成更為危險的權(quán)限等級,危險級的權(quán)限將在一個用戶自己決定使用一個app的系統(tǒng)過程中被再次動態(tài)地賦予讓其他用戶自己自由去進(jìn)行選擇或者決定是否可以認(rèn)可它的授權(quán)[10]。這樣的管理機(jī)制可以在一定范圍內(nèi)有效地控制惡意軟件、病毒和網(wǎng)絡(luò)攻擊在手機(jī)系統(tǒng)中的傳播和擴(kuò)散,保障了手機(jī)用戶的切身利益和個人資料安全。AndroidStudio開發(fā)環(huán)境在前期的英文android序列系統(tǒng)設(shè)計開發(fā)中,開發(fā)者通常都認(rèn)為只能自由選擇直接使用數(shù)字eclipseadt數(shù)字進(jìn)行系統(tǒng)開發(fā),其中數(shù)字adt可能是英文androiddevelopmenttools的一個英語英文縮寫,是一種android系統(tǒng)開發(fā)工具。但是oeclipse不是為使用android開發(fā)系統(tǒng)的軟件開發(fā)人員提供專屬的環(huán)境設(shè)計,在實際運(yùn)用android開發(fā)系統(tǒng)軟件開發(fā)的工作過程中,常常我們會碰巧地偶然遇到很多在開發(fā)軟件上的問題bug,不僅往往困擾著這些問題難以及時得到有效的根本解決、還往往會嚴(yán)重耽誤著系統(tǒng)開發(fā)的工作進(jìn)度,所以aogoogle兩個公司便徹底摒棄了針對環(huán)境adt兩個插件的技術(shù)開發(fā)和系統(tǒng)維護(hù),同時也或許正是因為這些技術(shù)問題,他們才開始出于自身是從技術(shù)和產(chǎn)業(yè)發(fā)展的不同角度進(jìn)行考慮,研發(fā)并推出了一個新的基于android插件開發(fā)的系統(tǒng)環(huán)境版本androidstudio(以下具體情況簡稱環(huán)境as),如今該環(huán)境版本已迭換一代更新至2.2,開發(fā)環(huán)境用戶操作體驗良好,越來越少更多的開發(fā)用戶直接轉(zhuǎn)入到了as新的開發(fā)環(huán)境android。但是由于目前as的基礎(chǔ)編譯安裝工具都主要是基于grade-regrade-regrade沒有編譯過的環(huán)境,對于使用as的很多新人用戶來說,as的這個基礎(chǔ)編譯環(huán)境下的配置安裝工作顯然是一個十分麻煩的一個過程,要對于sbuildtools新的版本等都非常需要嚴(yán)格的進(jìn)行下載和安裝部署[11]。所以當(dāng)我們的基礎(chǔ)設(shè)施和環(huán)境都配置好后,開發(fā)過程速度很快,并且具有很強(qiáng)的自動搜索,在這個插件市場上也是有各類第三方免費(fèi)的高級插件,讓我們的開發(fā)人員比較容易地完成。2.2.2后臺管理系統(tǒng)Eclipse開發(fā)環(huán)境Eclipse主要用于JAVA開發(fā),該工具功能非常強(qiáng)大,有豐富的快捷鍵,詳細(xì)的提示信息,超強(qiáng)的自動補(bǔ)全功能。它不僅僅是一個IDE,更是一個框架加一組服務(wù)。它支持各種插件的安裝,從而能夠?qū)崿F(xiàn)豐富多彩的功能,Eclipse一直是JAVA開發(fā)人員最常用的工具,深受JAVA開發(fā)人員的喜歡。Tomcat服務(wù)器tomcat應(yīng)用服務(wù)器本身本來就是一個重量級、免費(fèi)、開源、廣泛應(yīng)用的該程序也是開發(fā)者和企業(yè)用戶普遍深受青睞的一個web應(yīng)用服務(wù)器,它主要用于支持serlet和jsp,tomcat本身就是一套屬于整個apache公司的一套系列應(yīng)用軟件,可以直接用來承載整個javaweb應(yīng)用程序。MySQL數(shù)據(jù)庫mysql系統(tǒng)是一種通用關(guān)系式企業(yè)數(shù)據(jù)庫信息管理分析系統(tǒng),其主要特點(diǎn)之一是系統(tǒng)體積小、速度快、對于企業(yè)個人和其他企業(yè)系統(tǒng)用戶來說完全免費(fèi)、容易于用戶學(xué)習(xí)、可移植性強(qiáng)、提供了豐富的軟件接口、支持?jǐn)?shù)據(jù)查詢多種語言,數(shù)據(jù)管理分析和信息共享系統(tǒng)工作效率高、所有的需要數(shù)據(jù)占有的存儲空間小、安裝簡便。2.3本章小結(jié)本章主要闡述了本在線考試系統(tǒng)APP所涉及到的主要技術(shù)知識點(diǎn),包括對Android做了簡單介紹,分析了Android軟件的結(jié)構(gòu)層次,然后分別介紹了客戶端和后臺管理系統(tǒng)的開發(fā)環(huán)境,以及Tomcat服務(wù)器、MySQL數(shù)據(jù)庫服務(wù)器的相關(guān)介紹。第三章可行性研究與需求分析3.1可行性研究對于一些應(yīng)用程序軟件開發(fā)的領(lǐng)域來說,對其進(jìn)行可行性的分析和研究就變得十分重要,客觀地證明了開發(fā)的必要性,它也是一種權(quán)衡開發(fā)者所設(shè)計的程序軟件是否有價值的標(biāo)準(zhǔn)。下面主要針對筆者自己設(shè)計和開發(fā)android在線網(wǎng)絡(luò)考試管理系統(tǒng)的課題做了一個可行性的分析,主要涉及以下三個基本因素:經(jīng)濟(jì)上的可行性、技術(shù)上的可行性、環(huán)境上的可行性。3.1.1經(jīng)濟(jì)可行性軟件的市場經(jīng)濟(jì)性主要可以表現(xiàn)為,在沒有充分考慮了開發(fā)成本的必要前提下,所有對需要進(jìn)行開發(fā)的一個軟件產(chǎn)品能否直接獲得一定的社會市場經(jīng)濟(jì)價值,通過對其產(chǎn)品進(jìn)行商業(yè)運(yùn)營和市場推廣,使其是否直接獲得了經(jīng)濟(jì)利益等的。根據(jù)當(dāng)下的市場情況我們進(jìn)行了市場調(diào)查,基于android客戶端的在線考試軟件雖然已經(jīng)完全能夠直接有效實現(xiàn)在線考試的實際效果,但在國內(nèi)各個高校中實際應(yīng)用幾乎都基本為零,這種現(xiàn)象就充分說明了該軟件產(chǎn)品在未來的市場上可以說具有很好的實際應(yīng)用效果和廣闊的市場發(fā)展空間。根據(jù)此類應(yīng)用軟件產(chǎn)品在專業(yè)技術(shù)上的應(yīng)用層次,再對它們的升級產(chǎn)品進(jìn)行了大量的研發(fā)和投入,爭取將該類應(yīng)用軟件在功能上設(shè)計拓展得更為豐富多彩,用戶界面美觀大方,操作簡便方便,從而能夠不斷地提高廣大用戶的操作體驗,該類應(yīng)用軟件的市場經(jīng)濟(jì)發(fā)展和實際應(yīng)用前景也一定會發(fā)展得非常好,具有很高的潛在經(jīng)濟(jì)、商業(yè)應(yīng)用價值。3.1.2技術(shù)可行性任何一個應(yīng)用軟件都是在技術(shù)上進(jìn)行研究的,首先我們需要考慮的應(yīng)該是在進(jìn)行開發(fā)和設(shè)計一個應(yīng)用軟件之前,所處的技術(shù)環(huán)境是否夠滿足支撐一個應(yīng)用軟件的總體可靠性和整體實現(xiàn),從而就需要綜合地分析一個軟件的技術(shù)能力和硬件設(shè)施的可靠性。其次在進(jìn)行設(shè)計和開發(fā)一個軟件時,需要詳細(xì)地分析一個軟件是否有能夠?qū)崿F(xiàn)它的核心功能、如何實現(xiàn)它的整體功能,也就是需求說明中的要求。在軟件設(shè)計方面,無論是軟件編譯過程中必須使用的eclipse工具和其他插件,還是平臺上必須使用的計算機(jī)編程語言,都已經(jīng)完全具備了對于實現(xiàn)這個課題的應(yīng)用能力。在硬件設(shè)施方面,計算機(jī)等操作系統(tǒng)以及軟件后臺針對數(shù)據(jù)信息進(jìn)行保存的mysql數(shù)據(jù)庫,都足夠支撐整個軟件開發(fā)和設(shè)計。3.1.3環(huán)境可行性在當(dāng)今互聯(lián)網(wǎng)信息時代的熱潮下,應(yīng)用軟件已經(jīng)出現(xiàn)在每臺移動智能設(shè)備當(dāng)中,加上如今以Android為主要操作系統(tǒng)的移動智能設(shè)備也得到了飛速發(fā)展,所以這些兩者融合的應(yīng)用軟件在當(dāng)前的市場中都是擁有非常大的需求。對于我們開發(fā)者而言,設(shè)計一款基于安卓平臺的軟件,它就自然地迎合了當(dāng)前環(huán)境下的需求。另一方面來看,國內(nèi)大多數(shù)高等院校對于這些運(yùn)行在移動設(shè)備上的考試軟件實際運(yùn)用得比較少,并且由于在校生的課余時間還是比較豐富的,應(yīng)用這些考試軟件產(chǎn)品能夠讓我們這些在校大學(xué)生更好地利用這些碎片化的時間,不必再需要特別刻意地將上課的時間空下來留給考試,從而為我們節(jié)省了許多的人力、財力和物力。3.2需求分析3.2.1功能需求功能需求通常來說是根據(jù)用戶的實際需要,產(chǎn)品經(jīng)理通過與技術(shù)人員對接,把實際需求轉(zhuǎn)化為在軟件功能上的需求[12],然后由開發(fā)人員實現(xiàn)的這些具體功能,開發(fā)人員開發(fā)完成后,就可以讓用戶進(jìn)行基本的操作,這樣滿足了用戶在業(yè)務(wù)上的功能需求。下面就根據(jù)用戶的實際需求對該在線考試系統(tǒng)APP進(jìn)行需求描述與分析。3.2.2需求描述根據(jù)該在線考試系統(tǒng)APP的功能需求,該軟件系統(tǒng)的用戶中包括管理員用戶、教師用戶和學(xué)生用戶。學(xué)生用戶登錄該在線考試APP客戶端可以完成以下操作:查詢個人信息,查看自己課程信息和考試信息;老師發(fā)布考試命令后可以查看考試信息并參加考試;考完試后可以查詢考試成績。教師用戶主要完成:管理自己的教學(xué)課程和學(xué)生,包括對課程和課程所對應(yīng)的學(xué)生進(jìn)行增加、刪除、修改、查詢操作,可以管理考試題庫、對考試題庫做增加、刪除、修改、查詢操作;發(fā)布考試信息;學(xué)生答題結(jié)束后,可以查看各學(xué)生、各題的答題情況,還可以查看考試結(jié)果成績統(tǒng)計圖,對考試情況做分析。管理員用戶可以完成以下功能:管理學(xué)生、教師及課程信息,包括對學(xué)生、教師、課程、題庫做增加、刪除、修改、查詢等基本操作操作,可以管理角色權(quán)限,給不同角色的用戶賦予不同權(quán)限,可以通過查看系統(tǒng)日志,維護(hù)和管理系統(tǒng)的安全穩(wěn)定性。系統(tǒng)功能模塊如圖3.1所示。圖3.1系統(tǒng)功能模塊圖下面就主要對管理員用戶、學(xué)生用戶和教師用戶的需求進(jìn)行闡述:3.2.3客戶端——學(xué)生用戶需求1.學(xué)生用戶最主要的需求是在線考試,其中也包含注冊、登錄、查詢個人信息、查詢課程信息、查詢考試信息等,學(xué)生用戶例圖如圖3.2所示:(1)注冊:學(xué)生用戶可以使用用戶名和密碼注冊新用戶(2)登錄:學(xué)生用戶使用已注冊的用戶名和密碼在客戶端登錄系統(tǒng),如果登錄成功則跳轉(zhuǎn)到主界面,否則系統(tǒng)將提示登錄失敗,用戶需要重新登錄。(3)學(xué)生用戶可以查看自己課程信息和考試信息。(4)學(xué)生用戶在教師發(fā)布考試后可以通過客戶端進(jìn)入該系統(tǒng)參加考試,系統(tǒng)會根據(jù)教師對各題型設(shè)置的數(shù)量從題庫中隨機(jī)抽題組合成試卷,并分配給學(xué)生,保證了兩兩同學(xué)之間試卷不相同。(5)學(xué)生用戶可以查詢各科考試成績。(6)學(xué)生用戶可以查看和修改個人的基本信息,如修改用戶名和密碼等。圖3.2學(xué)生用戶例圖3.2.4后臺管理系統(tǒng)教師用戶需求2.教師用戶在該系統(tǒng)中主要完成對課程的操作、學(xué)生的管理及考試的發(fā)布,教師用戶例如圖3.3所示。(1)注冊:教師用戶可以使用工號注冊新用戶(2)登錄:教師用戶可以使用注冊的用戶名和密碼在后臺管理系統(tǒng)登錄(3)教師可以對自己所教學(xué)的課程信息、及該課程對應(yīng)的學(xué)生信息進(jìn)行增加、刪除、修改和查詢操作。(4)教師可以查詢自己所教學(xué)課程的考試信息和發(fā)布考試信息。(5)教師可以增加、刪除、修改、查詢自己所教學(xué)的考試題庫。(6)教師在發(fā)布考試信息時,可以設(shè)置各類型題目的數(shù)量及分?jǐn)?shù),(7)教師用戶登錄后臺管理系統(tǒng),可以批改試卷的主觀題部分。(8)試卷管理:對試卷進(jìn)行管理,可以對學(xué)生考過的試卷做查詢、刪除操作。(9)教師修改完試卷以后,系統(tǒng)自動將成績匯總,繪制成折線圖,提供給老師查看,提供給教師查看學(xué)生的考試情況。(10)答題管理:可以查看各考生所答的各題的具體情況。(11)教師登錄后臺管理系統(tǒng)之后也可以對個人信息進(jìn)行查詢和修改。圖3.3教師用戶例圖3.2.5后臺管理系統(tǒng)管理員用戶需求3.管理員登錄后臺管理系統(tǒng)可以管理系統(tǒng)一切內(nèi)容,包括管理學(xué)生、教師、課程、題庫、考試、用戶權(quán)限、系統(tǒng)等,下面主要介紹角色管理、權(quán)限管理、日志管理、系統(tǒng)設(shè)置。圖3.4為管理員用例圖。(1)角色管理:管理員可以新增角色,并且對新增的角色分配相應(yīng)的權(quán)限來管理該系統(tǒng)。(2)權(quán)限管理:管理員可以為不同的角色分配不同權(quán)限[14],從而不同的角色用戶登錄系統(tǒng)有不同的功能。(3)日志管理:管理員可以通過查看日志信息來看各人員登錄系統(tǒng)的情況和做出的各操作。(4)系統(tǒng)設(shè)置:可以進(jìn)行一些基本的系統(tǒng)設(shè)置。圖3.4管理員用戶例圖3.4本章小結(jié)本章主要主要進(jìn)行了可行性研究與需求分析,給出了總體方案,對該項目進(jìn)行了需求分析,分別列出了該系統(tǒng)客戶端學(xué)生用戶需求,后臺管理系統(tǒng)教師和管理員需求,并做了可行性分析,包括經(jīng)濟(jì)可行性、技術(shù)可行性、環(huán)境可行性;還介紹了系統(tǒng)開發(fā)的原則。第4章在線考試APP的設(shè)計4.1系統(tǒng)設(shè)計原則在系統(tǒng)設(shè)計過程中,要遵循以下原則:1.作為開發(fā)人員,我們必須充分考慮到智能移動設(shè)備的性質(zhì)[15],移動手機(jī)是我們隨身攜帶著的東西,手機(jī)由于屏幕尺寸大小的原因,APP應(yīng)用界面在展示方面會受到很多的約束,存在一定的局限性,因此在做UI界面設(shè)計時務(wù)必要做到簡單大方,樸素精簡。2.系統(tǒng)的整體運(yùn)行穩(wěn)定度和性能總體要求良好,在系統(tǒng)的整體設(shè)計前期就是一定要將其作為整體的系統(tǒng)框架結(jié)構(gòu)性能進(jìn)行設(shè)計考量全面,做到高強(qiáng)度內(nèi)聚、低強(qiáng)度耦合,避免了這種牽一發(fā)而動全身的尷尬復(fù)雜局面。3.該系統(tǒng)的實用性比較高,符合現(xiàn)代化的業(yè)務(wù)應(yīng)用場景,而且接口友好,操作便捷。4.系統(tǒng)的可擴(kuò)展性比較好,能夠很好地適應(yīng)未來的業(yè)務(wù)需要"變化"。4.2總體架構(gòu)設(shè)計本系統(tǒng)總體設(shè)計采用Android手機(jī)客戶端與服務(wù)器的C/S結(jié)構(gòu)和后臺管理系統(tǒng)通過瀏覽器訪問服務(wù)器的B/S結(jié)構(gòu)相結(jié)合的架構(gòu)方案。整個系統(tǒng)由Android手機(jī)客戶端[16]、JavaEE服務(wù)器、數(shù)據(jù)庫服務(wù)器等組成。JavaEE服務(wù)器采用Tomcat8.5,后臺管理系統(tǒng)框架采用SSM框架,數(shù)據(jù)庫服務(wù)器采用Mysql8.0版本。整個系統(tǒng)的設(shè)計如圖4.1所示。圖4.1系統(tǒng)總體設(shè)計4.3系統(tǒng)數(shù)據(jù)流設(shè)計該在線考試系統(tǒng)數(shù)據(jù)流設(shè)計如圖4.2所示。圖4.2系統(tǒng)數(shù)據(jù)流設(shè)計4.4后臺管理系統(tǒng)設(shè)計教師用戶和管理用戶可以登錄該后臺管理系統(tǒng),其中教師用戶主要負(fù)責(zé)的是管理考試方面的內(nèi)容,主要有以下幾個方面:管理自己的教學(xué)課程和學(xué)生,包括對課程和課程所對應(yīng)的學(xué)生進(jìn)行增加、刪除、修改、查詢操作;管理考試題庫、對考試題庫做增加、刪除、修改、查詢操作;發(fā)布考試信息;學(xué)生答題結(jié)束后,可以查看各學(xué)生、各題的答題情況,還可以查看考試結(jié)果成績統(tǒng)計圖,對考試情況做分析。管理員用戶主要負(fù)責(zé)所有信息的管理,具體未:管理學(xué)生、教師及課程信息,包括對學(xué)生、教師、課程、題庫做增加、刪除、修改、查詢等基本操作操作,可以管理角色權(quán)限,給不同角色的用戶賦予不同權(quán)限,可以通過查看系統(tǒng)日志,維護(hù)和管理系統(tǒng)的安全穩(wěn)定性。該在線系統(tǒng)APP的后臺管理系統(tǒng)功能如圖4.3所示:圖4.3系統(tǒng)管理員功能模塊結(jié)構(gòu)圖4.4.1后臺管理系統(tǒng)的各功能介紹首先介紹教師用戶登錄該系統(tǒng)可以完成的功能。(1)注冊:教師用戶可以使用工號注冊新用戶(2)登錄:教師用戶可以使用注冊的用戶名和密碼在后臺管理系統(tǒng)登錄(3)教師可以對自己所教學(xué)的課程信息、及該課程對應(yīng)的學(xué)生信息進(jìn)行增加、刪除、修改和查詢操作。(4)教師可以查詢自己所教學(xué)課程的考試信息和發(fā)布考試信息。(5)教師可以增加、刪除、修改、查詢自己所教學(xué)的考試題庫。(6)教師在發(fā)布考試信息時,可以設(shè)置各類型題目的數(shù)量及分?jǐn)?shù),(7)教師用戶登錄后臺管理系統(tǒng),可以批改試卷的主觀題部分。(8)試卷管理:對試卷進(jìn)行管理,可以對學(xué)生考過的試卷做查詢、刪除操作。(9)教師修改完試卷以后,系統(tǒng)自動將成績匯總,繪制成折線圖,提供給老師查看,提供給教師查看學(xué)生的考試情況。(10)答題管理:可以查看各考生所答的各題的具體情況。(11)教師登錄后臺管理系統(tǒng)之后也可以對個人信息進(jìn)行查詢和修改。其次介紹管理員用戶登錄該系統(tǒng)可以完成的功能,其中教師所有的功能管理員都有。(1)角色管理:管理員可以新增角色,并且對新增的角色分配相應(yīng)的權(quán)限來管理該系統(tǒng)。(2)權(quán)限管理:管理員可以為不同的角色分配不同權(quán)限[14],從而不同的角色用戶登錄系統(tǒng)有不同的功能。(3)日志管理:管理員可以通過查看日志信息來看各人員登錄系統(tǒng)的情況和做出的各操作。(4)系統(tǒng)設(shè)置:可以進(jìn)行一些基本的系統(tǒng)設(shè)置。4.5客戶端系統(tǒng)設(shè)計客戶端系統(tǒng)主要具備以下幾項基本功能:您的個人信息管理,課程資料,考試資料,在線測評,成績查詢,如圖4.4所示。圖4.4客戶端系統(tǒng)平臺設(shè)計4.5.1注冊模塊該模塊主要是為了完成對新用戶的注冊,當(dāng)一個客戶端向其發(fā)出一個注冊申請后,接收到一個用戶的注冊申請信息,檢驗其所有注冊申請信息的內(nèi)容是否正確或者用戶帳號信息是否被認(rèn)為已經(jīng)注冊,最后對新用戶完成了相應(yīng)的注冊申請并再次返回一個執(zhí)行的結(jié)果,注冊成功后,客戶端就會自動跳回一個登錄的界面。用戶只需要輸入自己的用戶名和帳號以及密碼,點(diǎn)擊登錄的按鈕之后,客戶端就會向服務(wù)器發(fā)出一個驗證的請求,如果這個信息被驗證成功,客戶端就會自動跳轉(zhuǎn)出來進(jìn)入主管理界面;如果驗證錯誤,則系統(tǒng)需要再次進(jìn)行登錄,注冊流程如圖4.5所示。圖4.5注冊流程4.5.2用戶登錄功能在系統(tǒng)在使用時首先要輸入用戶名和密碼,系統(tǒng)會根據(jù)用戶名進(jìn)行驗證[20],驗證沒有成功則返回登錄頁面,并提示用戶重新登錄。驗證成功則根據(jù)用戶名分配相應(yīng)權(quán)限,進(jìn)入界面。用戶登錄功能如圖4.6所示。圖4.6用戶登錄功能流程圖4.5.3信息查詢與管理功能該功能主要包括個人信息、課程信息、考試信息的查詢與管理,當(dāng)客戶端通過Http協(xié)議向服務(wù)器發(fā)送查詢信息的請求時,服務(wù)器根據(jù)客戶端發(fā)送的請求類型參數(shù),從數(shù)據(jù)庫中讀出相關(guān)信息,并將數(shù)據(jù)以JASON格式發(fā)送給客戶端。查詢信息流程如圖4.7所示。圖4.7查詢信息流程圖4.5.4在線考試模塊在線考試功能可以說時本在線考試系統(tǒng)的核心功能,對于考生通過身份認(rèn)證并選擇“在線考試”功能便啟動該模塊。首先進(jìn)入“考試說明”頁面,等待考生準(zhǔn)備好,便開始抽題,系統(tǒng)會根據(jù)教師用戶的設(shè)定自動隨機(jī)地從題庫讀取試題并生成考試試卷??忌诖痤}過程中要注意考試的時間,在考試結(jié)束之前交卷,否則考試結(jié)束時系統(tǒng)會自動交卷。在交卷后,考生答卷會通過網(wǎng)絡(luò)被提交到數(shù)據(jù)庫服務(wù)器的試卷表(exampaper)中,接下來進(jìn)入自動判題的環(huán)節(jié),判題以后學(xué)生可以查詢到已考科目的成績及試卷。在線考試流程4.8所示。圖4.8在線考試流程4.6數(shù)據(jù)庫設(shè)計4.6.1數(shù)據(jù)庫概念設(shè)計概念模型就是對整個信息技術(shù)世界體系進(jìn)行一種建模,因此概念模型在進(jìn)行設(shè)計時我們應(yīng)該首先做到的是能夠簡單、準(zhǔn)確地給出代表關(guān)于信息技術(shù)世界的各種常用基本概念。概念化代數(shù)模型的主要代價在于表示法的形式可以有許多,其中最常見的表示形式之一就是E-R的表示法。該種模型設(shè)計基本方法就是采用E-R結(jié)構(gòu)圖的一種形式應(yīng)用來明確描述一個基于現(xiàn)實虛擬世界實體中的網(wǎng)絡(luò)概念化關(guān)聯(lián)模型,稱為真正的虛擬實體-網(wǎng)絡(luò)關(guān)聯(lián)關(guān)系模型,簡稱實體E-R關(guān)聯(lián)模型。按照對應(yīng)的數(shù)據(jù)處理流程分析進(jìn)行綜合分析,繪制了一個完全網(wǎng)絡(luò)化的企業(yè)在線質(zhì)量測試數(shù)據(jù)系統(tǒng)以及全局化的E-R數(shù)據(jù)模型如圖4.9所示。圖4.9系統(tǒng)全局E-R圖4.6.2數(shù)據(jù)庫邏輯設(shè)計數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計,主要理念指的就是將在需要進(jìn)行各種數(shù)據(jù)庫設(shè)計理念化產(chǎn)品設(shè)計的時候,同時已經(jīng)進(jìn)行設(shè)計良好的數(shù)據(jù)E-R結(jié)構(gòu)圖,并將其轉(zhuǎn)換成與所需要選擇的的DBMS三類產(chǎn)品中所支持的數(shù)據(jù)模型完全基本相符的一種邏輯化設(shè)計結(jié)構(gòu)。它由記錄數(shù)據(jù)項、記錄和其他數(shù)據(jù)記載之間的相互關(guān)系、安全性以及數(shù)據(jù)一致性的因素約束等。本在線考試系統(tǒng)APP的數(shù)據(jù)庫名稱為onlineExam_db,該系統(tǒng)數(shù)據(jù)庫中主要有以下數(shù)據(jù)表:管理員表、學(xué)生信息表、學(xué)科專業(yè)表、考試表、試題卷、試卷答題表、日志表。各個表的數(shù)據(jù)框架結(jié)構(gòu)如下表所示:表4.1管理員表(user)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否20管理員IDusername否varchar否30用戶名password否varchar否30密碼age否int否3年齡roleId否int否11角色I(xiàn)Dsex否int否2性別address否varchar是100地址photo否varchar是100頭像圖片表4.2學(xué)生信息表(student)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否20學(xué)生IDname否varchar否30登錄名password否varchar否30登錄密碼tel否varchar是20手機(jī)號碼trueName否varchar是30姓名subjectId否int否20學(xué)科IDcreateTime否datetime是0創(chuàng)建時間表4.3學(xué)科專業(yè)表(subject)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否20學(xué)科IDname否varchar否50學(xué)科名稱remark否varchar是200學(xué)科備注表4.4考試表(exam)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否20考試IDname否varchar否300考試名稱subject否int否20所屬學(xué)科IDtotalScore否int否10總分questionNum否int否10試題總數(shù)passScore否int否10及格分?jǐn)?shù)startTime否datetime否0考試時間avaliableTime否int否10考試所需時間endTime否datetime否0結(jié)束時間chargeQuestionNum否int否10判斷題數(shù)量singleQuestionNum否int否10單選題數(shù)量muiltQuestionNum否int否10多選題數(shù)量examedNum否int否10已考人數(shù)createTime否datetime是0添加時間paperNum否int否10試卷數(shù)量passNum否int否10及格人數(shù)表4.5試題表(question)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否10試卷IDsubjectId否int否10學(xué)科IDquestionType否int否3試題類型score否int否10分?jǐn)?shù)title否varchar否200題目attrA否varchar否200選項AattrB否varchar否200選項BattrC否varchar是200選項CattrD否varchar是200選項Danswer否varchar否200答案createTime否datetime是0添加時間表4.6試卷表(exampaper)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否10試卷IDstudentId否int否10所屬學(xué)生IDexamId否int否10所屬考試IDtotalScore否int否10總分score否int否10得分status否int否10試卷狀態(tài)useTime否int是10考試用時createTime否datetime是0添加時間startExamTime否datetime是0開始時間endExamTime否datetime是0結(jié)束時間表4.7試卷答題表(exampaperanswer)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否10答卷IDquestionId否int否10所屬試題IDexamPaperId否int否10所屬試卷IDstudentId否int否10所屬學(xué)生IDexamId否int否10所屬考試IDanswer否varchar是40提交答案isCorrect否int否2是否正確表4.8日志表(log)字段名稱主鍵數(shù)據(jù)類型允許空值字段大小說明id是int否10日志IDcontent否varchar否200日志內(nèi)容createTime否datetime是0創(chuàng)建時間4.7本章小結(jié)本章首先給出了系統(tǒng)設(shè)計所要遵循的原則,接著對系統(tǒng)總體架構(gòu)進(jìn)行了分析與設(shè)計,包括Android手機(jī)客戶端與服務(wù)器采用C/S架構(gòu),后臺管理系統(tǒng)與服務(wù)器采用B/S架構(gòu);然后給出了系統(tǒng)數(shù)據(jù)流設(shè)計圖分析了該系統(tǒng)的數(shù)據(jù)流設(shè)計;詳細(xì)設(shè)計包括后臺管理系統(tǒng)和客戶端各功能各模塊的分析與設(shè)計;最后是設(shè)計數(shù)據(jù)庫,給出了全局E-R圖,還有各數(shù)據(jù)表的詳細(xì)設(shè)計。第5章在線考試APP的實現(xiàn)5.1開發(fā)環(huán)境與工具5.1.1在線考試系統(tǒng)app硬件環(huán)境表5.1硬件環(huán)境表指標(biāo)項配置參數(shù)系統(tǒng)型號X550VQCPU型號IntelCorei7-6700HQ2.6GHzCPU數(shù)量4顯卡IntelHDGraphics內(nèi)存SATA600GB*45.1.1在線考試系統(tǒng)app軟件環(huán)境表5.2軟件環(huán)境表名稱版本操作系統(tǒng)Windows10家庭版64位開發(fā)工具Eclipse、AndroidStudio數(shù)據(jù)庫Mysql8.0Web服務(wù)器Tomcat8.5軟件開工工具包JDK1.85.2總體實現(xiàn)該在線考試系統(tǒng)app架構(gòu)是由一個通過瀏覽器訪問服務(wù)器的B/S架構(gòu)的后臺管理系統(tǒng)和一個通過移動設(shè)備訪問服務(wù)器的C/S架構(gòu)的客戶端組合而成的,客戶端主要由學(xué)生登錄,提供的功能有:“注冊賬號”、“登錄”、“課程信息”、“考試信息”、“在線考試”、“成績查詢”、“個人中心”等。后臺管理系統(tǒng)由教師和管理員登錄,教師用戶主要的工作是組織管理考試,包括了:“學(xué)科管理”、“考試管理”、“試卷管理”、“答題管理”、“成績統(tǒng)計”等功能。管理員負(fù)責(zé)管理該系統(tǒng)的一切內(nèi)容,包括“角色管理”、“權(quán)限管理”、“日志管理”、“系統(tǒng)設(shè)置”等。根據(jù)需求分析及總體設(shè)計方案,現(xiàn)將總體實現(xiàn)圖設(shè)計成如圖5.1所示。圖5.1總體實現(xiàn)圖5.3后臺管理系統(tǒng)實現(xiàn)在線上對考試的數(shù)據(jù)后臺進(jìn)行管理數(shù)據(jù)系統(tǒng)主要分析是對于tandroidp等客戶端后臺進(jìn)行數(shù)據(jù)管理所所必需的海量數(shù)據(jù),本文對于考試后臺進(jìn)行管理的數(shù)據(jù)系統(tǒng)主要分析是通過使用ssm+jquery+bootstrap等多種數(shù)據(jù)組合管理框架方式來對其進(jìn)行設(shè)計實現(xiàn),整個組合框架由一個數(shù)據(jù)表示層、控制數(shù)據(jù)管理層、業(yè)務(wù)數(shù)據(jù)管理層以及一個動態(tài)數(shù)據(jù)持久管理層四個大部分進(jìn)行組成,如圖5.2所示。圖5.2SSM+JQuery+BootStrap集成框架5.3.1登錄、注冊、修改密碼功能實現(xiàn)本系統(tǒng)中,教師用戶可以注冊用戶名和密碼,然后管理員為教師用戶授予相應(yīng)的權(quán)限,這樣教師用戶就可以登錄后臺管理系統(tǒng)進(jìn)行相關(guān)操作。本系統(tǒng)的注冊、登錄、修改密碼界面如圖5.3所示。圖5.3注冊、登錄、修改密碼圖5.3.2角色管理功能實現(xiàn)管理員可以修改角色信息、添加新的角色名稱,還可以給不同的角色名稱授予不同的操作權(quán)限,角色管理如圖5.4所示。圖5.4角色管理圖5.3.3用戶管理功能實現(xiàn)管理員擁有添加、查詢和刪除用戶等基本操作的功能,管理員還可以給用戶設(shè)置不同的角色,例如老師用戶是一個角色,教務(wù)處管理員也是一個角色,不同的角色擁有不同的權(quán)限,共同參與管理系統(tǒng)。用戶管理如圖5.5所示。圖5.5用戶管理圖5.3.4學(xué)科專業(yè)管理學(xué)科管理一般由教師用戶負(fù)責(zé),教師用戶可以新增加專業(yè)學(xué)科、刪除學(xué)科,還能修改學(xué)科的描述信息,同時也提供了搜索功能進(jìn)行模糊查詢,輸入學(xué)科名稱搜索學(xué)科信息,如圖5.6所示。圖5.6學(xué)科管理圖5.3.5考生管理考生管理是該系統(tǒng)的基礎(chǔ)功能之一,主要由教師用戶進(jìn)行負(fù)責(zé),教師用戶可以添加考生信息、修改考生信息、搜索查看考生信息和刪除考生信息,如圖5.7所示。圖5.7考生管理圖5.3.6試題管理試題管理功能主要是提供給教師用戶編寫題庫用的,教師登錄后臺管理系統(tǒng)可以在試題庫里添加各學(xué)科的考試試題,學(xué)生在參加考試的時候系統(tǒng)會隨機(jī)在該題庫中抽題組合成試卷提供給學(xué)生。如圖5.8所示。圖5.8試題管理圖5.3.7考試管理考試管理是該系統(tǒng)最重要的功能之一,教師用戶在功能里發(fā)布考試信息,主要包括設(shè)置考試的科目、考試開始時間和結(jié)束時間、及格分?jǐn)?shù)線、各題型數(shù)量和及格分?jǐn)?shù)線,教師用戶可以增加、刪除、修改、查詢考試信息。后臺添加考試信息后[25],客戶端會查詢到考試時間、科目等相關(guān)信息,如下圖5.9所示。圖5.9考試管理圖5.3.8試卷管理學(xué)生在客戶端考完試后,后臺管理系統(tǒng)會查詢到已考課程的信息,教師用戶可以搜索和刪除已結(jié)束的考試。如圖5.10所示。圖5.10試卷管理圖5.3.9答題管理學(xué)生考試結(jié)束后,教師用戶登錄后臺管理系統(tǒng)可以查看各考試科目、各考生、各題的答題情況,能夠更清楚地掌握考生對試題知識的掌握情況,如圖5.11所示。圖5.11答題管理圖5.3.10成績統(tǒng)計教師用戶登錄后臺管理系統(tǒng)可以查看學(xué)生成績統(tǒng)計折線圖,系統(tǒng)提供搜索功能可以模糊查看不同考試科目的考試情況。如圖5.12所示。圖5.12成績統(tǒng)計圖5.3.11日志管理后臺管理系統(tǒng)提供系統(tǒng)日志記錄,主要記錄相關(guān)登錄和其它操作的信息,如圖5.13所示。圖5.13日志管理圖5.4客戶端系統(tǒng)功能的實現(xiàn)該系統(tǒng)在客戶端上實現(xiàn)的較為簡單實用,主要設(shè)計以下幾個功能:學(xué)生“注冊賬號”、“登錄”、“課程信息”、“考試信息”、“在線考試”、“成績查詢”、“個人中心”等。5.4.1注冊和登錄功能所以在開啟應(yīng)用程序的時候,首先進(jìn)入的是注冊和登錄頁面,用戶可以通過填寫相關(guān)個人信息進(jìn)行注冊,注冊完成后跳轉(zhuǎn)到登錄頁面,當(dāng)用戶輸入手機(jī)號和密碼后,軟件會自行驗證,驗證通過后進(jìn)入軟件首頁。注冊、登錄頁面如圖5.14所示。圖5.14注冊登錄圖5.4.2主頁面及個人信息查看主頁面中,用戶可以點(diǎn)擊兩個Button組件,分別是進(jìn)入首頁按鈕以及個人信息按鈕。在Main類中對這兩個控件進(jìn)行監(jiān)聽設(shè)置,當(dāng)用戶點(diǎn)擊后頁面會根據(jù)用戶的點(diǎn)擊對象進(jìn)行界面的跳轉(zhuǎn)。主頁面如圖5.15所示。圖5.15主頁及個人信息圖5.4.3在線考試“首頁信息”中可以查詢課程信息、考試信息和成績查詢,若教師已發(fā)布考試信息,則學(xué)生可點(diǎn)擊“開始考試”進(jìn)行考試。在線考試頁面如圖5.16所示。圖5.16在線考試圖5.4.4成績查詢考試結(jié)束后,學(xué)生可以回顧試卷,查看本次考試各題的對錯情況、答案解析和此次考試的總成績。如圖所5.17示。圖5.17成績查詢圖5.5本章小結(jié)本章首先介紹了開發(fā)該系統(tǒng)所需要開發(fā)環(huán)境和開發(fā)工具,包括客戶端、后臺管理系統(tǒng)的開發(fā)環(huán)境和開發(fā)語言;緊接著對該系統(tǒng)總體實現(xiàn)做出了概述總結(jié),給出了系統(tǒng)總體實現(xiàn)圖;然后展示系統(tǒng)各功能運(yùn)行的界面,包括后臺管理系統(tǒng)各功能的實現(xiàn)圖,包括用戶注冊登錄、用戶權(quán)限控制管理、考試管理等等;客戶端各功能實現(xiàn)包括主頁查看個人信息、課程及考試查詢、在線考試功能等等。第6章系統(tǒng)測試6.1測試的目的與目標(biāo)軟件測試是軟件開發(fā)中必不可少的步驟,軟件的好壞可以通過測試來進(jìn)行檢驗。軟件測試的目的就是不斷的找出程序的漏洞,提前做好整改與維護(hù),保證軟件開發(fā)出來給用戶之前性能較完善。6.2測試方法6.2.1AndroidApp測試概述AndroidApp基本測試流程如圖6.1所示:圖6.1AndroidApp基本測試流程圖一般把基于app的終端測試體驗手段大致劃分四類為終端接口協(xié)議體驗測試、易用性體驗測試、功能體驗測試、終端網(wǎng)絡(luò)適配性體驗測試、性能體驗測試、互聯(lián)網(wǎng)應(yīng)用測試。6.3系統(tǒng)測試與分析系統(tǒng)上線之前需要執(zhí)行全流程,全分支覆蓋的測試,因此我們要按照原始需求以及需求分析的內(nèi)容去編寫測試用例,保證測試點(diǎn)不被遺漏。6.3.1客戶端在線考試測試表6.1客戶端在線考試測試表功能說明學(xué)生用戶在客戶端參加在線考試操作流程1.測試人員登錄客戶端點(diǎn)擊考試信息,教師用戶發(fā)布考試后,學(xué)生點(diǎn)擊“開始考試”便會進(jìn)入到考試界面,系統(tǒng)根據(jù)教師對考試時間的設(shè)置,頁面右上方顯示考試時間倒計時,測試人員依次答題,完成后點(diǎn)擊提交結(jié)束考試;2.測試人員只答少部分題,不要把題全部答完,等到系統(tǒng)倒計時結(jié)束,自動交卷。初始狀態(tài)說明學(xué)生用戶成功登錄在線學(xué)習(xí)系統(tǒng),并具備在線學(xué)習(xí)的權(quán)限測試結(jié)果1.測試人員在規(guī)定時間內(nèi)完成考試,然后系統(tǒng)自動判卷,并且能夠返回考試成績。2.在規(guī)定時間內(nèi)未完成全部考題,系統(tǒng)會自動提交試卷,自動判卷后返回考試成績。測試結(jié)論通過6.3.2后臺管理系統(tǒng)考試管理測試表6.2后臺管理系統(tǒng)考試管理測試表功能說明教師用戶在后臺管理系統(tǒng)進(jìn)行考試信息的管理操作流程1.在試題管理欄目里,點(diǎn)擊添加按鈕,填好試題信息后點(diǎn)擊確定。2.在考試管理欄目里,點(diǎn)擊添加按鈕,然后編輯相關(guān)信息,點(diǎn)擊確定,之后選中該記錄,點(diǎn)擊刪除按鈕。3.分別點(diǎn)擊試卷管理、答題管理、成績統(tǒng)計按鈕。初始狀態(tài)說明教師用戶成功登錄后臺管理系統(tǒng),并具備相應(yīng)的權(quán)限測試結(jié)果1.系統(tǒng)顯示添加試題成功2.首先成功發(fā)布了一條考試信息,再點(diǎn)擊刪除后,改考試信息被刪除。3.依次顯示考試試卷信息、答題詳情、成績統(tǒng)計折線圖。測試結(jié)論通過6.4測試結(jié)論測試和排錯常常被我們說成只會是一個階段,實際上這些事情根本就不會發(fā)生同一件事。簡單來說,排錯就是在你已經(jīng)明白了程序存在問題之后要做什么事。而這次測試就是在你已經(jīng)知道了程序可以繼續(xù)工作時要做的事情。而這次測試是在你認(rèn)為一個程序可以繼續(xù)工作的前提下,為想方設(shè)法地?fù)魯∷枰龅囊徽妆仨毚_定并且具有系統(tǒng)性的測試。6.5本章小結(jié)本章首先介紹了系統(tǒng)測試的目的與目標(biāo),給出了AndroidAPP基本測試的流程圖,然后分別對客戶端和后臺管理系統(tǒng)各功能做實驗測試,并分析該APP的功能,最后給出測試結(jié)論。第7章總結(jié)與展望7.1總結(jié)本文設(shè)計和實現(xiàn)了基于JavaEE和Android的考試系統(tǒng),該系統(tǒng)由基于JavaEE的后臺管理系統(tǒng)和基于Android的客戶端系統(tǒng)組成??蛻舳藢崿F(xiàn)了學(xué)生用戶注冊、登錄系統(tǒng)、個人信息查詢與管理、課程信息查詢、考試信息查詢、在線考試、成績查詢等基本功能,通過客戶端可以為用戶提供良好的體驗和服務(wù)。后臺管理系統(tǒng)采用JavaEE最新整合框架SpringMVC+Spring+Mybatis+Bootstrap+JQuery實現(xiàn)了注冊登錄、用戶管理、學(xué)科管理、考生管理、考試管理、試卷管理、試題管理、答題管理、成績統(tǒng)計、系統(tǒng)日志、系統(tǒng)設(shè)置等功能,在WebUI設(shè)計上采用Bootstrap技術(shù)使得Web頁面不僅能有效適配PC端,而且能適配手機(jī)以及平板電腦,再結(jié)合Ajax框架JQuery,使得動態(tài)數(shù)據(jù)異步刷新處理變得非常容易,提高了Web端的開發(fā)效率,增強(qiáng)了用戶使用體驗。本文是從可行性研究與需求分析、在線考試系統(tǒng)APP的設(shè)計、在線考試APP系統(tǒng)的實現(xiàn)及在線考試系統(tǒng)APP的測試等幾個方面進(jìn)行分析和研究的,具體流程為:首先介紹該系統(tǒng)的開發(fā)背景及意義,詳細(xì)分析了國內(nèi)外同類系統(tǒng)的現(xiàn)狀情況。接著介紹了開發(fā)該系統(tǒng)需要的研發(fā)技術(shù)及環(huán)境配置,然后根據(jù)在網(wǎng)上做的調(diào)研對該在線考試系統(tǒng)app做出了需求分析,并做了相應(yīng)的可行性研究,主要包括經(jīng)濟(jì)可行性、技術(shù)可行性、環(huán)境可行性;然后又在需求分析的基礎(chǔ)上對該在線考試系統(tǒng)APP先是進(jìn)行了總體設(shè)計,主要包括:詳細(xì)討論了系統(tǒng)數(shù)據(jù)流的設(shè)計情況、還有數(shù)據(jù)庫設(shè)計(包括E-R圖、數(shù)據(jù)流圖等),并分別對客戶端及后臺管理系統(tǒng)各功能做了詳細(xì)的分析設(shè)計,然后又根據(jù)系統(tǒng)設(shè)計的情況逐步實現(xiàn)它,接著對該系統(tǒng)各功能做了測試,最后完成了整個在線考試系統(tǒng)。7.2系統(tǒng)不足與改進(jìn)方案7.2.1系統(tǒng)存在的不足本次設(shè)計知識實現(xiàn)了在線考試系統(tǒng)的基本功能,為了是系統(tǒng)趨于完善和成熟,仍有許多不足之處:首先,在一個請求客戶端中由于同時使用了大量的異步收發(fā)請求,異步申請要求一般是基于多線程方式來自動實現(xiàn)的,因此在每當(dāng)一個異步申請要求中的數(shù)據(jù)包被發(fā)送過來時會同時自動開啟多個線程,占用了操作系統(tǒng)給每個請求客戶端所有的需要同時分配的一定數(shù)據(jù)空間和系統(tǒng)資源,這樣就很容易有可能間接導(dǎo)致或者直接降低了整個客戶端的系統(tǒng)性能。其次,系統(tǒng)中所采用的數(shù)據(jù)庫因為為保證整個系統(tǒng)的工作正確性,存在著一定的數(shù)據(jù)冗余,這就需要進(jìn)一步的優(yōu)化,提高整個系統(tǒng)的反饋和響應(yīng)速度。7.2.2系統(tǒng)的改進(jìn)方案根據(jù)以上分析的系統(tǒng)中的不足,本系統(tǒng)可以進(jìn)行如下改進(jìn)。首先,在客戶端要求數(shù)據(jù)時盡量減少異步請求的發(fā)生次數(shù)和總計計算數(shù)量,進(jìn)一步合理地優(yōu)化用戶界面和請求數(shù)據(jù)分配的方法,將所有可能被整合的異步請求都整合到一個客戶端中,減小了資源的浪費(fèi),提升了客戶端的性能。其次,對于數(shù)據(jù)庫的管理方式進(jìn)行了精簡與優(yōu)化,在能夠保證系統(tǒng)正常工作的前提下,去除了冗余的數(shù)據(jù)。并根據(jù)企業(yè)現(xiàn)有的情況,簡化了數(shù)據(jù)庫的結(jié)構(gòu),將所有內(nèi)容與相關(guān)性程度較高以及需要加強(qiáng)整理的各類數(shù)據(jù)庫全部進(jìn)行了合并,使得數(shù)據(jù)庫的查詢速度更快、也變得更穩(wěn)定。7.3展望如今即將迎接到來的便是一個行業(yè)快節(jié)奏的工業(yè)高新技術(shù)發(fā)展時代,也將迎接到來的也便是一個移動大數(shù)據(jù)的新時代,在未來的一個行業(yè)主流發(fā)展方向中也便是其中包括了移動人工智能和移動線上遠(yuǎn)程教育。因此對于中國線下的績效考核管理體系而言,對未來將可能會更加具有良好的線下市場前景。另外由于

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論