基于NET的自動閱卷考試系統(tǒng)畢業(yè)論文_第1頁
基于NET的自動閱卷考試系統(tǒng)畢業(yè)論文_第2頁
基于NET的自動閱卷考試系統(tǒng)畢業(yè)論文_第3頁
基于NET的自動閱卷考試系統(tǒng)畢業(yè)論文_第4頁
基于NET的自動閱卷考試系統(tǒng)畢業(yè)論文_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于.net 的自動閱卷考試系統(tǒng)【摘要】隨著網絡技術的發(fā)展,教學方式發(fā)生了很大的變化。傳統(tǒng)的教學考試方式已漸漸無法適應社會的發(fā)展,它要求有新的考試方式來適應新的教學方式。網絡化考試系統(tǒng)在很多領域都已經有所應用,但在計算機類考試中較為鮮見,特別是帶閱卷功能的考試系統(tǒng)。本系統(tǒng)利用.net 技術,采用 c#語言來實現應用程序的設計和功能的實現,數據庫則采用 sql server 2000 來設計。這是一個基于 b/s(瀏覽器/服務器模式)架構的系統(tǒng)。本文介紹了自動閱卷考試系統(tǒng)的社會需求、發(fā)展前景和系統(tǒng)的主要功能,對各個功能模塊進行了詳細的介紹。關鍵詞:b/s(瀏覽器/服務器模式) ,反射,.net,

2、自動閱卷automatic scoring examination systembased on .net【abstract】with the development of network technology, teaching methods have taken great changes. examination of the traditional teaching methods are gradually unable to adapt to the development of society, it requires a new examination of ways to

3、adapt to the new teaching methods.network examination system have been used in many areas, but in the computer examination is uncommon, especially with automatic scoring function of the examination system. this system used. net technology and c # language to achieve the application of the design and

4、 functionality of the realizetion .the database is used sql server 2000 to design;this system is based on b / s (browser / server model) structure. in this paper ,it introduced the social needs、development prospects and main function of the automatic scoring examination system ,of course carried out

5、 a detailed introduction of the various functional modules.keywords: b/s (browser/server model), reflection,.net, automatic scoring目目 錄錄1.1.背景介紹背景介紹 .1 11.1.網絡考試的背景介紹 .11.1.1. 網絡考試系統(tǒng)的社會需求 .11.1.2. 目前已有的考試系統(tǒng)的優(yōu)、缺點 .11.2.選擇考試系統(tǒng)的原因 .21.3.設計目標 .22.2.基于基于.net.net 的自動閱卷考試系統(tǒng)概述的自動閱卷考試系統(tǒng)概述 .3 32.1.用戶需求簡介 .32.

6、1.1. 功能需求 .32.1.2. 性能需求 .32.1.3. 可靠性和可用性需求 .32.2.工作過程 .32.3.系統(tǒng)特點 .33.3.設計中要解決的問題設計中要解決的問題 .5 53.1.用戶權限 .53.2.考卷的設置 .53.3.自動閱卷的實現 .53.4.考試時間控制問題 .54.4.總體設計總體設計 .6 64.1.系統(tǒng)設計 .64.1.1. 設計目標 .64.1.2. 開發(fā)環(huán)境 .64.1.3. 開發(fā)語言 .64.1.4. 開發(fā)工具 .64.1.5. 后臺數據庫 .64.1.6. 運行環(huán)境 .64.2.數據庫需求設計 .64.2.1. 系統(tǒng)流程圖 .64.2.2. 系統(tǒng) e-

7、r 圖 .84.2.3. 數據庫中的表 .84.2.4. 數據庫中的視圖 .124.3.系統(tǒng)總體構架設計 .144.3.1. 系統(tǒng)層次結構圖 .144.3.2. 系統(tǒng)流程圖 .145.5.系統(tǒng)主要功能模塊設計系統(tǒng)主要功能模塊設計 .18185.1.登陸模塊 .185.2.注冊模塊 .185.3.學生模塊 .185.4.教師模塊 .185.5.重點、難點代碼設計 .195.5.1. 時間控制的實現 .195.5.2. 自動閱卷的實現 .215.6.實現界面 .306.6.系統(tǒng)實現技術系統(tǒng)實現技術 .36366.1.b/s 模式.366.2.反射 .366.3.sqlhelper.387.7.性能

8、測試與分析性能測試與分析 .40407.1.測試目的和原則 .407.1.1. 測試的目的 .407.1.2. 測試的原則 .407.2.測試環(huán)境與測試條件 .407.2.1. 測試環(huán)境 .407.2.2. 測試條件 .407.3.測試實例的研究與選擇 .407.4.實例測試結果 .427.5.性能分析 .42結束語 .43謝辭 .43參考文獻 .43- 1 -基于.net 的自動閱卷考試系統(tǒng)隨著網絡技術的發(fā)展,教學方式發(fā)生了很大的變化。傳統(tǒng)的教學考試方式已漸漸無法適應社會的發(fā)展,它要求有新的考試方式來適應新的教學方式。網絡化考試系統(tǒng)在很多領域都已經有所應用,但在計算機類考試中較為鮮見,特別是

