版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第1章緒論1第2章需求分析2功能分析2概念模型3對數(shù)據(jù)的要求-實體關(guān)系圖3實體清單5第3章數(shù)據(jù)庫的設(shè)計6表的設(shè)計6表 PaperInfo6數(shù)據(jù)存儲設(shè)計14生成試卷編號vgetNextID) 14輸出成績 outScore) 15自定義函數(shù)16格式函數(shù) convStr) 16觸發(fā)器17第4章主要代碼實現(xiàn)17附錄19總體數(shù)據(jù)流程19總體設(shè)計22考試是人員測評過程中不可缺少的一個重要環(huán)節(jié)。設(shè)計科學(xué)的、合理的考試 內(nèi)容,采取公正的、合適的考試形式,可以全面地、客觀地、評價人員的綜合素 質(zhì)。第2章需求分析功能分析網(wǎng)絡(luò)考試系統(tǒng)實施的目的是完全或部分代替現(xiàn)有的傳統(tǒng)紙筆式考試或現(xiàn)有的 基于計算機的考試系統(tǒng)。它
2、所提供的功能一定要比現(xiàn)有系統(tǒng)強大,對比現(xiàn)有的考 試系統(tǒng),網(wǎng)絡(luò)考試系統(tǒng)需要實現(xiàn)的功能有:題庫、自動抽題、網(wǎng)上答題、自動判 卷、考試信息歸檔和系統(tǒng)信息管理等。下面對系統(tǒng)需要完成的功能進行詳細分 析。1)題庫題庫是按照一定的教育測量理論,在計算機系統(tǒng)中實現(xiàn)的某個學(xué)科題目的集 合,是在數(shù)學(xué)模型基礎(chǔ)上建立起來的教育測量工具,題庫的核心是試卷,二者是 考試系統(tǒng)中非常重要的組成部分,其質(zhì)量的高低直接影響考試系統(tǒng)的水平。在設(shè) 計中,對網(wǎng)絡(luò)題庫的模型、基本功能、運行環(huán)境以及試卷的組織、分布結(jié)構(gòu)、質(zhì) 量要求、參數(shù)標(biāo)注、抽樣考試等都有明確的規(guī)定。題庫在網(wǎng)絡(luò)考試系統(tǒng)中是核心子系統(tǒng),只有建立了題庫,并存儲了大量的題 目
3、,網(wǎng)絡(luò)考試系統(tǒng)才可以正常進行。在系統(tǒng)中對題庫主要有如下功能需求:1題目按照類型分類,主要有單項選擇題、多項選擇題、判斷題;2題目按照業(yè)務(wù)分類,每一道題都是針對具體的一業(yè)務(wù);3題目區(qū)分難度,將題目按照難度區(qū)分,在選題時根據(jù)難度選擇不同的題 目;4添加、修改、打印、瀏覽題目,這是題庫維護的基本功能;5題目審核,只有經(jīng)過審核的題目才可以在考試中使用。審核只能由專家進 行;4試卷狀態(tài)紀錄,一道試卷要記錄出題人、出題時間等信息。2)自動抽題網(wǎng)絡(luò)考試系統(tǒng)要具有自動抽題功能。在布置考試時,首先定義考試所針對的 課程。然后設(shè)置使用的題型,對每種題型選擇難度分布后。系統(tǒng)自動產(chǎn)生考試試 卷及每一道題目。3)網(wǎng)上答
4、題網(wǎng)絡(luò)考試系統(tǒng)的考試、維護、管理等所有功能都是基于網(wǎng)絡(luò)的??忌诰W(wǎng)上 答題,在開始答題時服務(wù)器將題目以HTML頁面的形式發(fā)送到客戶端瀏覽器。答題結(jié)束考生將答案以 HTML表單的形式發(fā)送回服務(wù)器。由服務(wù)器將試卷答案 保存到數(shù)據(jù)庫中。4)自動判卷自動閱卷功能是在考試結(jié)束后由系統(tǒng)自動進行客觀題的評閱,無需人工干 預(yù)。評閱結(jié)果可以即時顯示出來,也可根據(jù)需要設(shè)置分級用戶管理。5)考試信息歸檔考試的所有信息都要進行歸檔處理,包括:試卷、答案、成績等信息。這些 信息是以后評價考生的依據(jù)。6)系統(tǒng)信息管理系統(tǒng)信息管理用來維護整個系統(tǒng)的信息,包括考生信息、考試時間、業(yè)務(wù)信 息等等。這些信息都是圍繞著考試系統(tǒng)所設(shè)
5、置的。概念模型對數(shù)據(jù)的要求-實體關(guān)系圖在分析用戶對數(shù)據(jù)的要求時,使用實體關(guān)系圖最能表達系統(tǒng)的概念模型。整 個網(wǎng)絡(luò)考試系統(tǒng)中存在很多實體,而且它們之間的關(guān)系也十分復(fù)雜。但是,為了 說明用戶的需求,并讓用戶理解系統(tǒng)的功能和他們在系統(tǒng)中所扮演的角色,我將 系統(tǒng)抽象為四個概念上的實體,分別是考生、考試、題庫和課程,他們之間存在 四種關(guān)系。這樣既明確地表達了設(shè)計思路,又便于與用戶進行溝通。圖 2.1即為 網(wǎng)絡(luò)考試系統(tǒng)的實體關(guān)系圖。考試實體表示系統(tǒng)進行的多次考試,它是聯(lián)系系統(tǒng)中其他實體的橋梁??荚?與考生是多對多的關(guān)系,一名考生可以參加多次考試,同時一次考試有多名考生 參加。而考試成績就記錄在它們之間的關(guān)
6、系中??荚噷嶓w具有考試時間這一主要 屬性。圖2.1網(wǎng)絡(luò)考試系統(tǒng)實體關(guān)系圖考試是面向業(yè)務(wù)的,這就出現(xiàn)了他們之間的“面向”關(guān)系,考試與課程之間是多對一的關(guān)系,由于一門課程會進行多次考試。課程編號作為課程的標(biāo)識, 課程名體現(xiàn)它的名稱。最后,題庫是存儲所有考試卷目的數(shù)據(jù)倉庫,以題目編號作為題目的唯一標(biāo) 識??荚囀褂玫脑嚲硎菑念}庫中得到的,并且試卷可以多次的使用。這樣需要有 組卷這一關(guān)系來建立考試與題庫之間的聯(lián)系,組卷過程中生成的試卷具有編號和 狀態(tài)等屬性。圖2.2 :試卷狀態(tài)圖特別的要說明一下試卷狀態(tài)這一屬性。圖 2.2是試卷狀態(tài)圖2,生成試卷后 試卷狀態(tài)標(biāo)記為未用狀態(tài)。在考生登陸系統(tǒng)進行考試時,首先
7、是從所有標(biāo)記為未 使用的試卷中抽取出一套。標(biāo)記為使用狀態(tài),并在試卷上填寫考生的信息為此考 生唯一使用。此過程是隨機的,也就數(shù)說從空白卷子中拿出一套來填上學(xué)號和姓 名。在考試過程中考生填寫的答案也會記入這套試卷,如果考試過程中出現(xiàn)意 外,如客戶機死機,網(wǎng)絡(luò)中斷等。待故障解決,考生重新登陸系統(tǒng),會調(diào)用同一 套試卷繼續(xù)作答??荚嚱Y(jié)束或考生交卷后,試卷被系統(tǒng)標(biāo)記為停用狀態(tài)。此時的 試卷就像被收回一樣,不能更改,只有閱卷過程中可以對得分和成績進行更改。 而閱卷結(jié)束后,試卷變成終止?fàn)顟B(tài)。此時的試卷是完全只讀的,并且不再發(fā)生狀 態(tài)的變化。作為存檔和查閱使用。還有一個試卷狀態(tài)是作廢狀態(tài)。在生成試卷時有可能生成
8、多余的試卷,如果 多余的試卷到考試結(jié)束時還無人使用,那么系統(tǒng)會自動標(biāo)記為作廢試卷。同時如 果在考試過程中發(fā)生違紀現(xiàn)象,考生的試卷同樣會被標(biāo)記為作廢狀態(tài)。作廢后的 試卷是只讀的,并且沒有了應(yīng)用意義,系統(tǒng)會作為檔案保留大的系統(tǒng)含總體數(shù)據(jù)流程與總體模塊劃分,見附錄)ReferentSubjectInfoSubjectID VMBI1USubjectVMBT50AllowVMBT1StateVMBT1RValueISValueIPwdVMBT8PK_subjectinfo Reference 7dbitemsItemId A10itemVA1500aVA1000bVA1000cVA1000dVA100
9、0answerA6typeA6cotenttypeA10itemStateA2hitemVA1300haVA1000hbVA1000hcVA1000hdVA1000ItemValueVMBT3000PK_dbitemsPaperInfoPaperID VMBT50MadePaperDTDeadPaperDTStateVMBT2BeginsDTTestTimesVMBT2ScoreVMBT3UploadDTPK_PaperInfoPaperSetupIdSubjectContent Subjecttype dbcnt cntscores A10VA50A10A10A10A10PK_PaperSe
10、tup RefereiPaperContentsItemIDMBT16ItemScoreMBT3ItemAnswerMBT1UItemNoMBT5AnswerMBT1UPK_PaperContentsStudentinfoUniqueID VMBT20NameVMBT20IDCardVMBT20IDCardTypeVMBT16SexVMBT2AgeDTDegreeVMBT16CareerVMBT16PositionVMBT16PostAddressVMBT50ZipCodeVMBT6PhoneVMBT50EMailVMBT50StateVMBT16CreateTimeDTPK_Studenti
11、nfoRequestSIDIRtimeDTRvalueVMBT5PwdVMBT8StateVMBT6SValueVMBT52.2.2實體清單名稱代碼產(chǎn)生數(shù)字DbitemsdbitemsTRUE2462PaperContentsPaperContentsTRUE6UUPaperInfoPaperInfoTRUE6PaperSetupPaperSetupTRUE3URequestRequestTRUE1StudentinfoStudentinfoTRUE1SubjectInfoSubjectInfoTRUE6第3章數(shù)據(jù)庫的設(shè)計3.1表的設(shè)計3.1.1 表 Paperinfo 表 Paperinfo
12、 的卡片名稱Paperinfo代碼Paperinfo數(shù)據(jù)庫管理系統(tǒng)Microsoft SQL Server 2000 表Paperinfo的約束名稱CKT_PAPERINFO 表Paperinfo的代碼預(yù)覽alter table dbo.Paperinfodrop constraint FK_PAPERINF_REFERENCE_STUDENTI goalter table dbo.Paperinfodrop constraint FK_PAPERiNF_REFERENCE_SUBJECTi goalter table dbo.PaperContentsdrop constraint FK_P
13、APERCON_REFERENCE_PAPERiNF goif exists (select 1from sysindexeswhere id = object_id(dbo.Paperinfoand name = _WA_Sys_Begins_34C8D9D1and indid 0and indid drop index dbo.Paperinfo._WA_Sys_Begins_34C8D9D1 goif exists (select 1from sysindexeswhere id = object_id(dbo.Paperinfoand name = _WA_Sys_DeadPaper_
14、34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_DeadPaper_34C8D9D1 goif exists (select 1from sysindexeswhere id = object_id(dbo.PaperInfoand name = _WA_Sys_MadePaper_34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_MadePaper_34C8D9D1 goif exists (select 1from sysindexeswhe
15、re id = object_id(dbo.PaperInfoand name = _WA_Sys_Score_34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_Score_34C8D9D1 goif exists (select 1from sysindexeswhere id = object_id(dbo.PaperInfoand name = _WA_Sys_State_34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_State_34C8
16、D9D1 goif exists (select 1from sysindexeswhere id = object_id(dbo.PaperInfoand name = _WA_Sys_SubjectID_34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_SubjectID_34C8D9D1 goif exists (select 1from sysindexeswhere id = object_id(dbo.PaperInfoand name = _WA_Sys_TestTimes_34C8D9D1and indi
17、d 0and indid drop index dbo.PaperInfo._WA_Sys_TestTimes_34C8D9D1 goif exists (select 1from sysindexeswhere id = object_id(dbo.PaperInfoand name = _WA_Sys_UniqueID_34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_UniqueID_34C8D9D1 goif exists (select 1from sysindexeswhere id = object_id(
18、dbo.PaperInfoand name = _WA_Sys_Upload_34C8D9D1and indid 0and indid drop index dbo.PaperInfo._WA_Sys_Upload_34C8D9D1 goif exists (select 1from sysobjectswhere id = object_id(dbo.PaperInfoand type = Udrop table dbo.PaperInfogo/*/* Table: Paperinfo*/*/create table dbo.Paperinfo (PaperiDnvarchar(50not
19、null,SubjectiDnvarchar(10null,MadePaperdatetimenull,DeadPaperdatetimenull,Statenvarchar(2null,UniqueiDnvarchar(20null,Beginsdatetimenull,TestTimesnvarchar(2null,Scorenvarchar(3null,Uploaddatetimenull,/*constraint PK_Paperinfo primary key clustered (PaperIDon PRIMARYgo/*/* index: _WA_Sys_Begins_34C8D
20、9D1*/*/create index _WA_Sys_Begins_34C8D9D1 on dbo.Paperinfo ( Begins ASC on PRiMARYgo/*/* index: _WA_Sys_DeadPaper_34C8D9D1*/*/create index _WA_Sys_DeadPaper_34C8D9D1 on dbo.Paperinfo ( DeadPaper ASCon PRIMARYgo/*/* Index: _WA_Sys_MadePaper_34C8D9D1*/*/create index _WA_Sys_MadePaper_34C8D9D1 on dbo
21、.PaperInfo ( MadePaper ASC on PRIMARYgo/*/* Index: _WA_Sys_Score_34C8D9D1*/*/create index _WA_Sys_Score_34C8D9D1 on dbo.PaperInfo (Score ASCon PRIMARYgo/*/* Index: _WA_Sys_State_34C8D9D1*/create index _WA_Sys_State_34C8D9D1 on dbo.PaperInfo (State ASCon PRIMARYgo/*/* Index: _WA_Sys_SubjectID_34C8D9D
22、1*/*/create index _WA_Sys_SubjectID_34C8D9D1 on dbo.PaperInfo ( SubjectID ASC on PRIMARYgo/*=/* Index: _WA_Sys_TestTimes_34C8D9D1*/*/create index _WA_Sys_TestTimes_34C8D9D1 on dbo.PaperInfo (TestTimes ASCon PRIMARYgo/*/* Index: _WA_Sys_UniqueID_34C8D9D1 /*=*/*/create index _WA_Sys_UniqueID_34C8D9D1
23、on dbo.PaperInfo (UniqueID ASCon PRIMARYgo/*/* Index: _WA_Sys_Upload_34C8D9D1*/*/create index _WA_Sys_Upload_34C8D9D1 on dbo.PaperInfo ( Upload ASC on PRIMARYgoalter table dbo.PaperInfoadd constraint FK_PAPERINF_REFERENCE_STUDENTI foreign (UniqueIDreferences dbo.Studentinfo (UniqueIDgoalter table db
24、o.PaperInfoadd constraint FK_PAPERINF_REFERENCE_SUBJECTI foreignkeykey(SubjectIDreferences dbo.SubjectInfo (SubjectIDgo 表Paperinfo的輸出參考清單名稱代碼外鍵列Reference_3Reference_3UniqueiDReference_5Reference_5SubjectiD 表 Paperinfo 的列清單名稱代碼PaperiDPaperiDSubjectiDSubjectiDMadePaperMadePaperDeadPaperDeadPaperStateS
25、tateUniqueiDUniqueiDBeginsBeginsTestTimesTestTimesScoreScoreUploadUpload1) Paperinfo 的歹 1 PaperiD表Paperinfo 的歹U PaperiD 的卡片名稱PaperiD代碼PaperiD數(shù)據(jù)類型nvarchar(50強制TRUE列PaperiD 的依賴清單名稱代碼類名稱Reference JoinPK_PaperinfoPK_PaperinfoKey列PaperiD的擴充屬性清單(其他略數(shù)據(jù)存儲設(shè)計生成試卷編號 and OBJECTPROPERTY(id, NIsProcedure = 1drop
26、procedure dbo.getNextIDGOSET QUOTED_IDENTIFIER ONGOSET ANSI_NULLS ONGOCREATE Procedure getNextIDoutID varchar(10 outputasDECLARE SysInfoCursor CURSOR FORSELECT TestcenterCodeFROM sysInfoOPEN SysInfoCursordeclare lsStart varchar(4,nextID varchar(6,oldID varchar(6FETCH NEXT FROM SysInfocursor INTO lsS
27、tartCLOSE SysInfoCursorDEALLOCATE SysInfoCursorDeclare nextIDCursor Cursor forSELECT NextUniqueIDFROM DataCtrlopen nextIDCursorFETCH NEXT FROM nextIDCursor INTO nextIDclose nextIDCursordeallocate nextIDCursorset oldID=nextIDset outId=lsStart+nextIDset nextID=dbo.convStr(cast(nextID as integer+1,0000
28、00update datactrl set NextUniqueId=nextId where nextUniqueID=oldIDreturnGOSET QUOTED_IDENTIFIER OFFGOSET ANSI_NULLS ONGO輸出成績 and OBJECTPROPERTY(id, NIsProcedure = 1drop procedure dbo.outScoreGOCREATE PROCEDURE dbo.outScore ASIF EXISTS (SELECT name FROM sysobjectsWHERE name = ls1 DROP table ls1IF EXI
29、STS (SELECT name FROM sysobjectsWHERE name = ls2 DROP table ls2select e.uniqueid,s.subjectid,s.subject,p.scorento ls1 from studentinfo e,subjectinfo s,paperinfo pwhere e.uniqueid=p.uniqueid and s.subjectid=p.subjectid and p.state=4 and p.subjectid1000005select e.uniqueid,s.subjectid,s.subject,p.scor
30、ento ls2 from studentinfo e,subjectinfo s,paperinfo pwhere e.uniqueid=p.uniqueid and s.subjectid=p.subjectid and p.state=4 and p.subjectid=1000005,select ls1.*,ls2.score as score1 from ls1 inner join ls2 on ls1.uniqueid=ls2.uniqueidGOSET QUOTED_IDENTIFIER OFFGOSET ANSI_NULLS ONGO自定義函數(shù)格式函數(shù) and xtype
31、in (NFN, NIF, NTFdrop function dbo.convStrGOCREATE FUNCTION convStr (Str1 varchar(30,style1 varchar(30RETURNS varchar(30ASBEGINdeclare len1 integer ,len2 integer,i int,lsS varchar(30set len1=len(Str1set len2=len(Style1set i=1set lsS=while iENDGOSET QUOTED_IDENTIFIER OFFGOSET ANSI_NULLS ONGO3.4觸發(fā)器(要求
32、2個以上第4章主要代碼實現(xiàn)4.1 組卷(createPaper.asp=1000001session(uniqueID=abcset rsPaperInfo=server.CreateObject(ADODB.RecordSett1=SELECT MAX(PaperID AS Expr1 FROM PaperInfo WHERE (SubjectID = “&session(subjectID&t1=Select max(paperid from paperinfo where paperid=&lsSubjectID&set rsPaperInfo=conn.execute(t1dim ls
33、PaperID,oldPaperIDlsPaperID=A+cstr(year(now+convstr(cstr(month(now,“00+convstr(cstr( day(now,00lsPaperID=lsPaperID+session(subjectID”+18053if rsPaperInfo.EOF thenlsPaperID=lsPaperID+convStr(1,000000”elseoldPaperID=rsPaperInfo(0if mid(oldPaperID,1,21=lsPaperID thenlsPaperID=lsPaperID+convStr(cstr(cin
34、t(mid(oldPaperID,22+1,”000000” elselsPaperID=lsPaperID+convStr(1,000000”end ifend ifrspaperInfo.close(set rsPaperInfo=nothingtsql=insertintopaperinfo(uniqueid,paperid,subjectid,madepaper,deadpaper,state,begins,testtimes values (aaaJ&lsPaperID&J&session(subjectIDtsql=tsql&,getdate(,adddate(minute,120
35、,getdate(,1,getdate(,1conn.execute(tsqlSet Comm=Server.CreateObject(ADODB.CommandComm.ActiveConnection=conn以comm對象建立存儲過程連接,4代表連接類型為存儲過程Comm.CommandText=setPaperInfoComm.CommandType=4lsPaperID,lsSubjectID,lsUniqueID以p1為名稱建立comm對象的parameter方法。將第一個參數(shù)lsPaperID追 加到p1集合中l(wèi)sPaperID調(diào)用的第一個參數(shù)的名稱200參數(shù)類型varchar型1參數(shù)流向輸入,&入為1,輸出為230參數(shù)的長度50request(fullname 賦參數(shù)出始值Set p1=Comm.CreateParameter(lsPaperID,200,1,30,lsPaperIDComm.Parameters.Append p1以p1為名稱建立comm對象的parameter方法。將第二個參數(shù) password追 加到p1集合中
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度生物制藥技術(shù)轉(zhuǎn)讓合同示范4篇
- 深圳租賃合同模板
- 月嫂居間合同協(xié)議書范本
- 2025年跨境電商平臺委托運營與全球采購合同6篇
- 二零二五年度綠化苗木種植基地租賃合同4篇
- 2025-2030年(全新版)中國便攜式醫(yī)療器械行業(yè)發(fā)展前景調(diào)研及投資戰(zhàn)略分析報告
- 2025-2030年中國食品軟袋包裝市場發(fā)展前景調(diào)研及投資趨勢分析報告
- 2025版道路路燈照明設(shè)施維修保養(yǎng)服務(wù)協(xié)議4篇
- 2025-2030年中國重卡汽車行業(yè)運行狀況及投資前景趨勢分析報告新版
- 福建省地方標(biāo)準《先張法預(yù)應(yīng)力混凝土管樁基礎(chǔ)技術(shù)規(guī)程》DBJ13-2023
- 危險作業(yè)監(jiān)護人員培訓(xùn)
- 職業(yè)病防治企業(yè)臺賬樣本
- 充電樁驗收表
- 城市水環(huán)境新型污染物的去除新技術(shù)課件
- 中長期貸款按實際投向統(tǒng)計統(tǒng)計制度
- 新媒體營銷完整版教學(xué)課件最全ppt整套教程電子講義(最新)
- 鍋爐專業(yè)2020年防非停措施
- 鼻炎營銷模式策劃書課件(PPT 40頁)
- 中國鐵塔股份有限公司通信鐵塔、機房施工及驗收規(guī)范(試行)
- 線路綜合檢修施工方案
評論
0/150
提交評論