版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
在線考試系統(tǒng)項目報告1目錄第一章需求剖析41.1觀點剖析4管理員需求剖析4學生需求剖析5教師需求剖析51.2系統(tǒng)剖析51.3功能剖析7功能模塊圖設計7學生用例圖設計7教師用例圖設計8第二章系統(tǒng)設計82.1整體時序圖設計82.2數(shù)據(jù)庫設計9試卷種類表設計9試題表設計9試題內(nèi)容表設計9試卷表設計10試卷詳情表設計10試卷分值表設計10考生答卷表設計11考生答卷詳情表設計112.3表見關系設計12試題12章節(jié)試題統(tǒng)計12試卷13試卷詳盡13試卷考題詳盡14考卷列表14第三章程序設計143.1在線考試系統(tǒng)后臺程序?qū)崿F(xiàn)15母版頁設計15后臺題庫增添頁面設計15后臺題庫管理頁面設計16后臺試卷生成17后臺試卷詳情查察頁面17后臺試卷管理頁面183.2在線考試系統(tǒng)前臺程序?qū)崿F(xiàn)182試卷列表頁面設計18前臺考試頁面設計19第四章編碼設計194.1試卷詳情的編碼194.2題庫管理的編碼21第五章編碼測試235.1頁面測試235.2數(shù)據(jù)表測試23第六章部署保護246.1創(chuàng)立Windows安裝程序包部署Web應用程序246.2Web.config配置293第一章需求剖析1.1觀點剖析本系統(tǒng)的用戶可分為管理員、學生用戶及教師用戶三類。本系統(tǒng)共分為三個界面:一個界面用于管理員登錄,主要負責進行基本資料。題庫、試卷、成績的管理以及查問等;此外一個界面用于登錄一般用戶,主要負責在線考試,查問過去考試成績留言和在線溝通等;還有一個界面用于教師登錄,只需負責度題型、科目進行設置,對學生做錯的題目進行剖析。管理員需求剖析包含試卷管理,題庫管理,成績管理。1)試卷管理:管理員能夠從課程,各樣題型的數(shù)目等方面對某份試卷進行改正和刪除,增添新試卷等。2)題庫管理:管理員能夠?qū)︻}庫中的試題進行三種基本操作:添加新的考題、刪除舊有考題、改正原有考題,此中試題種類包含判斷題、填空題、選擇題;關于每種種類的試題。教師能夠設置題干、答案等屬性。3)成績管理:管理員能夠查察考生的考試成績,并針對不一樣的課程進行成績統(tǒng)計,包含考試人數(shù)、最高分、最低分、均勻分以及個分數(shù)段得分人數(shù)等。4(4)學生管理:管理員能夠?qū)τ脩舻馁Y料進行查問、刪除。學生需求剖析包含在線考試、查問過去考試成績等。1)在線考試:學生能夠任選時間進行在線考試,考試結(jié)束后,系統(tǒng)會依據(jù)已有的標準答案進行在線考試,考生能夠馬上知道考試成績。2)查問過去考試成績:學生能夠在線查問從前參加的每門課程的有關信息教師需求剖析包含試卷增添,題庫增添等。1)試卷增添:教師能夠增添試卷,能夠從課程,各樣題型的數(shù)目等方面對某份試卷進行增添。2)題庫增添:教師能夠?qū)υ鎏硇碌目碱}、刪除舊有考題、改正原有考題,此中試題種類包含判斷題、填空題、選擇題;關于每種種類的試題。教師能夠設置題干、答案等屬性。1.2系統(tǒng)剖析在管理端子系統(tǒng)中:1)系統(tǒng)保護模塊主假如針對管理員,學生,教師,班級等信息進行改正操作;5(2)權限管理模塊主假如對各使用者對系統(tǒng)的操作權限進行管理。比如學生只好查察個人信息,選擇試卷,答卷,查當作績等;教師只好出題,組卷,判卷,查察學生成績等;管理員能夠全面對系統(tǒng)進行操作及數(shù)據(jù)保護等。在教師端子系統(tǒng)中:(1)出題模塊主假如由教師依據(jù)題型不一樣向題庫中輸入題目以及答案,方便組卷。題目自動存入對應的數(shù)據(jù)庫中。2)組卷模塊中能夠由系統(tǒng)隨機組卷,輸入各題型的數(shù)目,分值,系統(tǒng)自動從題庫中隨機選擇題目組成試卷;也能夠由教師自主選擇題目進行出題。3)統(tǒng)計成績模塊中教師能夠依據(jù)學生答卷狀況對成績進行統(tǒng)計,方便教師對學生答卷狀況有直觀認識,利于教課。4)提交成績模塊由教師將學生綜合成績狀況輸入有關管理系統(tǒng)。在學生端子系統(tǒng)中:1)選擇試卷模塊由學生選擇所要進行的考試一試卷。2)答卷模塊顯示學生所選試卷,供學生作答,選擇判斷直接對選項進行選擇,主觀題填寫在相應的文本框中。3)交卷模塊會自動依據(jù)題庫中的信息對學生的選擇判斷題進行判卷,減少了教師的工作量。61.3功能剖析功能模塊圖設計在線考試系統(tǒng)后臺管理題試庫卷管管理理試題題題題試試卷試庫庫庫庫卷卷詳卷刪建查修生查情刪除設詢改成詢查除看1.4用例圖設計學生用例圖設計在線考試試卷列表學生
前臺管理在考線卷考列試表7教師用例圖設計試卷生成題庫增添試卷詳情查察題庫查問試卷查問教師題庫刪除試卷刪除第二章系統(tǒng)設計2.1整體時序圖設計登錄試卷列表考試數(shù)據(jù)庫操作學生輸入用戶名和密碼登錄成功3.提交查問試卷懇求4.查問試卷懇求辦理6.返回試卷列表顯示試卷列表提交考試懇求9.確認考試10.返回考卷試題顯示考卷試題提出交試卷懇求13.辦理答卷信息14.返回辦理結(jié)果顯示考試結(jié)果82.2數(shù)據(jù)庫設計試卷種類表設計試題表設計試題內(nèi)容表設計9試卷表設計試卷詳情表設計試卷分值表設計10考生答卷表設計考生答卷詳情表設計112.3表見關系設計試題章節(jié)試題統(tǒng)計12試卷試卷詳盡13試卷考題詳盡考卷列表第三章程序設計143.1在線考試系統(tǒng)后臺程序?qū)崿F(xiàn)母版頁設計后臺題庫增添頁面設計15后臺題庫管理頁面設計16后臺試卷生成后臺試卷詳情查察頁面17后臺試卷管理頁面3.2在線考試系統(tǒng)前臺程序?qū)崿F(xiàn)試卷列表頁面設計18前臺考試頁面設計第四章編碼設計4.1試卷詳情的編碼publicpartial{voidPage_Load(objectsender,EventArgse)protected{if(!Page.IsPostBack){InitPageData( );}}privatevoidInitPageData( ){intchoiceCount=0,blankCount=0,judgeCount=0;doublechoicePoint=0,blankPoint=0,judgePoint=0;Stringsql="";=Request.QueryString["paperID"];StringpaperIDwherePaperID="+paperID;sql="select*fromUV_Exam_PaperQuestionDetailDataTabledtChoice=newDataTable( );dtChoice.Columns.Add("chooseNo");dtChoice.Columns.Add("questionContent");dtChoice.Columns.Add("RightAnswer");dtChoice.Columns.Add("optionA");dtChoice.Columns.Add("optionB");dtChoice.Columns.Add("optionC");dtChoice.Columns.Add("optionD");DataTabledtBlank=newDataTable( );19dtBlank.Columns.Add("questionContent");dtBlank.Columns.Add("blankNo");dtBlank.Columns.Add("RightAnswer");DataTabledtJudge=newDataTable( );dtJudge.Columns.Add("questionContent");dtJudge.Columns.Add("judgeNo");dtJudge.Columns.Add("RightAnswer");StringsqlQuery=sql+"andQuestionTypeID=1";DataTabledtAll=CommonUtils.GetTableBySql(sqlQuery).Copy( );for(inti=0;i<dtAll.Rows.Count;i++){DataRowdrAll=dtAll.Rows[i];DataRowdrTmp=dtChoice.NewRow( );BooleanisRightAnsweri=Convert.ToBoolean(drAll["IsRight"]);drTmp["chooseNo"]=/4+1;if(i%4==0){drTmp["questionContent"]=drAll["QuestionContent"];if(isRightAnswer)=drTmp["RightAnswer"]="A";}drTmp["optionA"]drAll["SelectContent"];i++;=dtAll.Rows[i];drAllisRightAnswer=Convert.ToBoolean(drAll["IsRight"]);if(i%4==1){drTmp["optionB"]=drAll["SelectContent"];="B";}if(isRightAnswer)drTmp["RightAnswer"]i++;=Convert.ToBoolean(drAll["IsRight"]);isRightAnswerdrAll=dtAll.Rows[i];if(i%4==2){drTmp["optionC"]=drAll["SelectContent"];="C";}if(isRightAnswer)drTmp["RightAnswer"]i++;=dtAll.Rows[i];drAllisRightAnswer=Convert.ToBoolean(drAll["IsRight"]);if(i%4==3){drTmp["optionD"]=drAll["SelectContent"];="D";if(isRightAnswer)drTmp["RightAnswer"]}dtChoice.Rows.Add(drTmp);}=dtChoice.Rows.Count;choiceCountchoicePoint=Convert.ToDouble(dtAll.Rows[0]["Point"]);sqlQuery=sql+"andQuestionTypeID=2andIsRight=1";dtAll=CommonUtils.GetTableBySql(sqlQuery).Copy( );for(inti=0;i<dtAll.Rows.Count;i++){DataRowdrAll=dtAll.Rows[i];DataRowdrTmp=dtBlank.NewRow( );drTmp["questionContent"]=drAll["QuestionContent"];drTmp["blankNo"]=i+1;drTmp["RightAnswer"]=drAll["SelectContent"];}dtBlank.Rows.Add(drTmp);=dtBlank.Rows.Count;blankCountblankPoint=Convert.ToDouble(dtAll.Rows[0]["Point"]);sqlQuery=sql+"andQuestionTypeID=3";dtAll=CommonUtils.GetTableBySql(sqlQuery).Copy( );for(inti=0;i<dtAll.Rows.Count;i+=2){DataRowdrAll=dtAll.Rows[i];DataRowdrTmp=dtJudge.NewRow( );drTmp["questionContent"]=drAll["QuestionContent"];drTmp["judgeNo"]=i/2+1;BooleanisRightAnswer=Convert.ToBoolean(drAll["IsRight"]);if(isRightAnswer)="正確";elsedrTmp["RightAnswer"]drTmp["RightAnswer"]="錯誤";dtJudge.Rows.Add(drTmp);20}=dtJudge.Rows.Count;judgePoint=judgeCountConvert.ToDouble(dtAll.Rows[0]["Point"]);dtlChoose.DataSource=dtChoice.DefaultView;dtlChoose.DataBind( );=Convert.ToString(choiceCount);lblChooseCount.TextlblChoosePoint.Text=Convert.ToString(choicePoint);*choicePoint);lblChooseTotalPoint.Text=Convert.ToString(choiceCountdtlJudge.DataSource=dtJudge.DefaultView;dtlJudge.DataBind( );=Convert.ToString(judgeCount);lblJudgeCount.TextlblJudgePoint.Text=Convert.ToString(judgePoint);*judgePoint);lblJudgeTotalPoint.Text=Convert.ToString(judgeCountdtlBlank.DataSource=dtBlank.DefaultView;dtlBlank.DataBind( );=Convert.ToString(blankCount);lblBlankCount.TextlblBlankPoint.Text=Convert.ToString(blankPoint);*blankPoint);lblBlankTotalPoint.Text=Convert.ToString(blankCountlblPageTitle.Text=Convert.ToString(dtAll.Rows[0]["PaperName"]);lblExamTimeLength.Text=Convert.ToString(dtAll.Rows[0]["TimeLength"]);lblExamStartTime.Text=Convert.ToString(dtAll.Rows[0]["ExamDate"]);judgeCount+lblQuestionCount.Text=Convert.ToString(choiceCount+blankCount);=Convert.ToString(choiceCount*choicePoint+lblTotalScore.TextjudgeCount*judgePoint+blankCount*blankPoint);lblCreateDateTime.Text=Convert.ToString(dtAll.Rows[0]["CreateDate"]);}}4.2題庫管理的編碼publicpartialclassAdmin_OnlineExam_Question{stringsql="";privateprivateUpdatePanelUpdatePanel1;sender,EventArgse)protectedvoidPage_Load(object{=(UpdatePanel)Master.FindControl("UPN");UpdatePanel1if(Session[CommonUtils.Session_UserId]==null){Response.Write("<Scriptlanguage='javascript'>alert('請先登錄!')</script>");Response.End( );}else{if(!Page.IsPostBack){InitPageData( );}}}privatevoidInitPageData( ){subjectID=this.ddlSubject.SelectedValue;stringstringchapterID=this.ddlChapter.SelectedValue;stringquestionTypeID=this.ddlQuestionType.SelectedValue;stringteacherID=Convert.ToString(Session[CommonUtils.Session_UserId]);;="select*fromUV_Select_TeacherSubjectRelationwhere1=1";sqlsql+="andteacherID="+teacherID;sql,"subjectName",CommonUtils.ECDropDownList(this.ddlSubject,"subjectID",true);select*fromUT_Exam_QuestionType";sql="CommonUtils.ECDropDownList(this.ddlQuestionType,sql,"questionTypeName","ID",true);(!"0".Equals(subjectID)&&!"".Equals(subjectID))if{sql="select*fromUT_Base_ChapterwheresubjectID="+subjectID;true);CommonUtils.ECDropDownList(this.ddlChapter,sql,"chapterName","ID",21}operFlag=Request.QueryString["operFlag"];Stringif(operFlag==null)ifoperFlag="add";("add".Equals(operFlag)){InitPageData_Add( );=false;=true;}=false;if("query".Equals(operFlag))else{stringquestionID=Request.QueryString["ID"];InitPageData_NotAdd(questionID);=true;=false;}=false;if("modify".Equals(operFlag))else{stringquestionID=Request.QueryString["ID"];InitPageData_NotAdd(questionID);=false;=false;=true;}}voidddlSubject_SelectedIndexChanged(objectsender,EventArgse)protected{subjectID=this.ddlSubject.SelectedValue;stringInitDDLChapter(subjectID);}voidInitDDLChapter(stringsubjectID)private{(!"0".Equals(subjectID)&&!"".Equals(subjectID))if{sql="select*fromUT_Base_ChapterwheresubjectID="+subjectID;true);CommonUtils.ECDropDownList(this.ddlChapter,sql,"chapterName","ID",}}voidddlQuestionType_SelectedIndexChanged(objectsender,EventArgsprotectede){questionTypeID=this.ddlQuestionType.SelectedValue;stringif(questionTypeID.Equals("1")){=true;=false;}=false;(questionTypeID.Equals("3"))if{=false;=false;}=true;(questionTypeID.Equals("2"))if{=false;=true;}=false;}voidInitPageData_Add( )private{="";="";="";="";="";="";"";=="";=-1;=-1;22}第五章編碼測試5.1頁面測試測試用例階段實質(zhì)測試階段頁面操作判斷方法希望輸出實質(zhì)輸出備注翻開頁面1.開考到開考15分鐘從前內(nèi)同意考試非考試時間彈出不一樣意考與希望值一2.查察UV_Exam_PaperQuestionDetail試致頁面考生信息、試卷信息、考題信息與數(shù)據(jù)庫信息一致交卷查察UV_Exam_PageQuestionDetail計考試成績與交卷結(jié)果一致與希望值一算成績能否與交卷結(jié)果相同致5.2數(shù)據(jù)表測試測試用例階段實質(zhì)測試階段字段名稱描繪判斷方法希望輸出實質(zhì)輸出備注ID主鍵,自動增在數(shù)據(jù)庫中查察自動增加與希望值一長致PaperID試卷ID寫入數(shù)據(jù)與考生考卷ID能否寫入數(shù)據(jù)與考生試卷與希望值一相等ID一致致StudentID學生ID寫入數(shù)據(jù)與考生ID能否相等寫入數(shù)據(jù)與考生ID與希望值一一致致StartTime考試開始時寫入數(shù)據(jù)與開考時間能否相寫入數(shù)據(jù)與開考時間與希望值一間等一致致EndTime考試結(jié)束時寫入數(shù)據(jù)與終考時間能否相1.開考試數(shù)據(jù)為空2.與希望值一間等交卷時寫入交卷時間致Score考試成績寫入數(shù)據(jù)與試卷構造成績是1.開考是數(shù)據(jù)為空2.與希望值一否相等交卷時寫答卷分值致23測試用例階段實質(zhì)測試階段字段名稱描繪判斷方法希望輸出實質(zhì)備輸出注ID主鍵,自在數(shù)據(jù)庫中查察自動增加與期動增加望值一致StudentAnwerI答卷ID查察UT_Exam_StudentAnswer與UT_Exam_StudentAnswer與期D表的ID表ID值一致望值一致QuestionID試題ID查看與與期UV_Exam_PaperQuestionDetaiUV_Exam_PaperQuestionDetai望值l視圖進行比較l視圖中的QuestionID一致一致SelectContentID選項ID查看與與期UV_Exam_PaperQuestionDetaiUV_Exam_PaperQuestionDetai望值l視圖進行比較l視圖中的SelectContentID一一致致Remark備注:記查看試題答錯,此項填入的數(shù)據(jù)和與期錄填空UV_Exam_PaperQuestionDetai用戶頁面輸入的答案一致試望值題學生l視圖進行比較題答對,此項為空一致答題內(nèi)容第六章部署保護6.1創(chuàng)立Windows安裝程序包部署Web應用程序采納“公布站點預編譯”功能公布網(wǎng)上選課系統(tǒng)站點到一個目標Web服務器的詳細操作步驟以下。24在VS.NET2005中翻開網(wǎng)上選課系統(tǒng)的預編譯網(wǎng)站所在文件夾“D:\SelectCourse”。2.鼠標右鍵單擊解決方案文件,在彈出的快捷菜單中選擇“生成解決方案”命令后,出現(xiàn)一個“另存文件夾為”的話框,選擇“保留于”下拉列表框,選擇目標文件夾為“”,在“文件名”文D:\SelectCourse本框中輸入“SelectCourse.sln”文件名,而后單擊“保留”按鈕。3.選擇“文件”→“增添”→“新建項目”菜單命令,將翻開“增添新項目”對畫框。4.在“增添新項目”對話框的“項目種類”中選擇“其余項目種類”,在“模板”列表中選擇“Web安裝項目”,在“名稱”文件框中輸入項目名稱為
溫馨提示
- 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年度年福建省高校教師資格證之高等教育法規(guī)強化訓練試卷B卷附答案
- 2024年通風消聲器項目資金籌措計劃書代可行性研究報告
- 成考英語成人高考(高起專)試卷及解答參考
- 2024年解除勞動關系協(xié)議模板
- 2024年灑水車租賃協(xié)議模板
- 城市中心2024停車場地租賃協(xié)議
- 2024年工程承包協(xié)議格式
- 2024年度新鮮豬肉購銷協(xié)議模板
- 2024專業(yè)修路工程協(xié)作協(xié)議
- 2024小食品買賣協(xié)議書
- 北京市豐臺區(qū)2024-2025學年高二上學期11月期中考試生物試題
- 安徽省合肥市2024-2025學年九年級上學期期中物理模擬試卷二(含答案)
- 浙江省嘉興市桐鄉(xiāng)六中教育集團實驗中學2024-2025學年七年級上學期期中科學試題(無答案)
- 【四年級】上冊道德與法治-4上3單元第9課《正確認識廣告》
- 中國物聯(lián)網(wǎng)安全行業(yè)市場現(xiàn)狀、前景分析研究報告(智研咨詢發(fā)布)
- 四川省成都市新津中學2024-2025學年八年級上學期10月月考英語試卷
- 2024-2025學年高一上學期期中模擬考試數(shù)學試題01(人教A版2019必修第一冊第一-三章)(全解全析)
- 廣東省東莞市多校2024-2025學年三年級上學期第二次月考數(shù)學試卷
- 第11課 多彩風車園(教案)三年級上冊信息技術粵教版B版
- 國家知識產(chǎn)權局專利局專利審查協(xié)作2024年中心度公開招考專利審查員高頻500題難、易錯點模擬試題附帶答案詳解
- 2024秋初中化學九年級上冊教學設計(教案)跨學科實踐活動5
評論
0/150
提交評論