




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第第頁第1章緒論互聯網的出現給很多的行業帶來了翻天覆地的變化,線上購物的模式出現,人們可以足不出戶就買到喜歡的商品,同樣的,將刷題系統與互聯網結合起來可以使得印刷卷紙的資源得到節約,一道題目可以被多個試卷使用,學生刷題的錯題可以自動保存記錄等等,所以開發一套線上刷題系統很有意義。1.1課題背景隨著時代的快速發展,互聯網已經普及到我們生活的方方面面,對于學生來說,互聯網也帶給學生嶄新的刷題方式REF_Ref135907585\r\h[1]。網絡使學生刷題變得靈活而有趣,學生們不只可以通過傳統課堂刷題提高掌握知識的程度,還可以網上刷題,并且網上刷題跟傳統課堂刷題相比有很多的優勢。從兩年前疫情爆發到現在,全國很多省份的很多城市都先后受到疫情的影響而無法正常開學,這也使學校被迫改為網上授課,可見網絡課程的發展前景之好,需求之大,甚至可以說線上學習已經成為學生學習的剛需。網絡教學不同于以往的傳統學習方式,傳統教學有時間、地域、內容等多方面的限制,這些限制網絡教學都沒有。每個人都是獨一無二的,每個學生都有自己的特點,所以線下模式很難做到根據不同的學生制定不同的學習方式。而在網上而不同,網上的教學方式多種多樣,每個學生都選擇自己喜歡的方式學習,這樣對學生來說學習方式是最適合自己的,選擇自己狀態最好的時間段學習,這樣學生的學習效率也是最高的,成績自然也會好。這樣學生們就會體驗到學習中的快樂,從而愛上學習。并且網絡課程的涵蓋面更廣,學生的收獲就會更豐富。社會的發展離不開創新,網上學習是學習教育的一大創新,為社會發展提供了新方向REF_Ref135907704\r\h[2]。從2019年12月到現在,因為疫情影響很多課程布置作業成為一個難點,布置的作業了教師看不到真實的完成情況,正確與否跟不可知,題目的正確率更無法得知,而線上刷題系統可以有效的解決這些問題,不僅會統計學生做題的情況、分數、完成時間等還有錯題本可以幫助學生記錄做題過程中所出現的錯題,所以線上刷題系統必然會成為一種趨勢。1.1.1國內研究現狀中國許多學校長期以來一直使用傳統的手工登記方法來統計每天的作業或刷題情況。這種方法很復雜,容易出錯,不準確,不透明,不能實時工作,而且依賴人為因素,增加了人員成本。當前,很多高校都有不同的信息系統,從原來單一的C/S體系向B/S結構體系發展REF_Ref135907731\r\h[3],到現在的B/S、C/S相結合,在不同的局域網絡中,通過這種方式實現不同的業務模式,既可以方便學生的日常生活,又可以提高學校的安全管理。比如,葛方振和饒運等人開發了基于三層B/S、C/S架構的刷題管理系統,其核心內容是B/S和C/S結構對考試系統進行了分析REF_Ref135907749\r\h[4]。總之,考試管理系統的研發和應用,都要因勢利導。通過統計和管理學生的考試情況,實現了學校對學生的管理,提高了教學管理的效率。1.1.2國外研究現狀2018年的時候,國外學者指出管理有效的考試是對教師的一大挑戰,他們需要一個快速而準確的方法REF_Ref135907762\r\h[5]。傳統記錄考試率的方法往往讓教師和學生感到麻煩,而且耗費時間,尤其是在處理大量學生的時候。因為電子信息技術是從國外發展起來的,他們的知識和技術都很扎實,學習環境也很好,相比起考試管理,國外的相關知識技術都要成熟和穩定。例如指紋考試系統,其特點是將傳統考試模式與生物識別技術相結合,利用基于細節點的指紋識別原理進行指紋采集,通過按手印進行考試管理,從而達到對高校教職工和學生考試管理的目的REF_Ref135907774\r\h[6]。為了確保數據的完整性和安全性,本系統具有針對不同使用者的不同角色及權限,可以設置多個管理員,對每個人都有同樣的權限REF_Ref135907787\r\h[7],管理員可以查看其他學生的考試記錄,而普通用戶則只能使用自己的賬號和密碼登錄,也就是說,只能查看自己的考試記錄。1.2課題研究目的與意義在現在這個快速發展的時代,社會對人才的知識儲備非常看重,也因此,學生的競爭壓力逐漸增大REF_Ref135907801\r\h[8],教師的教學壓力也逐漸增大。普通的刷題需要大量的紙張,這些紙張使用一次之后就無法再使用,同時還需要大量的印刷資源去印刷需要刷的題,這導致了資源的浪費,同時普通的刷題方式試卷不易保存,做過的錯題需要自己手動去總結記錄,這也浪費了學生大量的時間資源。而在線刷題系統可以有效的解決這些問題,通過在線刷題可以實現試卷的重復使用、試題的重復使用、錯題本的自動記錄等,不僅解決了紙張的浪費還為學生爭取了大量的時間。1.2.1課題研究的意義在線刷題系統的最大優勢不僅僅是可以快速刷題,還是內容多而深,更是學習方式更靈活。它為學生們提供了現實課堂中無法提供的選擇空間,也可以找到更適合自己的刷題方式REF_Ref135907814\r\h[9]。在線刷題學習是傳統課堂的延伸和拓展,是學生課下自主學習的一個很好的平臺,也是學生突破學校教學束縛,創造新型學習方法,發現自己更多可能的機會,這樣與傳統課堂相比,就會有更好的學習氣氛,學習效率也會更高,最重要的是學生們都會享受在線刷題學習過程REF_Ref135907828\r\h[10]。在線刷題系統是教育信息化的需要建立現代的遠程教育,以及進行終生教學是現代教育信息化的一項非常關鍵的任務,而所有這個的實現,都是必須有在線刷題的,也因此在在線刷題發展的過程中,既可以合理的充分發揮各種教學資源的優點,同時也是可以適應世界教學發展的潮流的。能夠進行課堂考試方式的變革。通過以上的內容,我們已經了解了在線刷題系統開發的意義了,可見,在線刷題系統開發在很多的方面都是有好處的,它不僅可以針對性的練習來提升成績,而且還可以改變傳統的教育方式,讓大家隨時隨地的去學習,所以在線刷題系統的學習是非常有意義的,對人們有極大的幫助,能滿足用戶的需求。1.2.2課題研究的目的1、內容豐富,教學/學習方式多樣。本系統課程涵蓋廣,大家都能找到自己想學的題型。學生選擇刷題的形式不受限制,學生可以根據自己的特點和優勢創造或尋找到屬于自己的學習方法,比如有的學生不擅長多選題,可以把刷題的重點放在這類題型上。2、方便學習交流。本系統設有消息中心等功能模塊,學生可以在此表達自己的觀點和感受,與老師和其他同學們互動,這種交流不受時間,空間,地域的限制,還不受性格限制,現實中不好意思找老師的學生也有機會向老師表達自己的想法。3、功能更加齊全。本系統中,學生在考試前,可以先在線選擇試卷,有多種類型的試卷供學生選擇。1.3相關技術介紹本系統使用的是Java語言,它是現在使用最廣泛的語言。主要作為開發軟件的后端使用。Java的四大特性帶給了它的實用性,他的JVM機制可以幫它在多平臺上快速的運行REF_Ref135907983\r\h[11],做到一套代碼多平臺使用,同時它的垃圾自動回收機制也使得開發效率非常高,不用手動的去清除垃圾降低了代碼量,在它衍生出的Spring使得它的開發效率大大增高,成為一門成熟穩定的開發語言。1.3.1Java語言Java語言是一門面相對象的編程語言,它即使編譯型語言也是解釋型語言,也正是它集編譯型語言與解釋型語言于一體,使得它具有跨平臺的特性,Java底層的JVM可以實現垃圾的自動回收,在開發的過程中,開發人員可以不用花費大量的時間和經歷去考慮系統運行中所產生的垃圾。Java語言的生態非常好,基于Java而產生的SpringBoot框架給Java的使用帶來了極大的便利,同時Java對各種第三方組件的適配性非常好,這也使得Java開發的軟件可以很容器的提高性能。1.3.2MySQL數據庫MySQL使用最常用的關系型數據庫REF_Ref135908107\r\h[12]。由于MySQL體積小、安裝方便、速度快、維護成本較低,而且是開源免費的數據庫,兼容性好,支持多個系統,所以中小型網站開發人員選擇它作為他們網站的數據庫并不奇怪。MySQL的底層的InnoDB索引使得Mysql的鎖力度可以做的很小,在使用鎖較多的場景可以極大的提高數據庫的性能,同時InnoDB索引所使用的B+樹可以降低存儲樹的高度,提高查詢的速度。1.3.3SpringBoot框架SpringBoot是現在Java語言使用最多也是功能最強大的框架,SpringBoot主要有IOC和AOP兩大特性,IOC通過控制反轉可以將控制權限交給容器,用戶需要使用拿來用就行,創建的工作都交給了SpringBoot容器,AOP面相切面編程,通過該技術可以輕松的實現一些需要有切面的操作,比如日志的記錄、包路徑掃描等等。1.4系統主要解決的問題及論文結構1.4.1系統主要解決的問題普通的刷題方式存在著大量的問題,如浪費紙張資源、占用大量學生整理時間、不易保存錯題、教師難以總結等問題,在線刷題系統通過題目試卷的編輯可以做到一次編輯多次使用、通過對錯題本的自動記錄可以實現錯題整理的時間節約、對學生做題正確率的統計可以減少教師統計難的問題。極大的增加了學生的學習效率和教師的教學效率。1.4.2論文結構第1章緒論,對系統進行了比較深入的探索,在課下進行了一些總結,主要展示了本系統的一些研究方法和其背后的意義。第2章需求分析,通過查閱資料對系統進行了需求分析,通過可行性分析、功能需求分析對本系統的需求進行了分析和總結第3章系統設計,系統設計主要是依據需求分析進行了總體功能設計,以及各個功能模塊的描述,解決本系統涉及到的一些權限問題,以及進行了系統數據庫的設計。第4章系統的詳細設計與實現,主要對系統進行了詳細的設計,通過流程圖、時序圖的方式對了各個功能進行了詳細的設計。第5章系統測試,主要對系統的主要功能模塊進行了系統化的測試,通過測試發現并改進系統的一些隱藏錯誤,提升系統的可用性和穩定性。第6章結論,總結了該項目所實現的功能,解決了哪些問題,以及未來項目的優化及展望。
第2章需求分析隨著互聯網的快速發展,人們的生活方式也有了很大的不同,網絡逐漸進入到了每個家庭的生活中,也成為了每個家庭生活中不可缺少的一部分,在當今的互聯網項目開發中,要想通過最少的成本最小的試錯去獲得項目的成功,那么需求分析是不可或缺的一部分。2.1可行性分析我們面對的問題,不一定都有明確的答案,所以很多時候,在無法馬上得到答案的時候,就必須進行一項可行性的調查來決定這個問題的價值。需求分析的目標是設計出能全面滿足廣大用戶需求的軟件。但是,在沒有滿足使用者要求的情況下,產品的設計和編程有多好并不重要,因為這并不能讓使用者滿意。可行性研究旨在以最少的代價和最快的速度來對問題進行客觀的分析。2.1.1技術可行性分析在線刷題系統在開發中使用了Vue.js框架、SpringBoot框架、Java技術和MySQL數據庫等技術和工具REF_Ref135908139\r\h[13]。首先所使用的工具和技術都是當前主流且經過項目開發驗證過的,其穩定性更是得到了開發者的一致好評;其次在課堂上都對這些工具和技術進行過講授,而在課下也通過使用這些技術完成過一些小型項目的開發,因此在使用上不存在任何問題,由此技術可行。2.1.2經濟可行性分析經濟也是一個軟件系統在開發中所必須考慮的問題REF_Ref135908152\r\h[14]。首先系統在開發中只需使用自備的計算機就可以完成全部開發工作,而開發工具和技術都是開源性質的也不需繳納版權費用,還要考慮的就是人工,都是對于一個畢業設計課題來說可以忽略;其次在當前的大環境下,開發出一款可以為用戶提供全面的信息服務系統一定會受到歡迎REF_Ref135908164\r\h[15]。由此經濟可行。2.1.3操作可行性分析在線刷題系統是依托互聯網進行開發的,而互聯網的普及也對當前人們的生活產生了極大的影響,未來可能不具備互聯網操作能力可能會寸步難行。本系統界面設計簡潔并通過功能定義即可完成操作,即便沒有使用過互聯網的學生也可以在線進行考試、錯題查看以及成績查詢等功能使用,由此操作可行。2.2功能需求分析在線刷題系統是為有學習需求的用戶而設計出的提供學校服務的軟件,可為學生提供線上考試、錯題查看、成績查詢,管理員可對卷題、任務、成績等信息進行管理,可審核學生的考試信息。其各用戶的功能需求如下。2.2.1參與者需求模型的建立本在線刷題系統分為管理員和學生兩種角色,其中學生具有刷題、查看試卷、查看錯題本、查看任務、查看消息等功能,管理員具有編輯試卷、編輯試題、發布任務、查看答題情況等功能。參與者詞匯表如圖2-1所示。表2-1在線刷題系統參與者詞匯表序號詞匯同義詞描述1學生用戶、刷題者學生可以使用在線刷題系統提供的登錄、刷題、錯題本等功能實現快速刷題快速糾錯2管理員教師、出題人管理員是可以管理用戶信息、編輯題目、編輯試卷、發布任務等2.2.2用例詞匯表用例詞匯表如表2-2所示。表2-2用例詞匯表序號用例名稱用例描述預期的參與者與角色1注冊登錄該用例描述一個用戶注冊賬號并登錄的操作游客,學生,管理員2查看個人中心該用例描述一個學生查看個人信息的操作學生3查看試卷中心該用例描述一個學生查看試卷中心的操作學生、管理員4查看考試記錄該用例描述一個學生查看自己的考試記錄的操作學生、管理員5查看任務中心該用例描述一個學生查看自己任務中心的操作學生、管理員6查看錯題本該用例描述一個學生查看自己的錯題本信息學生表2-2(續)序號用例名稱用例描述預期的參與者與角色7答題該用例描述一個學生進入試卷并答題的操作學生8查看消息中心該用例描述一個學生查看消息中心的操作學生、管理員9管理用戶該用例描述一個管理員管理用戶的操作管理員10管理題卷該用例描述一個管理員管理題目、試卷的操作管理員11管理任務該用例描述一個管理員管理任務的操作管理員12管理教育該用例描述一個管理員管理學科、年級信息的操作管理員13管理成績該用例描述一個管理員查看學生答題成績的操作管理員14管理消息中心該用例描述一個管理員發布消息查看消息詳情的操作管理員15管理日志中心該用例描述一個管理員查看日志的操作管理員2.2.3學生用戶功能需求分析學生用戶的功能需求如下:1、注冊登錄:沒有賬號的用戶可以通過注冊獲取賬號,注冊成功可以通過輸入用戶名密碼登錄。2、個人中心:進入個人中心頁面可以看到自己的用戶動態和個人資料,個人資料頁面可以查詢修改自己的個人信息。3、試卷中心:查詢搜索已發布的試卷。4、考試記錄:查看自己已經答過的試卷記錄,如果試卷中有多選題、填空題、簡答題沒有批改的會有批改按鈕進行批改。5、任務中心:管理員發布的任務,一個任務包含多個試卷,每個學生只能做一次。6、錯題本:答錯題目會自動記錄到錯題本,錯題本會顯示題目基本信息以自己做錯的答案和正確答案。7、考試:用戶選擇試題進行答題測試,支持多種答題方式,提交試卷之后會自動判斷分數并彈框顯示。8、消息中心:可以接收到管理員發送的消息,如果有消息還未讀取會有未讀消息條數。如圖2-1所示。圖2-1學生用例圖個人中心管理用例描述如表所示。表2-3學生個人中心模塊描述用例條目描述用例名稱管理個人信息模塊主要參與者學生其他參與者無描述查看、修改個人信息觸發條件學生點擊右上角頭像下拉框里的個人中心按鈕前置條件學生已經注冊成功并且賬號狀態沒有被禁用學生已經成功登錄到刷題系統后置條件無表2-3(續)用例條目描述基本流程1.學生點擊右上角頭像下拉框里的個人中心按鈕2.系統后臺去查找這個學生的個人信息并返回給前臺3.默認是用戶動態頁面,主要顯示了用戶的一些操作記錄4.點擊個人資料修改按鈕可以去修改自己個人信息替代流程無結束用戶關閉瀏覽器或者退出登錄或者點擊左上角回到主頁的按鈕實現約束和說明1.修改年齡只能輸入整數2.修改性別只能選擇男或女3.出生日期只能選擇時間其他事件流無考試用例描述如表所示。表2-4考試模塊描述用例條目描述用例名稱學生答題模塊主要參與者學生其他參與者無描述學生點擊試卷開始答題觸發條件學生點擊要答題的試卷前置條件只能對已存在的試卷答題學生已經成功登錄到刷題系統后置條件無基本流程1.學生點擊試卷中心2.點擊要答題的試卷3.回答試卷中的問題4.提交試卷替代流程無結束學生提交試卷或者點擊取消按鈕實現約束和說明1.選擇題只能選擇已有選項2.判斷題只能選擇對或錯其他事件流無2.2.4管理員用戶功能分析管理員用戶的功能需求如下:1、管理用戶:維護用戶的是否可用,個人信息、日志等。2、管理試卷:管理員通過管理試卷可以創建編輯試卷信息。3、管理題目:管理員通過管理題目可以編輯查看題目信息。4、管理學科:管理員通過該功能能夠對學科信息進行維護。5、管理任務:管理員通過該功能能夠對任務信息進行增刪改查操作。6、管理答卷:管理員通過該功能能夠對答卷信息進行增刪改查操作。7、管理消息:管理員可以通過該功能對消息進行增刪改查。8、管理消息:管理員可以通過該功能查看系統的運行日志。用例圖如圖2-2所示。圖2-2管理員用例圖試卷用例描述如下表所示。表2-5試卷管理模塊描述用例條目描述用例名稱試卷管理模塊主要參與者管理員其他參與者無描述提供新增、修改、刪除、查閱試卷功能觸發條件管理員點擊試卷列表按鈕前置條件管理員成功登錄到系統后置條件無基本流程1.點擊題卷管理2.點擊試卷列表3.增刪改查試卷替代流程無結束管理員退出登錄或選擇其他頁面實現約束和說明1.新添加的試卷不符合要求時會添加失敗2.修改的試卷不符合要求時會修改失敗其他事件流無任務用例描述如下表所示。表2-6任務管理模塊描述用例條目描述用例名稱任務管理模塊主要參與者管理員其他參與者無描述提供新增、修改、刪除、查閱任務功能觸發條件管理員點擊任務管理按鈕前置條件管理員成功登錄到系統后置條件無基本流程1.點擊任務管理2.點擊任務列表查看、修改、刪除任務3.點擊任務創建創建任務替代流程無結束管理員退出登錄或選擇其他頁面實現約束和說明1.新添加的任務不符合要求時會添加失敗2.修改的任務不符合要求時會修改失敗其他事件流無教育用例描述如下表所示。表2-7教育管理模塊描述用例條目描述用例名稱教育管理模塊表2-7(續)用例條目描述主要參與者管理員其他參與者無描述提供新增、修改、刪除、查學科功能觸發條件管理員點擊學科列表按鈕前置條件管理員成功登錄到系統后置條件無基本流程2.點擊學科列表增刪改查學科替代流程無結束管理員退出登錄或選擇其他頁面實現約束和說明1.新添加的學科不符合要求時會添加失敗2.修改的學科不符合要求時會修改失敗其他事件流無2.3本章小結本章主要從技術、操作、經濟三個角度去分析在線刷題系統是否可行,并通過對不同角色的功能需求進行分析,并對核心用例進行了詳細的描述。
第3章系統設計第三章主要是對在線刷題系統的總體功能進行設計,并對核心功能刷提功能、出卷功能、消息功能、任務功能等模塊進行了功能的詳細說明,并對系統進行了概念模型設計以及邏輯結構設計。3.1系統功能模塊設計本系統前臺包含注冊登錄、任務中心、考試、考試記錄、錯題本、個人信息和消息信息模塊,后臺包含登錄、用戶管理、學科管理、試卷管理、試題管理、任務列表、消息管理、個人中心和日志管理模塊,具體如圖3-1所示。圖3-1在線刷題系統功能結構圖1、前臺功能:(1)注冊登錄:用戶可以點擊注冊按鈕進行注冊,輸入個人信息和賬號密碼后注冊成功進行登錄。(2)任務中心:管理員選擇多個試卷編輯為任務進行發布。(3)考試:用戶選擇試題進行答題測試,支持多種答題方式。(4)考試記錄:學生可以查看自己已經答過的試卷的信息。(5)錯題本:錯題本自動記錄試卷中的錯題信息,學生進入錯題本進行查看。(6)個人信息:進入個人信息頁面可以查看用戶本人的個人信息。(7)消息中心:可以接收到管理員發送的消息。2、后臺管理端:(1)登錄:管理員通過在管理員登錄界面登錄。(2)用戶管理:管理員可以查看、編輯、選擇是否啟用用戶。(3)學科管理:管理員可在不同的年級建立編輯不同的學科。(4)試卷管理:管理員可選擇不同的題目類型、題目組成試卷。(5)試題管理:管理員可編輯題目的類型,如單選題、多選題、判斷題等,選擇題目類型之后編輯題目的基本信息。(6)任務列表:管理員選擇不同的試卷組成任務發送給用戶。(7)消息管理:管理員可編輯消息選擇發送給不同的學生。(8)個人中心:管理員可查看該管理員賬號的個人信息。(9)日志管理:管理員可查看系統運行產生的日志。3.2數據庫設計數據庫設計是通過需求分析確定的功能,根據這些功能分析可能會產生的實體以及實體間的聯系,根據所需的ER圖能夠使用戶更加清晰的了解到數據與對象之間的關系REF_Ref135908184\r\h[16],根據這些聯系設計分析出數據庫中的表結構。3.2.1數據庫設計原則 數據庫設計時要使其表功能能夠穩定、安全、可靠,以使數據庫的性能達到一個相對較好的狀態REF_Ref135908198\r\h[17],提升用戶的體驗,在數據的管理、備份、優化等方面必須滿足以下要求:1、數據庫的表名要規范;2、降低冗余,提高程序訪問速度;3、能夠使用索引的地方要創建索引,提高查詢速度;4、主鍵有序自增,防止索引重排序;5、經常修改的字段,禁止使用索引;6、使用索引的時候,注意最左前綴原則;7、多對多的聯系要創建新的聯系表;8、長度確定的字段使用char類型加長度;9、建立表的時候要給每個字段加注釋;3.2.2數據庫E-R圖設計圖3-2在線刷題系統ER圖在線刷題系統采用MySQL數據庫完成學生、管理員、學科、任務、消息、試卷題目答案、試卷、試題等實體的設計,具體如下:學生實體描述的是與學生的屬性信息,其實體屬性圖設計如圖3-3所示。圖3-3學生實體屬性圖管理員實體描述的是管理員屬性相關的信息,其實體屬性圖設計如圖3-4所示。圖3-4管理員實體屬性圖試卷實體描述的是試卷的信息,其實體屬性圖設計如圖3-5所示。圖3-5試卷實體屬性圖任務實體描述的是任務的信息,其實體屬性圖設計如圖3-6所示。圖3-6任務實體屬性圖試題實體描述的是為試題的信息,其實體屬性圖設計如圖3-7所示。圖3-7試題實體屬性圖試卷題目答案實體描述的是學生的錯題本信息,其實體屬性圖設計如圖3-8所示。圖3-8錯題本實體屬性圖學科實體描述的是年級名稱、學科名稱等屬性,其實體屬性圖設計如圖3-9所示。圖3-9錯題本實體屬性圖消息實體描述的是消息的基本信息,屬性圖設計如圖3-10所示。圖3-10錯題本實體屬性圖3.2.3數據庫表設計在線刷題系統利用開源的MySQL數據庫來完成提供給管理員以及學生來完成與個人相關的各類信息的管理,包括試卷、任務及試卷答案等信息,其數據庫表設計如下:1、試卷信息表表3-1試卷信息表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2namevarchar255是否試卷名稱3subject_idint11是否科目編號4paper_typeint11否否類型5grade_levelint11是否難度6scoreint11是否分數7question_countint11是否問題數量8suggest_timeint11是否計時9limit_start_timedatetime是否開始時間10limit_end_timedatetime是否結束時間15frame_text_content_idint11是否主框內容16create_userint11是否創建用戶17create_timedatetime是否創建日期18deletedbit1是否刪除標記19task_exam_idint11是否任務編號2、試卷答案表表3-2試卷答案表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2exam_paper_idint11否否試卷Id表3-2(續)序號字段名稱字段類型長度允許為空主鍵注釋3paper_namevarchar255否否科目編號4paper_typeint11是否試卷類型5subject_idint11否否科目編號6system_scoreint11是否系統總分7user_scoreint11否否用戶分數8paper_scoreint11是否分數9question_correctint11是否正確答案10question_countint11是否問題數量11do_timeint11是否答題時長12statusint11是否狀態13create_userint11是否創建用戶14create_timedatetime是否創建時間15task_exam_idint11是否任務編號3、試卷題目答案表表3-3試卷題目答案表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2question_idint11否否問題編號3exam_paper_idint11否否試卷編號4exam_paper_answer_idint11否否答案編號5question_typeint11是否類型6subject_idint11否否科目編號7customer_scoreint11是否用戶得分8question_scoreint11是否題目分數9question_text_content_idint11是否編號10answervarchar255是否答案11text_content_idint11是否試題編號12do_rightbit1是否是否正確13create_userint11是否創建人14create_timedatetime是否創建時間15item_orderint11是否排序4、學生和管理員表表3-4學生表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2user_uuidvarchar200是否uuid3user_namevarchar200否否用戶名表3-4(續)序號字段名稱字段類型長度允許為空主鍵注釋4passwordvarchar200否否密碼6real_namevarchar50是否真實姓名7ageint11是否年齡8sexint11是否性別9birth_daydatetime是否生日10user_levelint11否否年級11phonevarchar20是否電話12roleint11是否角色13statusint11否否狀態14image_pathvarchar1000是否頭像地址15create_timedatetime是否創建時間16modify_timedatetime是否更改時間17last_active_timedatetime是否最后登錄時間18deletedbit1是否是否刪除19wx_open_idvarchar50是否微信id5、任務表表3-5任務表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2titlevarchar100否否主題3grade_levelint11是否年級4frame_text_content_idint11否否試題編號5create_userint11是否創建人6create_timedatetime是否時間7deletedbit1是否刪除標記8create_user_namevarchar200是否學生姓名6、消息表表3-6消息表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2titlevarchar50否否主題3contentvarchar500否否內容4create_timedatetime否否時間5send_user_idint11否否發送人6send_user_namevarchar50否否發送人姓名7send_real_namevarchar50否否真實姓名8receive_user_countint11否否接收人數9read_countint11是否已讀人數7、學科表表3-7學科表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2namevarchar50是否名稱3levelint11是否級別4level_namevarchar50是否級別名稱5item_orderint11是否排序10deletedbit1是否是否刪除8、用戶消息表表3-8用戶消息表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2message_idint11否否消息內容ID3receive_user_idint50否否接收人ID4receive_user_namevarchar50否否接收人用戶名5receive_real_namevarchar50是否真實姓名6readedbit1是否是否已讀7create_timedatetime是否8read_timedatetime是否讀取時間9、試題表表3-9試題結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2question_typeint11是否試題類型3subject_idint11否否編號4scoreint11是否分數5grade_levelint11是否級別6difficultint11是否難度7correcttext500是否正確答案8info_text_content_idint11是否文件編號9create_userint11是否創建人名10statusint11是否狀態11create_timedatetime是否創建時間12deletedbit1是否是否刪除10、用戶任務表表3-10用戶任務表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2task_exam_idint11否否任務ID3create_userint11否否創建人4create_timedatetime是否創建時間5text_content_idint11是否完成情況11、文本表表3-11文本表結構序號字段名稱字段類型長度允許為空主鍵注釋1idint11否是主鍵2contenttext500是否文本3create_timedatetime是否創建時間3.3本章小結本章對各個功能模塊進行了詳細說明,以及使用ER圖、實體圖、數據庫表的方式對在線刷題系統的數據庫設計進行了詳細的說明。
第4章系統詳細設計與實現通過對在線刷題系統進行總體設計之后,對于在線刷題系統的整個流程有了宏觀上的了解,這章將對在線刷題系統進行詳細的設計,通過對系統各個細節的設計使得該系統的功能健壯可行。4.1用戶登錄本在線刷題系統有兩個角色,分別是管理員與學生。系統使用者根據不同的身份選擇不同的URL進入到登錄頁面,輸入賬號密碼,如果賬號密碼正確則回去校驗是否是可用狀態,最后根據狀態是否可用來決定是否可以成功登錄。4.1.1用戶登錄時序圖用戶登錄時要輸入賬號密碼,登錄之后會根據賬號密碼進行加密,對加密的字段與數據庫里存儲的密碼字段去做對比,如果對比一致那么會對該用戶進行授權,并將授權token保存在瀏覽器,短時間內不用重復登錄即可使用該系統。用戶登錄時序圖如圖4-1所示。圖4-1用戶登錄時序圖4.1.2用戶登錄的實現用戶根據URL進入到不同的登錄頁面后,輸入用戶名密碼登錄。用戶登錄流程圖如圖4-2所示。圖4-2用戶登錄流程圖用戶登錄界面圖如圖4-3所示。圖4-3用戶登錄界面圖4.2編輯題目功能的設計與實現編輯題目功能可以將試卷與題目分離開,可以使得一個題目可以被多個試卷使用,降低了編輯試卷的工作量,同時有單選題、多選題、判斷題、簡答題等不同類型的題型。4.2.1編輯題目時序圖管理員登錄成功進入編輯題目的頁面,先選擇題目的類型,之后對題目進行編輯,如果是選擇題則需要填寫正確的選項,如果是判斷題需要輸入答案是正確還是錯誤,編輯成功之后提交題目。編輯題目時序圖如圖4-4所示。圖4-4編輯題目時序圖4.2.2編輯題目功能的實現管理員在編輯題目時需要選擇題目的類型,在編輯完答案之后給出正確答案和題目的難度就可以提交題目。編輯題目流程圖如圖4-5所示。圖4-5編輯題目流程圖編輯題目界面圖如圖4-6、4-7所示。圖4-6選擇題目類型界面圖圖4-7編輯題目界面圖4.3編輯試卷功能的設計與實現編輯試卷功能可以選擇不同類型的試卷,可以選擇固定試卷,時段試卷,任務試卷,固定試卷可以在任何時間答題,時段試卷只能在時間段內答題,任務試卷只有發布任務的時候才能使用。編輯試卷的時候可以選擇之前已經編輯好的題目進行組卷,可以選擇的類型有選擇題、多選題、判斷題、填空題、簡答題,選擇好題目之后會設置試卷的分數。4.3.1編輯試卷功能時序圖編輯試卷時選擇完試卷的類型,之后選擇試卷所對應的年紀、科目,之后可以添加標題,標題對應的是題目的類型,填寫完標題之后可以選擇多個題目在這個標題下,時段試卷要選擇答題的時間段,之后便可以提交試卷。編輯試卷時序圖如圖4-8所示。圖4-8編輯試卷時序圖4.3.2編輯試卷功能的實現編輯試卷首先需要進入到編輯試卷的頁面,進入頁面之后會有選項進行選擇這套試卷對應的年級,選擇完年級之后可以編輯標簽,然后選擇需要出的題目,如果有題目的話可以進行選擇,如果題庫里沒有題目的話會跳過選擇題目的流程,結束本次出卷,選擇完相應的題目之后選擇試卷的類型,可以選擇時固定試卷、時段試卷、任務試卷,然后發布試卷。編輯試卷流程圖如圖4-9所示。圖4-9編輯試卷流程圖編輯試卷界面圖如圖4-10所示。圖4-10編輯試卷界面圖4.4學生答題功能的設計與實現學生登錄成功之后可以選擇想要答題的試卷進行答題,答題試卷的展示會根據學生的年級去只展示該年級的試卷,不在答題時間段內的時段試卷也不會進行展示。4.4.1學生答題功能時序圖學生選擇完相對應的試卷之后進行答題頁面,題目可以作答也可以不作答,不作答的部分不按照錯誤去判分,答完題目便可提交試卷,之后會返回答題的分數。學生答題時序圖如圖4-11所示。圖4-11學生答題時序圖4.4.2學生答題功能的實現答題時單選題只能選擇一個答案,判斷題只能選擇對與錯,多選題可以選擇多個答案,簡答題可以選擇輸入答案,提交之后會判分并彈窗顯示。學生答題流程圖如圖4-12所示。圖4-12學生答題流程圖學生答題界面圖如圖4-13所示。圖4-13學生答題界面圖4.5錯題本功能的設計與實現錯題本記錄學生答題時答錯的錯題,記錄了學生答錯題的題目答錯題的答案以及正確的答案,在學生學習的過程中可以有針對性的去查看自己的錯題,提高了學生的學習效率。4.5.1錯題本功能時序圖學生登錄成功之后查看錯題本,會向后端服務發送一條請求,根據學生的id去查詢這個學生的錯題并返回。錯題本時序圖如圖4-14所示。圖4-14錯題本時序圖4.5.2錯題本功能的實現錯題本頁面顯示有錯題的題型、學科、答題時間,查看錯題詳情時會顯示錯題的題目,錯題的答案以及正確的答案。錯題本流程圖如圖4-15所示。圖4-15錯題本流程圖錯題本界面圖如圖4-16所示。圖4-16錯題本界面圖4.6本章小結本章的主要任務是對系統的用戶登錄模塊、管理員編輯題目模塊、管理員編輯試卷模塊、學生答題模塊、學生查看錯題本模塊做了進一步的詳細設計和闡述。第5章系統測試系統測試是將系統放在特定的環境里,使用科學有效的測試方法對項目的正常運行進行系統性的測試,以此來發現開發過程中所出現的一些問題,并且及時的去修復這些問題,以此降低系統上線運行出錯的概率,提升系統的可用性。5.1軟件測試的方法在軟件開發的整體流程中,對軟件進行測試的環節是軟件開發必不可少的一部分,比較典型的軟件測試有白盒、黑盒、灰盒等測試方法,目前測試方法使用比較多的有白盒測試、黑盒測試REF_Ref135908215\r\h[18]。1、白盒測試白盒測試主要關注的是根據軟件的整體內部結構去設計一些測試用例,這些用例的設計需要開發人員也參與其中,通過這些用例去發現開發中的一些編碼規范、邊界條件制定所出現的bug,對程序的邏輯路徑進行全覆蓋性的測試REF_Ref135908226\r\h[19]。2、黑盒測試黑盒測試常常被稱為功能測試或者被稱為數據驅動測試,在黑盒測試的過程中,程序本身的內部結構是看不到的,測試人員需要把自己比作實際用戶,在不了解程序內部結構的情況下對程序進行測試,通過測試發現程序運行中可能出現的錯誤。5.2系統功能測試針對不同用戶對系統進行測試,以學生為例,把學生模塊下的登錄,在線考試,每個功能逐一進行測試,以管理員為例,把管理員模塊下的登錄,試卷管理模塊功能進行測試,檢查系統的真實反應和預期結果是否一致,從而發現系統存在的問題,進而更改代碼上的錯誤,檢查整個系統使用過程中是否符合現實使用習慣,發現不符的地方從而發現代碼上或者邏輯上的缺陷,改正后再進行測試,直到所有操作都滿足預期輸出,以此來完善系統REF_Ref135908238\r\h[20]。下面幾張表例舉了幾個測試的具體內容。5.2.1管理員登錄功能測試測試編號:K001目的:測試管理員登錄功能是否穩定可用前提:進入管理員登錄頁面管理員登錄測試用例如表5-1所示。表5-1管理員登錄模塊測試用例表序號輸入數據操作及步驟預期結果實際結果1類型:管理員用戶名:ef01密碼:123456在管理員登錄界面,填寫賬號、密碼,進行登錄操作。提示用戶名不能少于五個字符。與預期結果一致2類型:管理員用戶名:密碼:123456在管理員登錄界面,填寫賬號、密碼,進行登錄操作。提示用戶名不能少于五個字符。與預期結果一致3類型:管理員用戶名:admin密碼:在管理員登錄界面,填寫賬號,不填寫密碼,進行登錄操作。提示密碼不能少于五個字符。與預期結果一致4類型:管理員用戶名:admin密碼:12345在管理員登錄界面,填寫賬號、密碼,進行登錄操作。提示用戶名或密碼錯誤與預期結果一致5用戶名:123456密碼:123456在管理員登錄界面,填寫被禁用的賬號、密碼,進行登錄操作。提示該賬號被禁用與預期結果一致6類型:管理員用戶名:admin密碼:123456在管理員登錄界面,填寫賬號、密碼,進行登錄操作。提示登錄成功并跳轉頁面與預期結果一致測試結果:經過測試,管理員登錄測試結果正確,如果輸入的用戶名或者輸入的密碼不夠5個字符會有提示,不填寫賬號密碼也會有相應的提示,如果賬號密碼正確能夠登錄成功并且跳轉頁面。5.2.2題目列表功能測試測試編號:K002目的:測試題目列表功能是否穩定可用前提:管理員登錄成功進入題目列表頁面題目列表測試用例如表5-2所示。表5-2題目列表模塊測試用例表序號輸入數據操作及步驟預期結果實際結果1進入題目列表頁面點擊添加題目選擇相應類型的題目,不填入所有必填信息提交。提交失敗,提示需要填入必填信息與預期結果一致2進入題目列表頁面點擊添加題目選擇相應類型的題目,填入所有必填信息提交。彈出提交成功并跳轉頁面與預期結果一致表5-2(續)序號輸入數據操作及步驟預期結果實際結果3題目Id:5進入題目列表頁面輸入合法題目ID點擊查詢按鈕。返回查詢到的信息與預期結果一致4題目Id:djals進入題目列表頁面輸入非法題目ID點擊查詢按鈕。提示用戶名查詢錯誤與預期結果一致測試結果:經過測試,管理員題目列表功能可以正常使用,必須輸入合法的題目信息才可以提交題目,否則提示用戶輸入合法題目,查詢也需輸入合法id,否則會提示用戶查詢錯誤。5.2.3試卷列表功能測試測試編號:K003目的:測試試卷列表功能是否穩定可用前提:管理員登錄成功進入試卷列表頁面試卷列表測試用例如表5-3所示。表5-3試卷列表模塊測試用例表序號輸入數據操作及步驟預期結果實際結果1進入試卷列表頁面點擊添加試卷,不填入所有必填信息提交。提交失敗,提示需要填入必填信息與預期結果一致2進入試卷列表頁面點擊添加試卷,填入所有必填信息提交。彈出提交成功并跳轉頁面與預期結果一致3題目Id:5進入試卷列表頁面輸入合法題目ID點擊查詢按鈕。返回查詢到的信息與預期結果一致4題目Id:vasd進入試卷列表頁面輸入非法題目ID點擊查詢按鈕。提示用戶名查詢錯誤與預期結果一致測試結果:經過測試,管理員試卷列表功能可以正常使用,必須輸入所有必填信息才可以提交試卷,否則提示用戶輸入必填信息,查詢也需輸入合法id,否則會提示查詢錯誤。5.2.4學生答題功能測試測試編號:K004目的:測試學生答題功能是否穩定可用前提:學生登錄成功進入答題頁面學生答題測試用例如表5-4所示。表5-4學生答題模塊測試用例表序號輸入數據操作及步驟預期結果實際結果1進入答題頁面,回答所有問題再提交試卷。提交成功,正常判斷分數與預期結果一致2進入答題頁面,回答部分問題再提交試卷。提交成功,回答的部分正常判分,沒有回答的部分視為沒分與預期結果一致測試結果:經過測試,用戶可以正確答題,再答題過程中沒有回答的部分不參與判分,回答的部分會根據答案是否正確去判定是否給分。5.2.5試卷中心功能測試測試編號:K005目的:測試試卷中心功能是否穩定可用前提:學生登錄成功進入答題頁面試卷中心測試用例如表5-5所示。表5-5試卷中心模塊測試用例表序號輸入數據操作及步驟預期結果實際結果1進入試卷中心頁面,選擇左側導航欄中的語文標簽。只顯示語文試卷與預期結果一致2進入試卷中心頁面,選擇左側導航欄中的數學標簽。只顯示試卷名稱包含測試字段的試卷與預期結果一致3試卷名稱:測試進入試卷中心頁面,選擇左側導航欄中的語文標簽,在搜索框搜索試卷顯示包含測試的試卷與預期結果一致測試結果:經過測試,用戶可以正確使用試卷中心的功能,通過左側的導航欄可以快速定位到哪門科目的試卷,通過搜索功能可以快速搜索出試卷名稱包含輸入字段的試卷。5.3性能測試性能測試主要是測試系統的性能,通過性能測試可以測試出在高并發的情況下系統會出現什么問題,在當下這個互聯網盛行的時代,系統能否扛得住高并發也稱為成熟的系統測試必不可少的一部分,具體性能測試結果如下表5-6所示。表5-6性能測試結果表并發用戶數事務平均響應時間事務最大響應時間事務成功率平均流量(字節)CPU利用率MEM利用率1001.06秒2.33秒100%517727%5%2001.33秒2.54秒100%524638%12%5001.87秒4.02秒100%518538%23%5.4本章小結本章對基于SpringBoot的在線刷題系統進行了功能的測試和性能的測試,通過功能測試去發現系統存在的隱形缺陷,通過性能測試確定QPS在500的情況下系統可以正常處理每個請求。
第6章結論本系統的設計靈感來源于疫情時期學生在家刷題的實際情況,并對刷題進行了擴展和思考。分析學生網上刷題以及學習的需求來設計學生模塊的功能,以學生需求對應功能設計,再以學生功能的綜合來設計管理員模塊。系統功能分析好后選擇合適的系統架構,數據庫,編寫語言等使系統有可靠的技術支持。在本系統設計中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度北京市建筑行業勞動合同培訓與考核規范
- 拆除窗戶勞務合同范本
- 泵房土建施工合同范本
- 承包燒烤廚房合同范本
- 煤炭居間協議合同范本
- 項目epc模式合同范本
- 房產抵押轉讓合同范本
- 2025建筑工程項目合同簽訂適用的合同法規參考
- 2025年標準個人房屋租賃合同范本參考
- 高中地理第三章同步學案以畜牧業為主的農業地域類型
- 基于單片機的恒壓供水系統設計(附原理圖、程序清單及外文翻譯)
- 中國古典民族樂器分類琵琶二胡樂理文化傳承知識介紹實用課件兩篇
- 《中醫診斷學課件》
- MQL4命令中文詳解手冊
- 保安外包服務投標方案(技術標)
- 2023年浙江杭州市屬事業單位統一招聘工作人員371人筆試參考題庫(共500題)答案詳解版
- 辦公耗材采購 投標方案(技術方案)
- 國家開放大學《人文英語3》章節測試參考答案
- 幼兒繪本故事之十二生肖
- 軍事地形學課件
- 崗位安全操作規程
評論
0/150
提交評論