9、帶閱卷功能的考試系統(tǒng)。研究這個系統(tǒng),重點在于考卷的自動生成和批閱,特別是對于主觀填空題和編程題。充分利用在大學所學的知識和現有的網絡科技技術進行研究,加深、鞏固已學知識,接觸、學習新的知識,提高技能,希望能通過研究增強實踐經驗,減輕老師的負擔,節(jié)約資源,同時 對自己進行考核,為步入社會做準備。1. 背景介紹1.1. 網絡考試的背景介紹隨著計算機網絡技術的突飛猛進及教育網絡化的不斷推進,傳統(tǒng)的考試模式表現出一些弊端,比如繁雜的試卷收發(fā)、投入相當人力的閱卷等。在相當程度上,這些工作可以完全或部分交由計算機完成。在線考試系統(tǒng)指利用計算機,通過計算機網絡實現對學生的考核。與傳統(tǒng)的考試模式相比,它極大限

10、度排除了人為因素的作用,保證了考試的客觀、公正;通??忌诳荚囍?即可得到考試成績;而且通過計算機閱卷,通過事先設計好的答案,使得閱卷具有高效性、可靠性、公平性。尤其在應用考試系統(tǒng)對計算機有關知識的考核中,除了理論知識之外,還可以考查考生的實際動手操作能力。網絡考試系統(tǒng)是一個基于數據庫和計算機網絡的在線實時測試系統(tǒng),包括考生管理系統(tǒng)、考試系統(tǒng)、題庫系統(tǒng)、閱卷系統(tǒng)、考試管理系統(tǒng)等。該系統(tǒng)可以在被允許的任何地點、時間進行在線實時考試。具有信息量大、效率高、管理方便、考試客觀公正等優(yōu)點,教學人員可以很容易地從考試結果中獲得教學反饋信息。1.1.1.網絡考試系統(tǒng)的社會需求考試是教學效果測量的重要手段

11、。傳統(tǒng)的考試方式是以紙為媒介的,它要求教師印試卷、安排考試、監(jiān)考, 收集試卷, 評改試卷, 這是一個漫長而復雜的過程, 越來越不適應現代化教學的需要.近年來,隨著計算機技術和網絡技術的不斷進步和飛速發(fā)展,依托計算機技術的在線考試方式或網上考試方式的研究一直在進行之中,目前在線考試方式在駕照考試和英語考試等領域已付諸實施,而對于計算機類考試的系統(tǒng)則比較少見,特別是帶有自動改卷功能的考試系統(tǒng)。隨著計算機科學技術和網絡的發(fā)展,傳統(tǒng)等教學方式很難適應需求,它要求一種新的教學方式,而網絡化教育方式順勢而生?;?net 的網上考試系統(tǒng)正是實施網絡化教育的一個重要組成部分, 它可以利用網絡的無限空間, 隨

12、時隨地對學生進行考試, 利用數據庫使考試過程得到簡化.考試過程中試卷的生成和批改都由計算機完成, 其目標是實現考試的無紙化、標準化和學生成績管理的網絡化和自動化。1.1.2.目前已有的考試系統(tǒng)的優(yōu)、缺點網絡考試系統(tǒng)是近年來的一個熱點。隨著網絡的發(fā)展,大家都希望可以充分利用現代化技術減輕工作量,實現自動化管理。以往的許多網絡考試系統(tǒng)實現了考試環(huán)節(jié)中的大部分工作,已經可以很完美的投入使用,其安全性、擴充性、準- 2 -確性、便捷性都得到了充分的體現。其中,選擇題、判斷題等客觀題的自動閱卷、學生信息的管理、考卷的組織等功能模塊做的非常不錯。對于主觀題如填空題、編程題、簡答題,絕大多數只實現了考試而為

13、實現批閱的功能,未實現全部自動化。這使得教師在系統(tǒng)批閱完客觀題后還要手動批閱主觀題,不能很好的節(jié)約人力、物力,使得資源無法充分利用。主觀題的閱卷有人為的參與,存在主觀因素,沒辦法保證考試的公平、公正。1.2. 選擇考試系統(tǒng)的原因因為以往的考試系統(tǒng)存在一定的缺陷,未完成主觀題的閱卷部分,而一個完整的含主觀題自動閱卷的考試系統(tǒng)被迫切需求。此設計在原有考試系統(tǒng)的基礎上突破、創(chuàng)新,增加主觀填空題、程序題的自動閱卷功能。應用 c#語言中的反射知識可以實現簡單的程序體的修改。選擇該開發(fā)系統(tǒng),具有創(chuàng)新性、可行性、需要性,其科學性也不言而喻。1.3. 設計目標本設計的目的是設計一套完整的考試系統(tǒng),實現考卷的自

