




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGE62PAGE試題庫管理及試卷生成系統(tǒng)摘要本文介紹了利用JSP開發(fā)試卷生成系統(tǒng)的過程。系統(tǒng)采用JSP動態(tài)網(wǎng)頁技術(shù)和MySql數(shù)據(jù)庫進行網(wǎng)站開發(fā),結(jié)合html和JavaScript語言完善和美化系統(tǒng),并利用css進行網(wǎng)頁布局。從實踐、溝通的角度出發(fā),將教師從繁重工作中解脫出來,同時保證試卷質(zhì)量。該系統(tǒng)包括信息維護、題庫管理、在線組卷、成績管理、教師管理、試卷管理等幾部分,實現(xiàn)了管理試題庫、管理學生和教師、生成試卷、成績反饋的目的。系統(tǒng)為用戶提供簡單、友好的操作界面,使用戶能夠輕松、方便地進行系統(tǒng)操作。本文通過圖文并茂的表現(xiàn)方式,詳細地闡述了該系統(tǒng)從需求分析到實現(xiàn)的開發(fā)過程,使讀者對系統(tǒng)以及整個開發(fā)流程有較深入的了解。系統(tǒng)的開發(fā)實現(xiàn)了試題庫的自動管理,通過自動或手動的方式生成試卷。關(guān)鍵詞:試題庫管理在線組卷JSPMySql數(shù)據(jù)庫TestQuestionsDatabankManagementandExamination-Paper-BuildSystemABSTRACTThisarticleintroducetheprocessofdevelopingexaminationpaperproductionsystemwiththeprocessusestheJSP.ThissystemcarriesonthewebsitedevelopmentwithJSPandMySql,andunifieshtmlandJavaScriptlanguagetoconsummateandbeautifywebpage,andcarriesonthehomepagelayoutusingcss.Causestheteachertoextricatefromthearduouswork,whileguaranteestheexaminationpaperqualityfromanglesofpracticeandcommunication.Thesystemincludesseveralparts:informationmaintenance,testquestiondatabasemanagement,makingupexaminationpaperonwebpage,scoremanagement,teachermanagement,examinationpapermanagement,whichhasrealizedthegoalofmanagingtestquestiondatabase,managingstudentsandteachers,produceexaminationpaper,feedbackingscore.Thesystemsuppliesuserswithsimpleandfriendlyinterface,whichcanmakeusersoperateconvenientlyandeasily.Thearticleexpatiatedthedevelopmentprocessfromrequirementanalysistorealizationofthesysteminillustration,whichmakereaderscomprehendthesystemandentiredevelopmentprocessdeeply.Thedevelopmentofthesystemhasrealizedautomanagingquestionsdatabase,whichcanproducetestpapersbyautoormunualmethod.Keywords:TestquestionsdatabasemanagementMakeuptestpapersonlineJSPMySqlDatabase目錄摘要 IABSTRACT II1緒論 11.1項目背景 11.2項目開發(fā)的意義 11.3項目開發(fā)的目的 21.4技術(shù)路線 21.5可行性分析 21.5.1技術(shù)可行性 41.5.2經(jīng)濟可行性 41.5.3操作可行性 42需求分析 42.1目標系統(tǒng)的具體要求 42.1.1系統(tǒng)的運行環(huán)境要求 42.1.2系統(tǒng)的性能要求 42.1.3系統(tǒng)的功能要求 42.2建立目標系統(tǒng)的邏輯模型 52.2.1系統(tǒng)的調(diào)查 52.2.2系統(tǒng)的業(yè)務描述 52.2.3系統(tǒng)的數(shù)據(jù)流圖 82.2.4數(shù)據(jù)字典 143總體設(shè)計 193.1系統(tǒng)結(jié)構(gòu)的總體設(shè)計 193.1.1H圖 193.1.2IPO圖 203.2數(shù)據(jù)庫的概念設(shè)計 283.2.1系統(tǒng)的E-R圖 283.2.2實體的屬性 294詳細設(shè)計 314.1數(shù)據(jù)庫的邏輯設(shè)計 314.2數(shù)據(jù)庫的實現(xiàn) 324.3系統(tǒng)的基本流程 364.3.1信息維護模塊 374.3.2題庫管理模塊 384.3.3在線組卷模塊 394.3.4成績管理模塊 394.3.5教師管理模塊 394.3.7用戶登錄模塊 404.4界面設(shè)計 414.4.1用戶登錄框 414.4.2系統(tǒng)的默認界面 414.4.3題庫管理的界面 424.4.4教師資料的界面 434.4.5信息輸入方面的界面 434.4.6教師管理界面 444.4.7試題錄入界面 444.4.8自動組卷界面 445設(shè)計的實現(xiàn) 455.1編碼 455.1.1登錄模塊與教師資料模塊的實現(xiàn) 465.1.2個人試題模塊的實現(xiàn) 525.2算法設(shè)計 535.2.1主流算法的分析 545.2.2系統(tǒng)使用的算法 545.3系統(tǒng)測試 556小結(jié) 576.1系統(tǒng)的功能 576.2系統(tǒng)的特點 576.3存在的問題與改進方向 576.4自我體會 57參考文獻 59附錄 59謝辭 641緒論
一直以來,我國高校和社會上的各種考試大都采用傳統(tǒng)的人工出卷方式。顯然,人工出卷存在著種種弊端,譬如自教自考、所考的知識點不全面、考前漏題等,同時試卷的編輯、整理占了很大的工作量,造成了很大的時間和人力資源浪費。作為一名即將畢業(yè)的高校學生,在我十幾年的學業(yè)生涯中,體會最深的莫過于考試。而高校教務管理工作中考試管理工作就是一項非常重要的工作,每學期末各專業(yè)考試,從組織出卷到試卷的印制及試卷庫的管理等工作異常繁瑣而且工作量很大,這種組織管理方式不僅工作任務繁重而且試卷的標準化程度、難易程度、題量大小等各方面難以控制,難以形成有效的試題庫,不利于充分發(fā)揮歷年來的優(yōu)秀試題及試卷的作用,給試題和試卷的管理帶來很多問題和困難。1.1項目背景隨著時代的發(fā)展和計算機自動化的進步,各種各樣的考試多如牛毛,試卷中包括大量的試題,這無疑增加了出題組卷老師的組卷難度和工作量。如何才能更客觀、準確、高效地去評估、檢測一分試卷的難易程序與能力分布水平呢。一些教育發(fā)達的國家由此建立了不少規(guī)模巨大的海量試題庫,參加考試的考生數(shù)目龐大,次數(shù)頻繁,還要求每次出題與組卷具有可比性,這樣才能用于鑒別和控制試卷的難易分布。學校投入大量的人力、物力到試題的準備、試題的抽去、試卷組織、試卷排版、印刷過程等過程。就在這樣的大背景下,為適應這類處理事業(yè)的大規(guī)模發(fā)展,一個高質(zhì)量的、高效率的題庫與試卷生成系統(tǒng)就應運而生。
隨著國內(nèi)外計算機網(wǎng)絡(luò)的不斷的普及,通過努力研究,試題庫與試卷生成系統(tǒng)應該也可以運用到計算機中,進行試卷直接進行在線無紙化考試等應用領(lǐng)域。因次,這將是將來題庫與試卷生成以及無紙考試一體化的發(fā)展方向.1.2項目開發(fā)的意義理論意義:為了便利老師們的工作,將他們從繁瑣的出題過程中解放出來,使試題和試卷的管理變的高效而便捷,提高工作效率,希望能夠利用計算機開發(fā)出一套簡單實用、可以自動生成試卷的系統(tǒng),使試卷管理逐步走向正規(guī)化自動化?,F(xiàn)實意義:目前該類型系統(tǒng),也逐漸有了發(fā)展,但是多數(shù)為單機版和基于C/S架構(gòu),這種系統(tǒng)受運行環(huán)境的限制較多,對硬件條件也要求較高,因此基于B/S架構(gòu)的系統(tǒng)相對優(yōu)勢就顯得比較明顯,其需求較低,耗費資源較少;另外,就是現(xiàn)已存在的系統(tǒng)中的試題庫設(shè)計并不完善,如性能分析工能不強,通用性差(只針對一門專業(yè)出題),試題的公式及圖片錄入往往需要專業(yè)人員的操作才能完成,極大阻礙了試卷生成系統(tǒng)的智能化發(fā)展,因此仍有較大的發(fā)展空間,完整意義上的題庫,除了具有錄入存儲試題的功能,還應具備查詢功能、智能組卷、分析反饋功能。在此基礎(chǔ)上的試題生成算法設(shè)計也是目前該類型系統(tǒng)研究的重心。其具有的較大潛力,有利于創(chuàng)新性思維的開拓。1.3項目開發(fā)的目的本項目開發(fā)的目的在于,借助計算機進行無紙化的組卷及試卷輸出,提高出題,組卷速度、精度,保證試題的客觀、公正、一致,節(jié)省組卷時間、減輕教師負擔,提高工作效率。提高出卷成功率,使試題和試卷的管理變的高效而便捷,簡單實用、可以自動生成試卷,使試卷管理逐步走向正規(guī)化自動化。1.4技術(shù)路線本系統(tǒng)采用JSP+MySql的開發(fā)體系進行基于瀏覽器的B/S結(jié)構(gòu)程序開發(fā)?;谶@種結(jié)構(gòu)編寫的程序,其優(yōu)點在于:用戶在運用程序的時候,不再需要安裝客戶端,而只需打開瀏覽器,在瀏覽器上填寫目標地址就可以了,讓用戶在具備上網(wǎng)條件的環(huán)境中,隨時隨地的使用系統(tǒng)中的功能。同時,系統(tǒng)還采用了MVC結(jié)構(gòu)進行開發(fā)。三層應用架構(gòu)是當今流行的開發(fā)架構(gòu)之一,它分為模型-視圖-控制器,即數(shù)據(jù)庫層,業(yè)務邏輯層和圖形表示層,具體的架構(gòu)圖如圖1-1所示。圖1-1三層應用架構(gòu)使用三層應用架構(gòu)的優(yōu)點是,將顯示部分和邏輯流程控制分開,利用網(wǎng)頁實現(xiàn)顯示部分,利用業(yè)務邏輯層實現(xiàn)程序的流程控制。使代碼的管理和維護變得方便一些,而且執(zhí)行效率也會有所提高。1.5可行性分析
1.5.1技術(shù)可行性JSP是近年來新興的動態(tài)網(wǎng)頁設(shè)計技術(shù),利用它可構(gòu)建動態(tài)的,功能強大的交互式的WEB應用程序;組卷系統(tǒng)最終實現(xiàn)的目標是根據(jù)抽取后的試題,按照規(guī)定的試卷模板,生成所需要的html模式試卷。實現(xiàn)這一要求的關(guān)鍵在于,在JSP中如何正確使用調(diào)用html語言排版。因此,開發(fā)這樣一套管理系統(tǒng)在技術(shù)上是可行的。
1.5.2經(jīng)濟可行性
由于開發(fā)此基于JSP的試卷生成系統(tǒng)所需的硬件(計算機及相關(guān)硬件)和軟件環(huán)境,市場上都容易購買到或從相關(guān)網(wǎng)站下載,而JSP在JBuilder編輯器中就可以編輯。所以如果此系統(tǒng)投入使用,可以教師編輯試卷的各方面的工作量,提高工作效率。開發(fā)此系統(tǒng)成本低,經(jīng)濟效益高,因此系統(tǒng)經(jīng)濟可行,應積極開發(fā)。
1.5.3操作可行性
基于JSP的試卷生成系統(tǒng)具備友好的界面,使用方便,操作簡單易于被用戶接受,用戶只需熟練操作計算機,和對此系統(tǒng)使用做簡單的了解即可方便使用,而且使用此系統(tǒng)可以大大減少管理人員的負擔,從使用操作方面看,此系統(tǒng)的開發(fā)是可行的。
綜合來說,此系統(tǒng)的開發(fā)和運行都是可行的。2需求分析2.1目標系統(tǒng)的具體要求主要從系統(tǒng)的運行環(huán)境要求,系統(tǒng)的性能要求以及系統(tǒng)的功能要求來描述系統(tǒng)的具體要求。2.1.1系統(tǒng)的運行環(huán)境要求由于該系統(tǒng)的規(guī)模不大,用戶使用較為頻繁,且用戶使用系統(tǒng)的場所不固定,因此,要求系統(tǒng)在具備上網(wǎng)條件的計算機中都能運行。2.1.2系統(tǒng)的性能要求(1)保證系統(tǒng)數(shù)據(jù)的準確性。由于試題和學生信息都源于系統(tǒng),所以,必須確保系統(tǒng)數(shù)據(jù)的準確性,以免出現(xiàn)錯題學生信息的丟失。(2)要求系統(tǒng)能快速響應用戶的操作。如果系統(tǒng)的響應時間較長,則會在影響用戶工作的同時,讓用戶耽誤時間。2.1.3系統(tǒng)的功能要求(1)具有輸入驗證功能,提示用戶正確地輸入數(shù)據(jù);(2)具有信息維護的功能,可以修改學生和教師信息;(3)具有查詢功能,方便教師尋找需要的試題;(4)具有錄入修改試題的功能;(5)用可視化的效果返回試題及試卷;(6)具有手動組卷的功能,按用戶所給條件,整合出相應試卷;(7)具有自動組卷的功能,可自行生成試卷;(9)具有成績分析的功能,是教師能夠較科學分析成績情況;(10)編輯試卷屬性:設(shè)置試卷的總分、名稱、保存路徑;(11)系統(tǒng)能支持不同類型的題目,比如:判斷、單選、多選等;(12)編輯題目時能插入圖片;(13)可以按試題類型對試題進行分類;(14)可以對用戶進行管理,修改用戶口令密碼等;(15)生成的試卷可以進行脫機測試,測試過程中如出現(xiàn)漏題,選項漏選,在提交前系統(tǒng)你能對用戶進行提示;(16)編輯題目時如出現(xiàn)邏輯上的錯誤,比如判斷題沒有設(shè)置正確答案,單選題沒有設(shè)置正確選項,多選題沒有設(shè)置全正確選項等,在保存試題時系統(tǒng)能自動進行提示;2.2建立目標系統(tǒng)的邏輯模型建立目標系統(tǒng)的邏輯模型的步驟如圖2-1所示:用戶用戶調(diào)查具體模型邏輯抽象邏輯模型計算機化評審修改正式模型完善細節(jié)目標系統(tǒng)目標系統(tǒng)初始模型經(jīng)認可的問題需求系統(tǒng)模型圖2-1建立系統(tǒng)模型的工作流程2.2.1系統(tǒng)的調(diào)查經(jīng)過初步調(diào)查研究,系統(tǒng)涉及的人員有:教師、管理員。其中,教師主要進行試題錄入、學生的管理、成績的管理、試卷的生成。管理員主要進行教師的管理,題型的管理,章節(jié)的管理,試卷生成及試卷的管理。2.2.2系統(tǒng)的業(yè)務描述在了解試卷生成系統(tǒng)涉及的相關(guān)人員以及這些人員進行的主要活動的基礎(chǔ)上,經(jīng)過詳細研究分析,了試卷生成的業(yè)務流程,下面通過系統(tǒng)流程圖中部分圖形工具來描述試卷生成的流程。業(yè)務流程圖符號說明如下表所示:表2-1業(yè)務流程圖符號說明流程符號含義流程符號含義流程符號含義控制流符號換頁連接人工操作系統(tǒng)操作磁盤機或數(shù)據(jù)庫文檔符號聯(lián)機存儲顯示器或終端機流程開始與結(jié)束系統(tǒng)的業(yè)務流程圖如下圖所示:圖2-2系統(tǒng)業(yè)務流程圖1用戶管理用戶管理系統(tǒng)管理員終端使用系統(tǒng)結(jié)束教師庫用戶用戶名和密碼終端用戶登陸用戶用戶信息終端用戶信息管理系統(tǒng)管理員用戶信息終端用戶注冊用戶名和密碼圖2-3系統(tǒng)業(yè)務流程圖2成績分析成績分析成績庫2終端學生管理學生庫3終端試卷生成試題庫1終端圖2—4系統(tǒng)業(yè)務流程圖3以下是對系統(tǒng)業(yè)務流程的具體描述:管理員根據(jù)教師授課內(nèi)容和班級和其他個人信息注冊新的教師權(quán)限用戶。新教師可在個人信息中修改個人的電話和郵箱等信息。新教師通過學生管理僅將自己所授課的班級學生進行信息的修改等操作。教師在網(wǎng)上輸入試題各種資料,該試題將被錄入到系統(tǒng),并存放在試題庫中。其他教師也通過試卷生成和試題庫管理,獲得共享資源,這些資源將被系統(tǒng)整理。某類老師權(quán)限可對試題的章節(jié)和題型進行設(shè)置。教師可進行試卷的生成,其中包括自動生成后手動生成,自動生成只需輸入極少幾項數(shù)據(jù),便自行生成試卷;手動生成則需設(shè)置好各項內(nèi)容,主觀成分占得較多。試卷生成后存放于試卷庫中,可反復使用并修改,教師可以直接打印,進行學生的測試。閱卷完畢,可將學生的成績單錄入學生成績庫,并可將此次學生的成績加以分析。對于以往的試卷可將其調(diào)出稍許修改后,便可再次進行測試使用。管理員可進行出學生管理外的所有功能,并可修改教師的信息,當教師授課內(nèi)容或者授課班級發(fā)生變化后,可在教師的信息管理中,對其維護。2.2.3系統(tǒng)的數(shù)據(jù)流圖數(shù)據(jù)流圖的描述符號如下表所示:表2-2數(shù)據(jù)流圖的描述符號名稱圖例說明信息源表示信息源或信息潭,即數(shù)據(jù)流的起點或終點加工或處理表示對流到此處的數(shù)據(jù)進行加工或處理,即對數(shù)據(jù)的算法分析與科學計算輸入文件/輸出文件表示輸入文件或輸出文件,說明加工或處理之前的輸入文件,記錄加工或處理之后的輸出文件數(shù)據(jù)流表示數(shù)據(jù)流的流動方向系統(tǒng)的頂層數(shù)據(jù)流圖如下圖所示:學生信息系統(tǒng)管理員學生信息系統(tǒng)管理員成績單個人信息學生信息表試題文本用戶用戶信息個人信息用戶信息成績分析信息試題信息老師試題庫管理及試卷生成系統(tǒng)密碼權(quán)限試卷教師信息圖2-5系統(tǒng)的頂層數(shù)據(jù)流圖將系統(tǒng)的頂層數(shù)據(jù)流圖作進一步分解,得出系統(tǒng)的0層數(shù)據(jù)流圖。如下圖所示:1信息維護1信息維護教師庫學生信息表2試卷管理試卷信息3成績管理成績單學生庫成績庫試題庫所查詢的試題系統(tǒng)管理員5用戶管理7用戶登錄6用戶注冊教師庫用戶信息用戶名、密碼用戶信息用戶信息試卷庫用戶(教師或管理員)試卷學生信息所查詢的用戶權(quán)限8修改用戶信息9查看用戶信息試題信息用戶信息試題文本老師分析結(jié)果所查詢的試題4試題管理2試卷管理試卷信息信息圖2-6系統(tǒng)的0層數(shù)據(jù)流圖將系統(tǒng)的0層數(shù)據(jù)流圖作進一步分解,得出系統(tǒng)的1層數(shù)據(jù)流圖。1層數(shù)據(jù)流圖的一系列圖如下所示:教師教師教師庫電話郵箱1.1教師資料學生信息1.3學生管理密碼1.2密碼修改圖2-7系統(tǒng)的1層數(shù)據(jù)流圖中的信息維護子系統(tǒng)老師老師試卷庫2.1查看試卷查詢條件2.2修改試卷更新的試卷信息2.3個人試卷查詢條件圖2-8系統(tǒng)的1層數(shù)據(jù)流圖中的試卷管理子系統(tǒng)老師老師成績庫3.1查看成績查詢條件3.2成績編輯成績單信息3.3成績分析班級成績表圖2-9系統(tǒng)的1層數(shù)據(jù)流圖中的成績管理子系統(tǒng)老師老師試題庫4.1試題錄入要錄入的試題4.2個人試題查詢條件4.1科目設(shè)置4.2章節(jié)設(shè)置4.3題型設(shè)置系統(tǒng)管理員科目信息章節(jié)信息題型信息4.4查看試題查詢條件查詢條件所查詢的試題所查詢的試題圖2-10系統(tǒng)的1層數(shù)據(jù)流圖中的試題管理子系統(tǒng)5.1更改權(quán)限5.1更改權(quán)限教師庫更改信息5.2刪除教師刪除教師的信息需修改的信息5.4查詢教師5.3修改教師所查詢的教師管理員查詢條件圖2-11系統(tǒng)的1層數(shù)據(jù)流圖中的教師管理子系統(tǒng)教師信息教師信息教師庫6.2注冊新管理員6.1注冊新教師管理員信息系統(tǒng)管理員管理員庫圖2-12系統(tǒng)的1層數(shù)據(jù)流圖中的新教師注冊子系統(tǒng)2.2.4數(shù)據(jù)字典數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義集合。它的任務是:對于數(shù)據(jù)流圖中出現(xiàn)的所有被命名的圖形元素在字典中作為一個詞條加以定義,使得每一個圖形元素的抿子都有一個確切的解釋。它由以下四類元素的定義組成:(1)數(shù)據(jù)流(2)數(shù)據(jù)流分量(即,數(shù)據(jù)元素)(3)數(shù)據(jù)存儲(4)處理。由于數(shù)據(jù)處理的定義用其他工具(如IPO圖或PDL)描述更方便,因此,我們主要從其他三個方面的定義來組成系統(tǒng)的數(shù)據(jù)字典。(1)數(shù)據(jù)流數(shù)據(jù)流是數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)傳播的路徑。系統(tǒng)的主要數(shù)據(jù)流如表2-4-1至表2-4-7所示:表2-3-1數(shù)據(jù)流――試題數(shù)據(jù)流名稱:試題數(shù)據(jù)流名稱:試題說明:主要資源用于試卷的的組成數(shù)據(jù)流來源:教師或管理員數(shù)據(jù)流去向:試題管理數(shù)據(jù)流組成:試題編號+上傳者+科目+章節(jié)+題型+內(nèi)容+答案表2-3-2數(shù)據(jù)流――教師信息數(shù)據(jù)流名稱:教師信息說明:用于存儲教師的詳細信息數(shù)據(jù)流名稱:教師信息說明:用于存儲教師的詳細信息數(shù)據(jù)流來源:管理員與教師數(shù)據(jù)流去向:教師資料、用戶管理數(shù)據(jù)流組成:教師編號+姓名+院系+所授課程+所授班級+電話+郵箱表2-3-3數(shù)據(jù)流――學生信息數(shù)據(jù)流名稱:學生信息說明:存儲學生信息,用于成績編輯數(shù)據(jù)流名稱:學生信息說明:存儲學生信息,用于成績編輯數(shù)據(jù)流來源:教師數(shù)據(jù)流去向:學生管理、成績管理數(shù)據(jù)流組成:編號+學號+姓名+班級+性別表2-3-4數(shù)據(jù)流――試卷數(shù)據(jù)流名稱:試卷數(shù)據(jù)流名稱:試卷說明:試題經(jīng)過算法后生成的試卷數(shù)據(jù)流來源:試卷生成數(shù)據(jù)流去向:試卷管理數(shù)據(jù)流組成:試卷編號+科目+教師表2-3-5數(shù)據(jù)流――成績單數(shù)據(jù)流名稱:成績單說明:教師閱卷后要輸入系統(tǒng)的原始資料數(shù)據(jù)流名稱:成績單說明:教師閱卷后要輸入系統(tǒng)的原始資料數(shù)據(jù)流來源:教師數(shù)據(jù)流去向:成績管理數(shù)據(jù)流組成:編號+學號+學生姓名+成績數(shù)據(jù)流名稱:分析結(jié)果說明:成績表經(jīng)系統(tǒng)分析后得到的結(jié)果數(shù)據(jù)流名稱:分析結(jié)果說明:成績表經(jīng)系統(tǒng)分析后得到的結(jié)果數(shù)據(jù)流來源:成績分析數(shù)據(jù)流去向:成績管理數(shù)據(jù)流組成:編號+成績表號+結(jié)論表2-3-7數(shù)據(jù)流――管理員信息數(shù)據(jù)流名稱:管理員信息數(shù)據(jù)流名稱:管理員信息說明:管理員個人的詳細信息數(shù)據(jù)流來源:管理員數(shù)據(jù)流去向:個人信息數(shù)據(jù)流組成:編號+姓名+部門+職位+密碼(2)數(shù)據(jù)元素圖中的每一個數(shù)據(jù)結(jié)構(gòu)都是由數(shù)據(jù)元素構(gòu)成的,它是數(shù)據(jù)處理中最小的,不可再分割的單位,它直接反映事物的某一特征。由于在本系統(tǒng)數(shù)據(jù)流圖中的大部分數(shù)據(jù)元素都很容易被理解,因此下面只列出某些需要特別說明的數(shù)據(jù)元素。表2-4-1數(shù)據(jù)元素――所授課程數(shù)據(jù)元素條目名:所授課程數(shù)據(jù)元素條目名:所授課程所屬數(shù)據(jù)流:教師信息存儲處:教師信息表數(shù)據(jù)元素屬性:代碼類型取值范圍意義字符[課程]簡要說明:使得教師只能對自己所授的課程進行操作表2-4-2數(shù)據(jù)元素――性別數(shù)據(jù)元素條目名:性別數(shù)據(jù)元素條目名:性別所屬數(shù)據(jù)流:學生信息存儲處:學生信息表數(shù)據(jù)元素屬性:代碼類型取值范圍意義字符[男,女]簡要說明:(3)數(shù)據(jù)存儲數(shù)據(jù)存儲是數(shù)據(jù)結(jié)構(gòu)保存的地方。系統(tǒng)的主要數(shù)據(jù)存儲如表2-6-1至2-6-8所示:表2-5-1數(shù)據(jù)存儲――試題庫數(shù)據(jù)存儲數(shù)據(jù)存儲條目名:試題庫存儲組織:按實際情況而定記錄數(shù):按實際情況而定主關(guān)鍵字:試題編號記錄組成:試題編號+科目+章節(jié)+難度+題型+層次+上傳者+內(nèi)容+答案+圖片簡要說明:表2-5-2數(shù)據(jù)存儲――資源庫數(shù)據(jù)存儲條目名:試卷庫數(shù)據(jù)存儲條目名:試卷庫存儲組織:按實際情況而定記錄數(shù):按實際情況而定主關(guān)鍵字:編號記錄組成:編號+科目+上傳者+共享標記簡要說明:表2-5-3數(shù)據(jù)存儲――教師庫數(shù)據(jù)存儲數(shù)據(jù)存儲條目名:教師庫存儲組織:按實際情況而定記錄數(shù):按實際情況而定主關(guān)鍵字:教師編號記錄組成:教師編號+用戶名+姓名+院系+職稱+性別+所授課程+電話+郵箱簡要說明:表2-5-4數(shù)據(jù)存儲――學生庫數(shù)據(jù)存儲數(shù)據(jù)存儲條目名:學生庫存儲組織:每個老師一張表記錄數(shù):按實際情況而定主關(guān)鍵字:編號記錄組成:編號+學號+性別+班級簡要說明:表2-5-5數(shù)據(jù)存儲――成績庫數(shù)據(jù)存儲條目名:成績庫數(shù)據(jù)存儲條目名:成績庫存儲組織:每個班一張表記錄數(shù):按實際情況而定主關(guān)鍵字:編號記錄組成:編號+試卷號+學生+成績+生成者簡要說明:表2-5-6數(shù)據(jù)存儲――管理員庫數(shù)據(jù)存儲數(shù)據(jù)存儲條目名:管理員庫存儲組織:每個用戶一條記錄記錄數(shù):按實際情況而定主關(guān)鍵字:編號記錄組成:編號+用戶名+用戶密碼+用戶姓名+性別+E-MAIL+部門+職位簡要說明:3總體設(shè)計3.1系統(tǒng)結(jié)構(gòu)的總體設(shè)計在需求分析階段,我們已經(jīng)從系統(tǒng)開發(fā)的角度出發(fā),把系統(tǒng)功能逐次分割成層次結(jié)構(gòu),使每一部分完成簡單的功能且各個部分之間又保持一定的聯(lián)系,這就是功能設(shè)計。在設(shè)計階段,我們將基于這個功能的層次結(jié)構(gòu)把個各部分組合起來成為系統(tǒng)。它包括:(1)采用某種設(shè)計方法,將一個復雜的系統(tǒng)按功能劃分成模塊的層次結(jié)構(gòu);(2)確定每個模塊的功能,建立與已確定的軟件需求的對應關(guān)系;(3)確定模塊間的調(diào)用關(guān)系;(4)確定模塊間的接口,即模塊間傳遞的信息;設(shè)計接口的信息結(jié)構(gòu)等。下面將運用圖形工具對系統(tǒng)進行設(shè)計。3.1.1H圖HIPO圖主要包括兩方面內(nèi)容:(1)H圖(層次圖):表示自頂向下分解所得系統(tǒng)的模塊層次結(jié)構(gòu)。(2)IPO圖(輸入-處理-輸出圖):用此圖描述一個模塊的輸入、處理和輸出內(nèi)容。通過對系統(tǒng)的研究分析,通用試卷生動生成系統(tǒng)從功能上分為幾大模塊:信息維護、題庫管理、在線組卷、試卷管理、成績管理、教師管理信息維護又分為個人信息(教師資料),密碼修改、學生管理三個模塊。學生管理包括增、刪、改、查任意一個學生。題庫管理模塊又分為題庫的查看試題模塊,修改模塊(包括刪除、編輯)、新題錄入模塊、個人試題模塊,科目設(shè)置,章節(jié)設(shè)置,題型設(shè)置模塊。查詢題庫時可選擇多條件查詢,又將修改界面中其分為修改題目信息、刪除。在線組卷模塊試卷模塊主要分為兩大分支,手動生成試卷和自動生成試卷兩大類,不同的題目對應不同的題型,根據(jù)不同的題型選擇不同的試題,按照題型算法最后整合為一張試卷。成績管理又分為查看成績和成績編輯模塊。試卷管理又分為查看試卷(包括編輯試卷),個人試卷。教師管理可分為新教師注冊,教師信息的查詢修改。構(gòu)圖如下圖所示:試卷生成系統(tǒng)試卷生成系統(tǒng)登陸系統(tǒng)登陸系統(tǒng)新教師錄入教師信息查看成績成績編輯查看試題試題錄入個人試題科目設(shè)置章節(jié)設(shè)置題型設(shè)置在線組卷教師管理成績管理試卷管理題庫管理信息維護教師資料密碼修改學生管理查看試卷個人試卷自動組卷手動組卷新教師錄入教師信息查看成績成績編輯查看試題試題錄入個人試題科目設(shè)置章節(jié)設(shè)置題型設(shè)置在線組卷教師管理成績管理試卷管理題庫管理信息維護教師資料密碼修改學生管理查看試卷個人試卷自動組卷手動組卷圖3-1系統(tǒng)的H圖3.1.2IPO圖IPO圖是輸入/處理/輸出圖的簡稱,能夠方便地描繪輸入數(shù)據(jù)、對數(shù)據(jù)地處理和輸出數(shù)據(jù)之間的關(guān)系。和H圖中每個方框相對應,應該有一張IPO圖來描述這個方框代表的模塊的處理過程。由于在本系統(tǒng)中大部分模塊的邏輯功能相似,因此,我們這里只列出某些有代表意義的主要模塊的IPO圖。IPO圖(頂層)IPO圖(頂層)系統(tǒng)名:試卷生成系統(tǒng)模塊名:試卷生成系統(tǒng)制作者:房輝日期:2009/5由下列模塊調(diào)用:調(diào)用下列模塊:信息維護、題庫管理、在線組卷、成績管理、試卷管理、教師管理輸入:用戶輸入輸出:屏幕處理:對于用戶信息的相關(guān)信息,調(diào)用信息維護模塊對于試題的相關(guān)信息,調(diào)用題庫管理模塊需要組成試卷,調(diào)用在線組卷模塊對于成績的相關(guān)信息,調(diào)用成績管理模塊對于試卷的相關(guān)信息,調(diào)用試卷管理模塊對于教師的相關(guān)信息,調(diào)用教師管理模塊注釋:局部數(shù)據(jù)元素:圖3-2試卷生成系統(tǒng)IPO圖注釋:局部數(shù)據(jù)元素:密碼注釋:局部數(shù)據(jù)元素:密碼處理:如修改教師信息,調(diào)用教師資料模塊如修改密碼,調(diào)用密碼修改模塊如查詢修改學生信息,調(diào)用學生管理模塊輸入:教師信息、學生信息輸出:輸入、修改、刪除、查詢后得到的學生、教師的相關(guān)信息IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)制作者:房輝模塊名:信息維護模塊日期:2009/5由下列模塊調(diào)用:試卷生成系統(tǒng)調(diào)用下列模塊:教師資料、密碼修改、學生管理圖3-3信息維護模塊IPO圖IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)模塊名:題庫模塊制作者:房輝日期:2009/5由下列模塊調(diào)用:試卷生成系統(tǒng)調(diào)用下列模塊:查看題庫、試題錄入、個人題庫、科目設(shè)置、章節(jié)設(shè)置、題型設(shè)置輸入:試題信息輸出:輸入、修改、刪除、查詢后得到的試題相關(guān)信息處理:如查看所有試題信息,調(diào)用查看題庫模塊如錄入試題,調(diào)用試題錄入模塊如查看自己的試題,調(diào)用個人試題模塊如設(shè)置科目,調(diào)用科目設(shè)置模塊如設(shè)置章節(jié),調(diào)用章節(jié)設(shè)置模塊如設(shè)置題型,調(diào)用題型設(shè)置模塊局部數(shù)據(jù)元素:注釋:IPO圖(第二層)IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)模塊名:在線組卷制作者:房輝日期:2009/5由下列模塊調(diào)用:試卷生成系統(tǒng)調(diào)用下列模塊:手動組卷、自動組卷模塊輸入:手動或自動組卷所需的設(shè)置信息輸出:自動生成的試卷手動生成的試卷處理:如需要自動生成試卷,則調(diào)用自動組卷模塊如需要手動生成試卷,則調(diào)用手動組卷模塊局部數(shù)據(jù)元素:注釋:圖3-5在線組卷模塊IPO圖IPO圖(第二層)IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)模塊名:成績管理制作者:房輝日期:2009/5由下列模塊調(diào)用:試卷生成系統(tǒng)調(diào)用下列模塊:查看成績模塊、成績編輯模塊輸入:查詢的試卷名要輸入的成績表輸出:某次考試的成績成績分析的結(jié)果處理:如查詢某次考試成績的相關(guān)信息,則調(diào)用查看成績模塊如編輯某次測試成績,則調(diào)用成績編輯模塊局部數(shù)據(jù)元素:注釋:圖3-6成績管理模塊IPO圖處理:教師信息的修改,新教師信息的錄入處理:教師信息的修改,新教師信息的錄入局部數(shù)據(jù)元素:注釋:IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)制作者:房輝模塊名:教師管理日期:2009/5由下列模塊調(diào)用:試卷生成系統(tǒng)調(diào)用下列模塊:新教師錄入、教師信息模塊輸入:教師信息輸出:圖3-7教師管理模塊IPO圖處理:若查看所有試卷,調(diào)用查看試卷模塊處理:若查看所有試卷,調(diào)用查看試卷模塊若查看個人試卷,調(diào)用個人試卷模塊局部數(shù)據(jù)元素:注釋:IPO圖(第二層)系統(tǒng)名:試卷生成系統(tǒng)系統(tǒng)制作者:房輝模塊名:試卷管理日期:2009/5由下列模塊調(diào)用:試卷生成系統(tǒng)調(diào)用下列模塊:查看試卷、個人試卷輸入:試卷的編號等查詢條件輸出:試卷信息圖3-8試卷管理模塊IPO圖處理:從試卷庫中選擇某試卷,然后刪除處理:從試卷庫中選擇某試卷,然后刪除局部數(shù)據(jù)元素:注釋:IPO圖(第三層)系統(tǒng)名:試卷生成系統(tǒng)系統(tǒng)制作者:房輝日期:2009/5模塊名:刪除試卷模塊由下列模塊調(diào)用:查看試卷模塊調(diào)用下列模塊:輸入:查看的試卷輸出:返回成功信息圖3-9刪除試卷模塊IPO圖IPO圖(第三層)IPO圖(第三層)處理:處理:將新的試題信息更新到選中的試題中局部數(shù)據(jù)元素:注釋:輸入:試題信息輸出:返回成功信息系統(tǒng)名:試卷生成系統(tǒng)制作者:房輝模塊名:修改試題模塊日期:2009/5由下列模塊調(diào)用:個人試題模塊調(diào)用下列模塊:圖3-10修改試題模塊IPO圖3.2數(shù)據(jù)庫的概念設(shè)計數(shù)據(jù)庫的概念設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵階段,其主要任務是通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。它的基本方法有自底向上的設(shè)計方法和自頂向下的設(shè)計方法。自底向上的設(shè)計方法有時也稱為屬性綜合法。這種方法的基本點是將前面需求分析中收集到的數(shù)據(jù)元素作為基本輸入,通過對這些元素的分析,把它們綜合成相應的實體或聯(lián)系。自頂向下的設(shè)計方法從分析組織的事務活動開始。首先識別用戶所關(guān)心的實體及實體間的聯(lián)系,建立一個初步的數(shù)據(jù)模式框架,然后再以逐步求精的方式加上必需的描述屬性形成一個完整的局部數(shù)據(jù)模式(又稱局部視圖),最后再將這些局部視圖集成為一個統(tǒng)一的全局數(shù)據(jù)模式(又稱全局視圖)。這種方法通常是利用實體-聯(lián)系圖(E-R圖)作為表現(xiàn)形式。下面,我們將采用自頂向下的設(shè)計方法進行數(shù)據(jù)庫的概念設(shè)計。3.2.1系統(tǒng)的E-R圖系統(tǒng)的E-R圖如下圖所示:圖3-3-1本系統(tǒng)的E-R圖1章節(jié)章節(jié)科目題型試題層次屬于屬于屬于屬于11NNN1N圖3-3-2本系統(tǒng)的E-R圖23.2.2實體的屬性由E-R圖得知,系統(tǒng)中涉及到的實體各自擁有的屬性如下所示:1.教師(編號,用戶名,密碼,姓名,性別,院系,職稱,電話號碼,E-Mail,所授科目)2.用戶類別(用戶類別名稱)3.試題(編號,所屬章節(jié),所屬科目,內(nèi)容,題型,難度系數(shù),分值,平均時間,答案編號,圖片編號,共享)4.章節(jié)(章節(jié)編號,章節(jié)名,章節(jié)標題,所屬科目)5.科目(科目編號,內(nèi)容)6.學生(編號,學號,班級,姓名,性別)7.管理員(編號,用戶名,姓名,性別,部門,職稱,密碼)8.答案(答案編號,選項A,選項B,選項C,選項D,答案,備注)9.成績(編號,學號,姓名,成績,科目編號,試卷編號)10.試卷(試卷編號,科目編號,存儲位置)11.圖片(編號,存儲位置)12.題型(編號,內(nèi)容,描述)13.匹配(編號,學生表,成績表,教師編號)4詳細設(shè)計
在完成概要設(shè)計后,我們已經(jīng)確定了系統(tǒng)的總體結(jié)構(gòu),并給出了各個組成模塊以及模塊間的聯(lián)系。在基于概要設(shè)計的設(shè)計結(jié)果上,我們將進行進一步的設(shè)計――詳細設(shè)計。詳細設(shè)計階段的根本目標是確定應該怎樣具體地實現(xiàn)所要求的系統(tǒng),也就是說,經(jīng)過這個階段地設(shè)計工作,應該得出對目標系統(tǒng)地精確描述,從而在編碼階段可以把這個描述直接翻譯成用某種程序設(shè)計語言書寫的程序。詳細設(shè)計階段的任務還不是具體地編寫程序,而是要設(shè)計出程序的“藍圖”,以后程序員將根據(jù)這個藍圖寫出實際的程序代碼。因此,詳細設(shè)計的結(jié)果基本上決定了最終的程序代碼的質(zhì)量。4.1數(shù)據(jù)庫的邏輯設(shè)計數(shù)據(jù)庫的邏輯設(shè)計與應用軟件系統(tǒng)最終選用的DBMS有關(guān)。目前,一般DBMS都是關(guān)系型的,因此,數(shù)據(jù)庫邏輯設(shè)計階段的主要任務是在概念設(shè)計的基礎(chǔ)上,首先利用一些映射規(guī)則得到一組初始關(guān)系模式集,然后用關(guān)系規(guī)范化理論對關(guān)系模型進行羽化,以獲得質(zhì)量良好的數(shù)據(jù)庫設(shè)計。E-R圖主要包括實體和聯(lián)系兩種抽象的概念。實體和聯(lián)系本身都可以有一些描述屬性。在數(shù)據(jù)庫的邏輯設(shè)計中,通常都是實體映射成關(guān)系、實體的描述屬性映射成關(guān)系的屬性;而聯(lián)系可以單獨映射成關(guān)系,也可以和一個實體合并成一個關(guān)系。因此,E-R圖到關(guān)系模型的映射是直接的。根據(jù)以上所述原則,由E-R圖轉(zhuǎn)換得到如下的關(guān)系模式(帶實線的為主碼,波浪線的為外部碼)。1)教師(編號,用戶名,密碼,姓名,性別,院系,職稱,電話號碼,E-Mail,所授科目)2)用戶類別(用戶類別名稱)3)試題(編號,所屬章節(jié),所屬科目,內(nèi)容,題型,難度系數(shù),分值,平均時間,答案編號,圖片編號,共享)4)章節(jié)(章節(jié)編號,章節(jié)名,章節(jié)標題,所屬科目)5)科目(科目編號,內(nèi)容)6)學生(編號,學號,班級,姓名,性別)7)管理員(編號,用戶名,姓名,性別,部門,職稱,密碼)8)答案(答案編號,選項A,選項B,選項C,選項D,答案,備注)9)成績(編號,學號,姓名,成績,科目編號,試卷編號)10)試卷(試卷編號,科目編號,存儲位置)11)圖片(編號,存儲位置)12)題型(編號,內(nèi)容,描述)13)匹配(編號,學生表,成績表,教師編號)4.2數(shù)據(jù)庫的實現(xiàn)根據(jù)以上設(shè)計結(jié)果,得出系統(tǒng)中各個表的結(jié)構(gòu)如下所示:1.表teacher_login(教師表)表4-1-1teacher_login表列名數(shù)據(jù)類型長度是否主鍵描述允許空serialInt4是編號usernameVarchar15用戶名passwordVarchar20密碼real_NameVarchar10姓名academyVarchar20學院genderVarchar2性別PhoneVarchar15電話號碼E-MailVarchar40電子郵箱√CourseVarchar15所授科目2.用戶類別表由于用戶類別表中只有用戶類別名稱一列,且用戶類別表中的值已固定了為學生、老師、未審核、系統(tǒng)管理員。因此,我們這里用一個一維數(shù)組({學生、老師、未審核、系統(tǒng)管理員})來表示用戶類別。如果其他表與用戶別表中的用戶類別名稱列存在外鍵關(guān)系,則用CHECK約束代替其外鍵關(guān)系,把該列的數(shù)據(jù)限制為在學生、老師、未審核、系統(tǒng)管理員中的其中一個。3.表op_login(管理員表)表4-1-2op_login表列名數(shù)據(jù)類型長度是否主鍵描述允許空serialInt4是編號op_nameVarchar12管理員名real_nameVarchar10真實姓名genderVarchar3性別departmentVarchar10所在部門phoneVarchar15電話positionVarchar10職位e-mailVarchar20郵箱√4.表chapter(章節(jié)表)表4-1-3chapter表列名數(shù)據(jù)類型長度是否主鍵描述允許空Subject_idvarchar15所屬科目編號Chapter_idvarchar20章節(jié)編號是Chapter_contentVarchar30章節(jié)內(nèi)容5.表question_info(試題表)表4-1-4questions_info表列名數(shù)據(jù)類型長度是否主鍵描述允許空Subject_idVarchar15所屬科目Chapter_idVarchar20所屬章節(jié)q_serialInt5是序號q_idVarchar25試題編號typeVarchar10題型difficultysmallInt2難度系數(shù)q_contentVarchar500題目內(nèi)容pointValuesmallInt4分值Take_timesmallInt4平均做題時間Pic_idVarchar25圖片編號√a_idVarchar25答案編號uploaderVarchar15上傳教師selectedsmallInt2選中標記levelVarchar10知識層面sharedsmallInt2共享標記6.表answer_info(答案表)表4-1-5answer_info表列名數(shù)據(jù)類型長度是否主鍵描述允許空a_idvarchar25是答案編號a1Varchar100選項1√a2Varchar100選項2√a3Varchar100選項3√a4varchar100選項4√keyvarchar500正確答案remarkvarchar200備注√7.表type(題型表)表4-1-6type表列名數(shù)據(jù)類型長度是否主鍵描述允許空serialInt3是題型編號TypeNameVarchar10題型名稱descriptionvarchar50題型描述8.表illustration(圖解表)表4-1-7illustration表列名數(shù)據(jù)類型長度是否主鍵描述允許空Pic_idVarchar25是圖片編號StorageVarchar70存儲位置 9.表matches(匹配表)表4-1-8matches表列名數(shù)據(jù)類型長度是否主鍵描述允許空serialInt5是編號Stu_tableVarchar15學生表名Score_tablevarchar15成績表名teacherVarchar15授課教師10.表student(學生表)表4-1-9student表列名數(shù)據(jù)類型長度是否主鍵描述允許空serialInt4是學生編號numVarchar10學號nameVarchar15姓名gradeVarchar15班級genderVarchar4性別11.表score(成績表)表4-1-10score表列名數(shù)據(jù)類型長度是否主鍵描述允許空IdInt4是編號Stu_numVarchar10學號CourseVarchar15科目PaperVarchar15試卷ScoreInt4分數(shù)12.表subject(科目表)表4-1-11TB_ProgramAnswer表列名數(shù)據(jù)類型長度是否主鍵描述允許空Subject_idVarchar15是科目編號Subject_nameVarchar30科目名稱13.表paper(試卷表)表4-1-12paper表列名數(shù)據(jù)類型長度是否主鍵描述允許空serialInt4是試卷編號Subject_idVarchar15所屬科目storageVarchar70存儲位置producerVarchar15生成試卷教師sharedsmallInt2共享標記表與表之間的關(guān)系圖4-1所示:圖4-1表與表之間的關(guān)系圖4.3系統(tǒng)的基本流程系統(tǒng)的基本流程如圖4-2所示:圖4-2系統(tǒng)總體流程圖從上圖可知,系統(tǒng)的基本流程為:用戶在登錄頁面輸入用戶名、密碼和身份選項。如果選擇教師則系統(tǒng)調(diào)用教師頁面,對用戶名和密碼進行驗證。當?shù)卿浭r,顯示登錄失敗信息并返回首頁。當?shù)卿洺晒r,如果用戶類別是老師,則可以進行信息維護、題庫管理、在線組卷、成績管理、試卷管理等操作,按退出鍵返回登陸框。如果用戶類別是系統(tǒng)管理員,則可以進行老師,則可以進行信息維護、題庫管理、在線組卷、成績管理、教師管理、試卷管理等操作,按退出鍵返回首頁。4.3.1信息維護模塊信息維護模塊的功能是實現(xiàn)教師或管理員對自己個人信息的修改和查看,修改登錄系統(tǒng)的密碼,如果是教師身份,具有學生管理功能,可以僅對自己授課學生的信息進行更新維護。(1)教師資料(管理員下是個人信息)模塊此模塊的主要功能是查看自己提交給系統(tǒng)的信息,對于經(jīng)常會更改的信息則有自己向系統(tǒng)更新,譬如電話或郵箱,并以表格形式向用戶顯示。(2)密碼修改模塊用于修改登錄用戶的密碼,默認密碼為88888,用戶輸入錯誤后,系統(tǒng)將給出驗證提示。(3)學生管理模塊學生管理模塊是用于對所授班級學生的信息的更新。進入該頁面后,系統(tǒng)將該教師所教學生班級設(shè)為查詢條件,由教師查詢使用,并以表格形式返回給教師該班級所有學生,教師選中學生后,可以對其修改,并轉(zhuǎn)入修改頁面??沈炞C學號的正確性,并對重復的學號予以提示。此外教師還可添加入新的學生或刪除某位學生。4.3.2題庫管理模塊題庫管理模塊的功能是幫助老師管理試題庫中的資源。當調(diào)用題庫管理模塊時,系統(tǒng)會以單道試題的形式向老師顯示資源表中所有的共享試題信息或自己曾上傳的試題。老師在查看這些信息時,可以進行試題錄入、刪除個人試題、修改個人試題、修改試題設(shè)置等操作。(1)查看題庫模塊系統(tǒng)列出科目、章節(jié)、題型、層面等查詢條件,當用戶按照某幾個條件查詢條件查詢試題時,顯示部分將試題的內(nèi)容按照題目,答案,備注的形式顯示出來。管理員身份可以看到所有試題,并可以刪除修改這些試題。教師身份只能看到已經(jīng)共享的試題,而且不能修改這些試題。(2)試題錄入模塊該模塊也分為兩個部分。管理員錄入的試題將全部共享,并存在試題庫中,教師錄入的試題,需要手動設(shè)置共享。非共享試題,在教師頁面查看試題時不會顯示出來。錄入試題時,對于非法錄入將會有驗證提示。需要輸入的內(nèi)容包括科目、章節(jié)、題型等。管理員可以錄入任意科目的試題,教師只能錄入自己所授科目的試題。(3)個人題庫模塊個人試題模塊的功能主要是為了教師查看自己曾錄入試題的便捷模塊。在該模塊下教師可以分類查看自己錄入的試題。并可以修改,刪除個人試題。(4)科目設(shè)置模塊此模塊在管理員狀態(tài)下可以使用,可以設(shè)置新的科目,修改和刪除原有科目。(5)章節(jié)設(shè)置模塊管理員可以設(shè)置任意新的章節(jié),修改和刪除原有章節(jié)。教師只能設(shè)置自己所授科目的章節(jié)(6)設(shè)置題型此模塊在管理員狀態(tài)下可以使用,可以設(shè)置新的題型,修改和刪除原有題型。4.3.3在線組卷模塊手動生成試卷讓用戶通過瀏覽題庫,自己選擇題目,當用戶選擇的試題重復時(比如:同一知識點在選擇題中出現(xiàn)后,又在填空題中出現(xiàn)),系統(tǒng)要能自動檢測出沖突,讓用戶重新選擇。并在選擇的過程統(tǒng)計各種題型的數(shù)目及分值,并總計題量及總分。自動生成試卷通過設(shè)置向?qū)гO(shè)置條件,調(diào)用自動生成試卷程序生成試卷。整個過程如下:先讓用戶選擇各種題型的分值,接著是選擇考試的章,然后設(shè)置各個章的分值,最后再設(shè)置試卷的難度值。接著調(diào)用自動生成試卷算法來生成試卷,生成的試卷可以通過試卷預覽來查看,還可能根據(jù)需要打印試卷。4.3.4成績管理模塊成績管理模塊的功能是幫助老師或系統(tǒng)管理員在獲得某份試卷成績之后,將考試記錄進行存儲,并獲得此次考試的分析結(jié)果(1)查看成績模塊查看成績模塊的功能是查看某次考試某個班級的成績。其基本流程為:老師或系統(tǒng)管理員填寫并提交試卷編號和班級信息。系統(tǒng)對老師或系統(tǒng)管理員輸入的信息進行驗證,檢驗所輸入的信息是否符合標準。如果不符合標準,則提示老師或系統(tǒng)管理員輸入正確的信息。如果符合標準,則獲取該成績單,并可以顯示此次考試的成績分析。若在操作過程中出現(xiàn)錯誤,則顯示操作失敗信息。否則,顯示操作成功信息。(2)成績編輯模塊成績編輯模塊的功能是更新更新某次考試的成績或添加一次考試成績。其基本流程為:老師或系統(tǒng)管理員填寫并提交試卷編號和班級信息。系統(tǒng)對老師或系統(tǒng)管理員輸入的信息進行驗證,檢驗所輸入的信息是否符合標準。如果不符合標準,則提示老師或系統(tǒng)管理員輸入正確的信息。如果符合標準,則詢問老師或系統(tǒng)管理員是否確定進行修改操作。如果老師或系統(tǒng)管理員確定進行修改操作,則系統(tǒng)對數(shù)據(jù)庫的公告表作相應的修改。若操作過程中出現(xiàn)錯誤,則顯示操作失敗信息。否則,顯示操作成功信息。4.3.5教師管理模塊教師管理模塊的功能是幫助系統(tǒng)管理員添加管理教師信息。(1)新教師錄入模塊新教師錄入模塊的功能是由管理員增加一名新用戶。其基本流程為:管理員填寫并提交相關(guān)的教師信息。系統(tǒng)對用戶輸入的信息進行驗證,檢驗它是否符合標準。如果不符合標準,則提示用戶輸入正確的信息。如果符合標準,則獲取這些信息,并把它存儲在數(shù)據(jù)庫的用戶表中。若在操作的過程中出現(xiàn)錯誤,則顯示操作失敗信息。否則,顯示操作成功信息。(2)教師信息模塊教師信息模塊是用于對教師的信息的更新。進入該頁面后,并以表格形式返回給管理員該條件下所有教師,管理員選中教師后,可以對其修改,并轉(zhuǎn)入修改頁面,管理員填寫并提交需要修改的教師信息。系統(tǒng)對管理員輸入的信息進行驗證,檢驗它是否符合標準。如果不符合標準,則提示用戶輸入正確的信息。如果符合標準,則獲取這些信息,并對數(shù)據(jù)庫的用戶表作相應的修改。若在操作的過程中出現(xiàn)錯誤,則顯示操作失敗信息。否則,則顯示操作成功信息。4.3.6試卷管理模塊試卷管理模塊的功能是幫助系統(tǒng)管理員或教師重復利用或編輯已生成的試卷。當調(diào)用試卷管理管理模塊時,按照查詢條件系統(tǒng)會以列表的形式向用戶顯示試卷庫中所有的用戶信息。系統(tǒng)管理員在查看這些用戶信息時,可以進行修改用戶類別、刪除用戶、查詢用戶等操作。由于用戶管理模塊的詳細設(shè)計與公告管理模塊的詳細設(shè)計大致相同。因此,不在這里進行進一步闡述。(1)查看試卷模塊系統(tǒng)列出科目、編號等查詢條件,當用戶按照某幾個條件查詢條件查詢試卷時,顯示部分將試題的內(nèi)容按照題目,答案,備注的形式顯示出來。管理員身份可以看到所有試卷,并可以刪除修改這些試卷。教師身份只能看到已經(jīng)共享的試卷。系統(tǒng)對老師或系統(tǒng)管理員輸入的信息進行驗證,檢驗所輸入的信息是否符合標準。如果不符合標準,則提示老師或系統(tǒng)管理員輸入正確的信息。如果符合標準,則獲取該試卷單,并可以顯示此次考試的成績分析。若在操作過程中出現(xiàn)錯誤,則顯示操作失敗信息。否則,顯示操作成功信息。(2)個人試卷模塊個人試卷模塊的功能主要是為了教師查看自己曾生成的試卷的便捷模塊。在該模塊下教師可以分類查看自己錄入的試題。并可以修改,刪除個人試題。4.3.7用戶登錄模塊用戶登錄模塊的功能是驗證用戶名和密碼的有效性。如果有效,則把該用戶加入到系統(tǒng)的用戶名單中。其基本流程為:用戶輸入用戶名和密碼。系統(tǒng)在數(shù)據(jù)庫的用戶表中查詢用戶名和密碼與用戶輸入相一致的用戶信息。如果該用戶的用戶信息不存在,則顯示登錄失敗信息。否則,把該用戶加入到系統(tǒng)的用戶名單中,并轉(zhuǎn)向首頁。4.4界面設(shè)計系統(tǒng)界面將以淡藍色為主,向用戶提供一個簡單、友好、操作方便的操作界面。系統(tǒng)的具體操作界面如下圖所示:4.4.1用戶登錄框以下是用戶登錄框界面,用戶可以點擊登錄按鈕登錄系統(tǒng),點擊注冊按鈕注冊一個新的用戶。選中“記住我”選擇框,則用戶在下次訪問系統(tǒng)的時不需再重新登錄。圖4-3用戶登錄框4.4.2系統(tǒng)的默認界面以下是系統(tǒng)的默認的界面――歡迎界面,用戶可以查看到有關(guān)使用本系統(tǒng)說明和幫助文檔。圖4-4系統(tǒng)默認的主界面4.4.3題庫管理的界面以下是系統(tǒng)在題庫管理方面的界面。當用戶需要進行修改、刪除等操作時,需要在查詢條件中輸入信息才能進行查詢。圖4-5題庫管理的界面4.4.4教師資料的界面圖4-6教師資料的界面4.4.5信息輸入方面的界面以下是系統(tǒng)在信息輸入方面的界面。由界面可以看到,用戶只需按系統(tǒng)提示填寫信息,并在填完信息后提交信息就能完成信息輸入方面的操作。圖4-7輸入信息方面的界面4.4.6教師管理界面以下是系統(tǒng)的教師界面,當管理員查詢教師的時候,只需在關(guān)鍵字中輸入然后按某個方式查詢即可圖4-8教師管理界面4.4.7試題錄入界面以下是系統(tǒng)的試題錄入界面。當用戶需要插入圖片時,可點擊瀏覽按鈕插入圖片圖4-9試題錄入界面4.4.8自動組卷界面圖4-10自動組卷界面5設(shè)計的實現(xiàn)5.1編碼本系統(tǒng)將采用JSP作為開發(fā)工具,結(jié)合MySql進行網(wǎng)站開發(fā)。使用JSP進行系統(tǒng)開發(fā)的優(yōu)勢在于:將內(nèi)容的生成和顯示進行分離;強調(diào)可重用的組件;采用標識簡化頁面開發(fā);健壯性與安全性;此外,系統(tǒng)還將采用3層應用架構(gòu)進行開發(fā),這使代碼的管理和修改變得方便,同時也提高了系統(tǒng)的執(zhí)行效率。由于本系統(tǒng)中的很多模塊在功能的實現(xiàn)上都存在著很多相似之處,因此,我們這里只列出某些有代表意義的代碼。5.1.1登錄模塊與教師資料模塊的實現(xiàn)系統(tǒng)的頁面設(shè)計采用了CSS結(jié)構(gòu),因此有較多的配置文件。系統(tǒng)采用了目前較為流行的session編程。登錄頁面的邏輯:先有登錄界面Index.jsp獲得用戶輸入的信息,然后將這些參數(shù)傳至default.jsp做后臺業(yè)務邏輯判斷文件名:Index.jsp<html><head><metahttp-equiv="Content-Language"content="zh-cn"><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"> <title>登錄</title> <linkhref="css/login.css"rel="stylesheet"type="text/css"/><scriptlanguage="javascript">Stotype.Trim=function(){returnthis.replace(/^\s+|\s+$/g,"");}functioncheck(v1,v2){if(v1.value.Trim()==""||v2.value==""){alert("用戶名或者密碼不能為空");returnfalse;}elsereturntrue;}</script></head><body><divclass="main"> <divclass="bg_logo"><imgsrc="images/login_logo.png"alt="學校圖標"></div> <tableborder="0"width="884"align=centercellspacing="0"cellpadding="0"> <tr> <tdheight="340"width="420"background="images/login_left.png"><imgsrc="images/login_pic.png"width="422"height="265"></td> <tdheight="340"width="464"background="images/login_right.png"align="center"> <formmethod="post"action="default.jsp"name="form"> <p></p> <tablecellspacing="0"cellpadding="0"width="230"border="0"> <tbody> <tr> <tdwidth=27><imgsrc="images/login_user.gif"></td><tdwidth=50><label>用戶名:</label></td><td><inputname="username"type="text"id="user"tabindex="1"style="width:100px;"/></td> </tr> <trheight=30> <tdwidth=27><imgsrc="images/login_pw.gif"></td><tdwidth=50><label>密碼:</label></td><td><inputname="password"type="password"id="pwd"tabindex="2"style="width:100px;"/></td> </tr> </tbody> </table> <table> <tbody> <trheight=30> <td><inputid="teacher"type="radio"name="roles"value="教師"checked="true"tabindex="3"/></td><td><labelfor="RadioButtonList1_0">教師</label></td><td><inputid="operator"type="radio"name="roles"value="管理員"tabindex="3"/></td><td><labelfor="RadioButtonList1_3">管理員</label></td> </tr> </tbody> </table> <p><table> <tbody> <tr> <td><inputclass="button"type="submit"value=""name="confirm"onClick="returncheck(form.user,form.pwd)"style="background:url(images/login_submit.gif);"> </td><td> <inputclass="button"type="reset"value=""name="reset"style="background:url(images/login_reset.gif);"></td> </tr> </tbody> </table></p> </form> </td> </tr> </table> <divclass="copyright"><p>Copyright©2009版權(quán)所有Flacho</p></div></div> </body></html>文件名:Default.jsp <%@pagelanguage="java"contentType="text/html;charset=gb2312"pageEncoding="gb2312"import="java.sql.*,com.Connect"%><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><%request.setCharacterEncoding("gb2312");Stringname=request.getParameter("username");Stringpwd=request.getParameter("password");Stringrole=request.getParameter("roles");Connectionconn=Connect.getConn();PreparedStatementpstmt=null;ResultSetrs=null;Stringcurrent=null;StringrealName=null;%><%StringcheckT="select*fromteacher_login"+"whereusername=?";StringcheckOP="select*fromop_login"+"whereop_name=?";%><%try{ String_pwd=null;//臨時存放所給用戶名所對應的密碼 if(role.equals("教師")){ pstmt=conn.prepareStatement(checkT); pstmt.setString(1,name.trim()); rs=pstmt.executeQuery(); while(rs.next()){ _pwd=rs.getString("password"); } if(pwd.equals(_pwd)){//此處轉(zhuǎn)入相關(guān)頁面session=request.getSession(true); current=(String)session.getAttribute("current");//獲取當前登入用戶的用戶名 if(current==null||current!=name) current=name; session.setAttribute("current",current); //獲得登錄人員的真實姓名 pstmt=conn.prepareStatement(checkT); pstmt.setString(1,current); rs=pstmt.executeQuery(); while(rs.next()){ realName=rs.getString("real_name"); }%><jsp:forwardpage="main1.jsp"> <jsp:paramname="current"value='<%=current%>'/> <jsp:paramname="realName"value='<%=realName%>'/><jsp:paramname="role"value='老師'/><jsp:paramname="location"value='系統(tǒng)介紹'/></jsp:forward><% } else response.sendRedirect("error_login.htm"); } else{ pstmt=conn.prepareStatement(checkOP); pstmt.setString(1,name.trim()); rs=pstmt.executeQuery(); while(rs.next()){ _pwd=rs.getString("password"); } if(pwd.equals(_pwd)){//此處轉(zhuǎn)入相關(guān)頁面 session=request.getSession(true); current=(String)session.getAttribute("current");//獲取當前登入用戶的用戶名 if(current==null||current!=name) current=name; session.setAttribute("current",current); //獲得登錄人員的真實姓名 pstmt=conn.prepareStatement(checkOP); pstmt.setString(1,current); rs=pstmt.executeQuery(); while(rs.next()){ realName=rs.getString("real_name"); }%><jsp:forwardpage="main.jsp"> <jsp:paramname="current"value='<%=current%>'/> <jsp:paramname="realName"value='<%=realName%>'/><jsp:paramname="role"value='管理員'/><jsp:paramname="location"value='系統(tǒng)介紹'/></jsp:forward></head><% } else response.sendRedirect("error_login.htm"); }}catch(SQLExceptione){}finally{ try{ if(rs!=null){ rs.close(); rs=null; } if(pstmt!=null){ pstmt.close(); pstmt=null; } if(conn!=null){ conn.close(); conn=null; } } catch(SQLExceptione){ e.printStackTrace(); }}%>5.1.2個人試題模塊的實現(xiàn)個人試題模塊在邏輯層代碼如下:<%@pagelanguage="java"contentType="text/html;charset=gb2312"pageEncoding="gb2312"import="java.sql.*,.*,duce.*"%><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><%//該頁用于修改個人試題response.setContentType("text/html;charset=gb2312");request.setCharacterEncoding("gb2312");QuestionsaQuestion=newQuestions(request.getParameter("serial"));
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出口合同范本格式
- Unit 7 Be Wise with Money Period 3 Grammar 教學設(shè)計 2024-2025學年譯林版(2024)七年級英語上冊
- 勞務發(fā)包合同范本
- 動物投放景區(qū)合同范本
- 農(nóng)村菜田出租合同范本
- 出租養(yǎng)殖雞場合同范本
- 加工定制窗簾合同范本
- 保潔商場合同范本
- 包地收款合同范本
- 勞務中介代理招聘合同范本
- 寧波2025年浙江寧波市鄞州區(qū)衛(wèi)健系統(tǒng)其他事業(yè)單位招聘事業(yè)編制46人筆試歷年參考題庫附帶答案詳解
- 2025江蘇太倉市城市建設(shè)投資集團限公司招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 小學二年級數(shù)學上冊口算題
- 2024-2025學年第二學期(2025春季學期)學校工作計劃(附2月-6月安排表)
- 小學教師讀書分享活動課件
- 職業(yè)素養(yǎng)提升第2版(大學生職業(yè)素養(yǎng)指導課程)全套教學課件
- Premiere視頻編輯案例教程第2版(Premiere Pro 2020)全套教學課件
- 新人教版五年級小學數(shù)學全冊奧數(shù)(含答案)
- 志愿服務證明(多模板)
- 凈身出戶離婚協(xié)議書(完善版)
- 第二版人民幣暗記大全
評論
0/150
提交評論