14、動生成、試卷管理、查看考生考試結果、學生考試、自動閱卷等功能,增加主觀題中填空題和編程題的自動閱卷功能。實現考試的無紙化、標準化和學生成績管理的網絡化和自動化。1.4. 小結由上所知,網絡考試系統(tǒng)是科學技術發(fā)展的必然要求,具有很大的社會需求。而現有的用于計算機學科的網絡需考試系統(tǒng)不完善,缺少主觀題自動閱卷功能,這些證明基于.net 的自動閱卷考試系統(tǒng)是正確的選擇。- 3 -2. 基于.net 的自動閱卷考試系統(tǒng)概述2.1. 用戶需求簡介基于.net 的自動閱卷考試系統(tǒng)是一個面向計算機類學科的考試系統(tǒng),它與其他其他考試系統(tǒng)的區(qū)別在于它增加了主觀填空題、編成題的自動閱卷功能。它應用 c#語言開發(fā),

15、以.net 為平臺,采用 b/s(瀏覽器/服務器) 模式, 用戶分為兩種:普通用戶和管理員用戶(admin) 。學生屬普通用戶,教師屬管理員用戶。他們擁有的權限有所不同,學生只能進行考試和修改密碼;教師可以根據自己所教授的課程新建科目、管理題庫,還可以設置試卷、查看學生的考試結果。通過對頁面的操作對數據庫進行讀寫操作。2.1.1.功能需求 該系統(tǒng)要求實現題庫管理、班級管理、學生答題、試卷組織、自動閱卷等功能,教師能夠查看學生的考試成績及答題情況,在試卷投入使用前能想進行測試、查看考卷的整體情況,學生能自行修改自己的密碼。2.1.2.性能需求學生在做完程序題后,需上傳 exe 文件,然后連同試卷

16、其它部分的答案一起提交,此過程必須在 2 分鐘內完成。安全性有所保障,學生密碼由學生本人設置,以防他人冒用其帳號進行考試。2.1.3.可靠性和可用性需求系統(tǒng)能正常運行,在 100 人以內同時登錄時不發(fā)生錯誤,其所有功能在運行時不發(fā)生故障。2.2. 工作過程基于.net 的自動閱卷考試系統(tǒng)采用 b/s(瀏覽器/服務器) 模式,客戶無需安裝客戶端,只要有瀏覽器就可以使用。在登陸頁面,如果已注冊的用戶,更具自己的帳號、密碼就可以進去系統(tǒng),根據用戶權限進入不同的頁面;如果是還未注冊的用戶則比需先按注冊按鈕進行注冊后才可以進入系統(tǒng)。一般用戶(學生)登陸系統(tǒng)后,根據 user.js 跳轉到一般用戶主頁面,

17、其中具有修改密碼、考試、退出三個功能,用戶可以自行對其進行操作;管理員用戶(教師)登陸系統(tǒng)后,根據 admin.js 跳轉到用戶主頁面,里面有科目管理、試卷管理、各種題目管理、答題測試、查看考試結果功能模塊,教師根據需要進行操作。學生用戶的考試功能模塊只有在教師設置了考卷后才能進行,學生打完考卷后須自行提交,并上傳程序題的代碼和 exe 文件。系統(tǒng)將根據學生上傳的考卷答題進行批閱,得出每一題的成績和總成績。2.3. 系統(tǒng)特點基于.net 的自動閱卷考試系統(tǒng)支持按權限對系統(tǒng)進行操作,即不同類型的用戶擁有相異的權限:考試和管理。主要是在首頁通過兩種不同的方式進入相異的操作界面,其主要特點體現在以下

18、兩個個方面:自主調用數據庫;自主管理數據庫。自主調用數據庫即允許用戶能自由地從數據庫中選題、生成試卷。自主管理數據庫指一般用戶具有添加、修改數據的權力,實現數據庫的可擴充性和開放性。而 admin 用戶則另具有刪除數據的權力如對題目的刪除、試卷的刪除、- 4 -科目的刪除等,從而達到了系統(tǒng)數據統(tǒng)一性和一致性的目的。2.4. 小結基于.net 的自動閱卷考試系統(tǒng)它采用 b/s(瀏覽器/服務器) 模式,是面向計算機學科的考試系統(tǒng)。用戶進入界面就可進行操作,內部與數據庫相關的步驟對用戶透明,他是一個簡單的、易操作的、實用的系統(tǒng)。- 5 -3. 設計中要解決的問題3.1. 用戶權限不同類型的用戶擁有不

19、同的權限,這要求在設計時考慮不同權限用戶的操作頁面。比如學生可以答題、查看某些信息,但是不具有刪除等權限;教師、管理員在具有對題庫、試卷等的增、刪、改操作權限。3.2. 考卷的設置考卷的設置是考試系統(tǒng)的一個重要部分,它包括試卷的基本信息和題型設置。如何進行組卷及題型數目的控制成了試卷設置的一大難點。此外,對于設置那份考卷用于考試也是一個值得考慮的問題。3.3. 自動閱卷的實現自動閱卷十本系統(tǒng)的重中之重??陀^題的自動閱卷比較容易實現,運用匹配的方法就可以完成。主觀題中,對于填空題,則運用匹配的方式來進行判斷正確與否;程序題則運用 c#中反射的技術來實現。3.4. 考試時間控制問題時間控制是學生考

20、試系統(tǒng)一個很重要的組成部分。一直以來的考試都有規(guī)定在一定的時間內完成,否則考試就失去了它本身的意義。所以,在設計系統(tǒng)時需好好考慮時間控制的問題。- 6 -4. 總體設計4.1. 系統(tǒng)設計4.1.1.設計目標 設計一套完整的考試系統(tǒng),實現考卷的自動生成、試卷管理、查看考生考試結果、學生考試、自動閱卷等功能,增加主觀題中填空題和編程題的自動閱卷功能。4.1.2.開發(fā)環(huán)境硬件環(huán)境:pc 機軟件環(huán)境:windows xp、microsoft visual studio 2005、sql server 2000、iis4.1.3.開發(fā)語言開發(fā)語言使用 visual c# 4.1.4.開發(fā)工具micros

21、oft visual studio 2005、sql server 20004.1.5.后臺數據庫后臺數據庫使用 sql server 2000 ,其可管理和處理大批量的考試數據,并具有較高的可靠性。4.1.6.運行環(huán)境硬件環(huán)境:pc 機軟件環(huán)境:windows xp、www、internet explorer4.2. 數據庫需求設計數據庫是系統(tǒng)的重要組成部分,是系統(tǒng)的核心和基礎。它把系統(tǒng)中大量的數據按一定的模型組織起來、提供存儲、維護、檢索數據的功能,使系統(tǒng)可以方便、及時、準確地從數據庫中獲取所需的信息。sql server 2000 是一個常用的數據庫開發(fā)軟件,sql 語言本身是一個綜合的

22、、功能極強同時又簡捷易學的語言,用它開發(fā)的軟件數據結構化、獨立性高、共享性高、冗余度低、易擴充。在本設計中,應用了數據庫中的基本表和視圖,應用程序對這些基本表和視圖進行操作。4.2.1.系統(tǒng)流程圖. 0 層圖考試系統(tǒng)學生教師學生修改密碼學生答題查看考試結果班級管理學生注冊題庫管理試卷管理答題測試科目管理- 7 -. 1 層圖教師模塊流程圖:考卷設置答題測試查看考試結果程序題管理判斷題管理填空題管理單項選擇題管理單項選擇題管理 單選題信息表 多選題信息表 填空題信息表 判斷題信息表 程序題信息表 單選題信息 多選題信息 單選題信息 多選題信息 填空題信息 填空題信息

23、判斷題信息 判斷題信息 程序題信息 程序題信息 考卷信息表 試卷試題信息表考卷信息 試卷試題信息考卷信息 試卷試題信息考卷信息 試卷試題信息 班級信息表班級管理 班級信息 班級信息 科目信息表科目管理 科目信息 科目信息科目信息學生答題模塊流程圖:學生答題 試卷信息表 判斷題信息表 單項選擇題信息表 試卷試題信息表 程序題信息表 多項選擇題信息表學生答題信息眾表 填空題信息表試卷試題信息試卷信息試卷試題信息多選題信息填空題信息學生作答答案程序題信息判斷題信息- 8 -4.2.2.系統(tǒng) e-r 圖 學生學號姓名密碼用戶名班級編號班級編號班級名稱班級學生數科目試卷科目編號科目名稱試卷名稱考試時間科

24、目編號試卷編號成績班級類型填空題題干正確答案題目編號程序題 上傳路徑題干正確答案題目編號判斷題題干正確答案題目編號科目編號科目編號科目編號分數分數分數選擇題科目編號題干備選答案正確答案題目編號分數隸屬1隸屬n1選題mnlpq考試mnn4.2.3.數據庫中的表基本表是本身獨立存在的表,在 sql 中一個關系就對應一個基本表。一個或多個基本表對應一個存儲文件。用戶建立一個基本表后,可以對它進行增加、修改、查詢、刪除等操作。本設計中涉及到以下基本表,建立于數據庫webexam 中。具體如下所示:1、用戶信息表(user)列名數據類型長度是否主鍵允許空說明studentidbigint8是不允許學生編

25、號namevarchar50否不允許用戶名passwdvarchar50否不允許用戶密碼typevarchar50否不允許用戶類型studentnamvarchar50否允許學生姓名- 9 -e2、班級信息表(class)列名數據類型長度是否主鍵允許空說明classidint4是不允許班級編號classnamevarchar50否不允許班級名稱studentcountint4否允許班級學生數isdeletedbit1否不允許是否刪除3、科目信息表(courseinfo)列名數據類型長度是否主鍵允許空說明courseidint4是不允許科目編號coursenamenvarchar50否不允許科目

26、名稱isdeletedbit1否允許是否刪除4、試卷信息表(paper)列名數據類型長度是否主鍵允許空說明paperidint4是不允許試卷編號namevarchar50否不允許試卷名稱courseidint4否允許科目編號usedbit1否允許是否用于考試isdeletedbit1否允許是否刪除currencybit1否允許是否公有examtimeint4否不允許考試時間長度5、試卷-試題表(paperdata)字段名數據類型長度主鍵允許空說明paperdataidint4是不允許試題編號paperidint4否不允許試卷編號typeint4否允許試題類型questionidint4否允許題

27、目編號scoreint4否允許分數6、單項選擇題信息表(single)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號questiondesvarchar800否不允許題目內容answer1varchar100否不允許備選答案 1answer2varchar100否不允許備選答案 2answer3varchar100否允許備選答案 3answer4varchar100否允許備選答案 4rightanswerint2否不允許正確答案courseid int4否允許科目編號scoreint1否允許分數isdeletedbit1否允許是否刪除currencybit1否允許

28、是否公有7、單項選擇題答案表(singleanswer)- 10 -字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號paperdataidint4否不允許試題編號studentidbigint8否不允許學生編號answerchar10否不允許學生答案8、多項選擇題信息表(more)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號questiondesvarchar800否不允許題目內容answer1varchar100否不允許備選答案 1answer2varchar100否不允許備選答案 2answer3varchar100否允許備選答案

29、 3answer4varchar100否允許備選答案 4rightanswerint4否不允許正確答案courseid int4否允許科目編號scoreint4否允許分數isdeletedbit1否允許是否刪除currencybit1否允許是否公有9、多項選擇題答案表(moreanswer)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號paperdataidint4否不允許試題編號studentidbigint8否不允許學生編號answerint4否不允許學生答案10、判斷題信息表(judge)字段名數據類型長度主鍵允許空說明questionidint4是不允許題

30、目編號questiondesvarchar800否不允許題目內容rightanswerbit1否不允許正確答案courseid int4否允許科目編號scoreint4否允許分數isdeletedbit1否允許是否刪除currencybit1否允許是否公有11、判斷題答案表(judgeanswer)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號paperdataidint4否不允許試題編號studentidbigint8否不允許學生編號answerbit1否不允許學生答案12、填空題信息表(space)字段名數據類型長度主鍵允許空說明questionidint4是

31、不允許題目編號questiondesvarchar800否不允許題目內容- 11 -answer1varchar100否不允許第一空答案answer2varchar100否允許第二空答案answer3varchar100否允許第三空答案answer4varchar100否允許第四空答案courseid int4否允許科目編號scoreint4否允許分數isdeletedbit1否允許是否刪除currencybit1否允許是否公有13、填空題答案表(spaceanswer)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號paperdataidint4否不允許試題編號s

32、tudentidint4否不允許學生編號answer1nvarchar100否不允許第一空答案answer2nvarchar100否允許第二空答案answer3nvarchar100否允許第三空答案answer4nvarchar100否允許第四空答案14、程序題信息表(program)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號questiondesvarchar800否不允許題目內容rightanswervarchar100否不允許正確答案courseid int4否允許科目編號scoreint4否允許分數isdeletedbit1否允許是否刪除currenc

33、ybit1否允許是否公有15、程序題答案表(programanswer)字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號paperdataidint4否不允許試題編號studentidbigint8否不允許學生編號answerint4否不允許學生答案16、programpath 表字段名數據類型長度主鍵允許空說明questionidint4是不允許題目編號paperidint4否不允許試卷編號pathvarchar100否不允許路徑17、student score 表字段名數據類型長度主鍵允許空說明paperidint4是不允許試卷編號studentidbigint

34、8否不允許學生編號courseidint4否不允許科目編號scoreint4否不允許學生成績- 12 - 18、examtime 表字段名數據類型長度主鍵允許空說明idint4是不允許編號studentidbigint8否不允許學生編號paperidint4否不允許試卷編號timelongint8否不允許考試時間4.2.4.數據庫中的視圖視圖是從一個或幾個基本表導出的表。它本身不獨立存儲在數據庫中,即數據庫中只存放視圖的定義而不存放視圖對應的數據,這些數據仍存放在導出視圖的基本表中,他是一個虛表。所以,當基本表中的數據庫發(fā)生變化時,從視圖中查詢出的數據也隨之改變。視圖與基本表在概念上是相同的,

35、用戶可以在視圖上進行和基本表一樣的查詢操作,也可以再定義視圖。本設計中根據需要建立了以下視圖,這些視圖將在下面一一列出:1、judgeview 視圖,由 paperdata 和 judge 兩個基本表導出,type=3,isdeleted=0。列名導出表列名導出表paperdataidpaperdatapaperidpaperdataquestionidpaperdataquestiondesjudgerightanswerjudge2、moreview 視圖,由 paperdata 和 more 兩個基本表導出,type=2,isdeleted=0。列名導出表列名導出表paperdataid

36、paperdatapaperidpaperdataquestionidpaperdataquestiondesmoreanswer1moreanswer2moreanswer3moreanswer4morerightanswermore3、paperprogramview 視圖,由 paper 和 programpath 兩個基本表導出。列名導出表列名導出表paperidpaperpathprogrampathnamepaper(別名:papername)3、programanswerview 視圖,由 paperdata 和 program 兩個基本表導出。列名導出表列名導出表questio

37、nidprogramrightanswerprogrampaperdataidpaperdatascorepaperdata4、programview 視圖,由 paperdata、program、programpath 和 paper 四個基本表導出,type=5。列名導出表列名導出表paperdataidpaperdatapaperidpaperdataquestionidpaperdataquestiondesprogrampathprogrampathname(papername)paper- 13 -5、singleview 視圖,由 paperdata 和 single 兩個基本表

38、導出,type=1 ,isdeleted=0。列名導出表列名導出表paperdataidpaperdatapaperidpaperdataquestionidpaperdataquestiondessingleanswer1singleanswer2singleanswer3singleanswer4singlerightanswersingle6、spaceview 視圖,由 paperdata 和 space 兩個基本表導出,type=4,isdeleted=0。列名導出表列名導出表paperdataidpaperdatapaperidpaperdataquestionidpaperdat

39、aquestiondesspaceanswer1spaceanswer2spaceanswer3spaceanswer4spacerightanswerspace7、studentjudgeview 視圖,由 paperdata、paper、 judge、judgeanswer 和users 五個基本表導出。列名導出表列名導出表studentiduserspaperidpaperstudentnameuserspapernamepapertypepaperdatascorepaperdatapaperdataidjudgeanswer8、studentmoreview 視圖,由 paperda

40、ta、paper、more、moreanswer 和users 五個基本表導出。列名導出表列名導出表studentiduserspaperidpaperstudentnameuserspapernamepapertypepaperdatascorepaperdatapaperdataidmoreeanswer9、studentprogramview 視圖,由 paperdata、paper、programanswer 和users 四個基本表導出。列名導出表列名導出表studentidprogramanswerpaperidpaperdatarstudentnameuserspapername

41、papertypepaperdatascoreprogramanswerpaperdataidpaperdata10、studentsingleview 視圖,由 paperdata、paper、single、singleanswer和 users 五個基本表導出。列名導出表列名導出表studentiduserspaperidpaperstudentnameuserspapernamepapertypepaperdatascorepaperdata- 14 -paperdataidpaperdata11、studentspaceview 視圖,由 paperdata、paper、space、s

42、paceanswer 和users 五個基本表導出。列名導出表列名導出表studentiduserspaperidpaperstudentnameuserspapernamepapertypepaperdatascorepaperdatapaperdataidspaceanswer12、studentview 視圖,由 users 基本表導出,type=user,isdeleted=0。列名導出表列名導出表studentidusersclassidusersstudentnameusersisdeletedusers4.3. 系統(tǒng)總體構架設計目前開發(fā)網絡考試系統(tǒng)的模式通常有兩種:一種是 b/s

43、(瀏覽器/服務器) 模式,另一種是 c/s(客戶/服務器) 模式。傳統(tǒng)的 c/s 結構是指若干客戶端連接一個服務端,通過這樣的交互方式來進行工作。這就需要分別編寫服務器端和客戶端軟件,且客戶機需要安裝客戶端軟件,給以后的維護帶來很大麻煩。在這樣的方式下,受到限制的因素很多,比如不同網段下的客戶端與服務器連接會非常麻煩等。而 b/s 結構是指瀏覽器/服務器模式。在這種方式下,程序的設計只需在服務器端就可以完成,客戶機只要有瀏覽器便可正常工作。b/s 帶來的最大好處就是不受地域限制,只要網絡是連通的,并且在系統(tǒng)維護時只要在服務器端進行,不需要分發(fā)到每個客戶機,實現客戶端零維護,大大節(jié)省了人力、物力

44、、時間、費用。4.3.1.系統(tǒng)層次結構圖考試系統(tǒng)學生教師注冊模塊修改密碼模塊考試模塊退出模塊科目管理模塊試卷管理模塊選擇題管理模塊填空題管理模塊判斷題管理模塊程序題管理模塊答題測試模塊查看考試結果模塊登陸模塊班級管理模塊4.3.2.系統(tǒng)流程圖- 15 -學生做答模塊流程圖學生答題答題時間到提交更新數據庫退出用戶登錄管理模塊流程圖用戶登錄管理用戶登錄用戶注冊填寫信息選擇班級登錄注冊驗證錯誤用戶登錄更新數據庫選擇學號填寫信息檢查用戶是否唯一通過不唯一沒通過試卷管理模塊流程圖- 16 -試卷管理編輯試卷增加試卷刪除試卷設置試卷名稱設置考試時間設置試卷題型結構選題滿意添加到數據庫yn修改數據庫題庫管理

45、模塊流程圖- 17 -題庫管理選擇科目選擇題型編輯添加刪除修改數據庫填寫相應信息修改數據庫確定yn4.4. 小結本章是對系統(tǒng)設計目標、開發(fā)語言、工具,運行環(huán)境、后臺數據庫、數據庫設計、系統(tǒng)框架的簡單介紹。并詳細介紹了系統(tǒng)數據庫基本表和視圖的設計。- 18 -5. 系統(tǒng)主要功能模塊設計5.1. 登陸模塊每個用戶要進入系統(tǒng)都必須先到登陸模塊。在此頁面,如果你已經注冊了帳號和密碼,那么可以直接輸入帳號、密碼登陸,如果之前未注冊過,則必須先注冊,然后再登陸。admin 用戶(如教師)直接用指定的帳號登陸,學生的帳號即為學號。5.2. 注冊模塊admin 用戶無需注冊,只有 users 用戶需要注冊。在

46、注冊界面,用戶選擇自己的班級和學號,并填上自己的真實姓名和登陸用的密碼按“確定”進行注冊。學號唯一,若與別人相同則無法注冊。5.3. 學生模塊學生在登陸的時候,根據其用戶類型,跳轉到由 user.js 控制的學生用戶的首頁面。當你進入時會顯示 “用戶名 你好,歡迎進入”以“welcome”及字樣。. 密碼修改模塊用戶如果需要修改自己的用戶密碼,可以點擊上面的“修改密碼”按鈕,跳轉到密碼修改界面,只要重新輸入新密碼,確認一下就可以了。. 答題模塊學生等入后,到了考試時間就要開始答題。按“答題”按鈕就可以進入答題頁面。學生考試完畢或者考試時間到了以后,要按 “提交”按鈕

47、提交考卷。對于程序題要上傳程序文件(exe)和源碼文件(rar) 。5.4. 教師模塊教師在登陸的時候,根據其用戶類型,跳轉到由 admin.js 控制的管理者用戶的首頁面。當你進入時和學生用戶一樣,會顯示 “用戶名 你好,歡迎進入”以“welcome”及字樣。和學生用戶不同的是由 admin.js 控制的操作功能模塊的不同。下面將一一列出了管理者所能操作的模塊:. 班級管理模塊在班級管理模塊中,老師可以看到各班的人數和班級成員,還可以對班級進行增加、刪除等操作。. 科目管理模塊 每個教師根據自己所教授的課程添加科目,如果你所教的科目已經有其他老師添加過了,那么你可

48、以和其他老師共用一個,或者在添加科目時加上標記以示區(qū)別。如數據庫,可以用數據庫 04、數據庫 05 以作區(qū)分。. 試卷管理模塊在選題界面,首先顯示的是各門的科目名稱。按科目后面相對應的“增加”按鈕即可跳轉到試卷設置頁面,再次輸入試卷的名稱,并對整份試卷的結構進行設置,分數的分布、各題型數量的分布??偡值陀诨虺?100 分時總分數顯示呈紅色以示警告。設置好后按“確定”按鈕進入選題界面,選好題后按“添加到試卷中”按鈕向數據庫提交數據,一份考卷也就設置完成了,也可以按“返回”按鈕重新對考卷進行設置。如果對之前設置的考卷不滿意,有需要修改的地方,你可以按“編輯”按鈕進入考卷設置界面,再

49、到選題界面,直到滿意為止。要將一- 19 -份考卷用于當前考試時,只要按前面“用于考試”按鈕即可,在上面會顯示“當前考試試卷為:當前考試用考卷名” 。. 選擇題管理模塊進入選擇題管理界面,選擇科目,頁面將顯示出此科目目前已有的選擇題題目和對應的正確答案,單項選擇在前,多項選擇在后。用戶可按上方的“添加單選題” 、 “添加多選題”添加題目,也可以按題目相后面對應的“編輯”按鈕對題目進行修改,也可以刪除題目。題目的添加和編輯頁面是同一個頁面,對題干、備選答案和正確答案進行設置,按確認添加成功。在添加、編輯頁面有一個“公共”的復選框,如果選中這個框,則在其他科目也將顯示著題題目,也可對

50、其進行其它操作。但選題和多選題的添加、編輯界面的不同之處在于正確答案設置處,單選題用的是單選框(radio) ,而多選題用的是復選框(checkbox) 。. 填空題管理模塊進入填空題管理界面,選擇科目,頁面將顯示出此科目目前已有的填空題題目和對應的正確答案。用戶可按上方的“添加填空題”添加題目,也可以按題目后面相對應的“編輯”按鈕對題目進行修改,也可以刪除題目。題目的添加和編輯頁面是同一個頁面,對題干和正確答案進行設置,按確認添加成功。在添加、編輯頁面有一個“公共”的復選框,如果選中這個框,則在其他科目也將顯示著題題目,也可對其進行其它操作。值得提出的是,因為設計的關系,每題填

51、空題的空格限制在四個以內。. 判斷題管理模塊進入判斷題管理界面,選擇科目,頁面將顯示出此科目目前已有的判斷題題目和對應的正確答案。用戶可按上方的“添加斷題題”添加題目,也可以按題目后面相對應的“編輯”按鈕對題目進行修改,也可以刪除題目。題目的添加和編輯頁面是同一個頁面,對題干和正確答案進行設置,按確認添加成功。在添加、編輯頁面有一個“公共”的復選框,如果選中這個框,則在其他科目也將顯示著題題目,也可對其進行其它操作。. 程序題管理模塊進入程序題管理界面,選擇科目,頁面將顯示出此科目目前已有的程序題題目和對應的正確答案。用戶可按上方的“添加程序題”添加題目,也可以按題

52、目后面相對應的“編輯”按鈕對題目進行修改,也可以刪除題目。題目的添加和編輯頁面是同一個頁面,對題干和正確答案進行設置,按確認添加成功。在添加、編輯頁面有一個“公共”的復選框,如果選中這個框,則在其他科目也將顯示著題題目,也可對其進行其它操作。. 答題測試模塊當教師設置未能考卷后可以對這份考卷進行答題測試,但是之前要將這份考卷設置為當前考試試卷,否則會顯示其他設置為考試的考卷,如果目前沒有考試試卷則跳出“請選擇試卷”消息框,然后跳轉到試卷管理頁面選擇當前考試試卷。測試答題完后,可按“查看答案”看看自己的答題情況,如果你答對了題目的下方將顯示“恭喜你,答對了!” ,反之則顯示正確答案

53、。. 查看考試結果模塊學生考試完成后,教師可以若要了解其情況,即可到這個頁面查看。首先要選擇班級科目、試卷名稱、班級,點擊 “查看”進入,下面既有學生這份考卷各題得分和試卷總分。想看某位學生的答題情況點擊其后面的“查看”按鈕即可。5.5. 重點、難點代碼設計- 20 -5.5.1.時間控制的實現時間控制是學生考試系統(tǒng)一個很重要的組成部分。一直以來的考試都有規(guī)定在一定的時間內完成,否則考試就失去了它本身的意義。在本系統(tǒng)中,應用一個label 控件來實現時間的倒計時。學生進入系統(tǒng)第一次考某份考卷點擊“答題”按鈕時,把當前時間寫入 examtime 表中。與此同時,讀取 examtim

54、e 表中相應的timelong 的值(第一次開始考試的時間)和 paper 表中 examtime 的值(考試規(guī)定時長) ,將讀取的 timelong 的值放在 datetime 的結構體中名為 begintime;再將這個時間加上試卷的考試時長得到最遲交卷的時間,也將它存放在 datetime結構體中,名為 endtime。將當前時間放在另一個 datetime 的結構體名為dtnow,考生當前考試剩余時間為:endtime-dtnow,這個結果是一個 timespan結構(其實際格式為:hh:mm:ss) ,將它顯示在 label 控件上。實現代碼如下所示:double timelong

55、= double.parse(paper.getexamtime(id).tostring(); exambiz.examtime examtime = new stgroup.exambiz.examtime(); datetime begintime = datetime.parse(examtime.getstudentexamtime(id, userid).tostring(); datetime dt = datetime.now; datetime endtime = begintime.addminutes(timelong); timespan timespan = endt

56、ime.subtract(dt); if (endtime = dt) lbexamtime.text = 0:00:00; else lbexamtime.text = timespan.tostring(); 時間的倒計時和刷新部分是通過腳本來實現的,在考試結束前 3 分鐘將彈出提交提示,具體代碼如下:倒計時實現代碼:var h=2;var m=0;var s=0;function window.onload() var div = window.parent.document.getelementbyid(ifmcontent); div.style.height = document.

57、body.scrollheight+10; var tm = document.getelementbyid(lbexamtime).innertext; h = parseint(tm.split(:)0);m = parseint(tm.split(:)1);s = parseint(tm.split(:)2);- 21 -function showtime() if(h = 0 & m = 0 & s =0) flag = false; return; if(h = 0 & m = 3 & s = 0) alert(考試時間只剩最后三分鐘,請檢查考卷并在剩

58、余時間內提交!) s-; if(s 0) s = 59; m-; if(m 0) m = 59; h-; document.getelementbyid(lbexamtime).innertext = h + : + (m 10 ? (0 + m) : m) + : + (s 10 ? (0 + s) : s); 時間刷新實現代碼,每 1000ms 做 showtime 這個函數一次。 t = setinterval(showtime(),1000);5.5.2.自動閱卷的實現自動閱卷功能是本系統(tǒng)有別于其他考試系統(tǒng)的地方,是本系統(tǒng)的重點。自動閱卷包括客觀題和主觀題,客觀題和主觀題中的填空題采用

59、匹配的方式,如果匹配得到兩個是相同的,則正確;主觀題中的變成體則采用 c#中的反射技術來實現。1、客觀題和填空題部分:這些題型題目的正確答案在添加題目的時候一起被寫入數據庫相應的題庫表中,如單選題的在 single 表中,判斷題的在 judge 表中,考生所作的答案都存放在數據庫中的所有*answer 表中,如單選題在 singleanswer 表中,判斷題在judgeanswer 表中。將*answer 表中的答案與題庫表中的正確答案相匹配,一樣的說明正確,則把相應的信息如:paperid、studentid、paperdataid、score、type 等在視圖 student*view

60、中輸出。再把 paperid、studentid 相同的 score 的值相加,就可以得到指定考卷、考生類- 22 -型為 type 值的得分。具體實現代碼如下所示:exambiz.user user = new stgroup.exambiz.user(); exambiz.identity identity = new exambiz.identity(user.identity.name); long userid = identity.userid;foreach (datagriditem dg in dgsingle.items) radiobuttonlist rbltemp = (radiobuttonli

溫馨提示

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

評論

0/150

提交評論