国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2009-08-31 07:45張以文王德勝王愛平
計(jì)算機(jī)教育 2009年13期
關(guān)鍵詞:主觀題管理員密碼

張以文 王德勝 金 瑩 王愛平

摘要:網(wǎng)絡(luò)考試系統(tǒng)是傳統(tǒng)考試的延伸,它充分利用了數(shù)據(jù)庫技術(shù),大大簡化了傳統(tǒng)考試的過程,提高了教學(xué)活動(dòng)的靈活性,是電子化教學(xué)不可缺少的一個(gè)重要環(huán)節(jié)。本文介紹和分析基于B/S模式的網(wǎng)絡(luò)考試系統(tǒng)的開發(fā)與設(shè)計(jì),實(shí)現(xiàn)了一個(gè)基本的網(wǎng)絡(luò)考試系統(tǒng)。

關(guān)鍵詞:網(wǎng)絡(luò)考試系統(tǒng);B/S;安全性

中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A

考試是在教育過程中一個(gè)不可缺少的環(huán)節(jié),傳統(tǒng)紙面化考試消耗大量的人力、物力,而且保密性差。隨著計(jì)算機(jī)技術(shù)的不斷成熟,網(wǎng)絡(luò)考試技術(shù)漸漸的被引入考試過程中,典型的網(wǎng)絡(luò)考試系統(tǒng)如英語考試中的托福、GRE、雅思等。網(wǎng)絡(luò)考試系統(tǒng)可以提高教師閱卷的效率,降低人為因素的誤差,節(jié)省社會(huì)資源,更重要的是有利于提高考試的公平性,減少閱卷老師的主觀因素干擾。

1相關(guān)理論與技術(shù)

1.1系統(tǒng)架構(gòu)模式選擇

在近年來開發(fā)的網(wǎng)絡(luò)考試系統(tǒng)中,按其系統(tǒng)的架構(gòu)模式可以分為兩種:C/S模式和B/S模式。C/S架構(gòu)下的網(wǎng)絡(luò)考試系統(tǒng),一般是基于局域網(wǎng)的應(yīng)用系統(tǒng),它用于考試的機(jī)器分為服務(wù)器(Server)和客戶機(jī)(Client)兩種,優(yōu)點(diǎn)是能夠有效地做到對客戶機(jī)的靈活控制和試卷考試結(jié)果的自動(dòng)回收,缺點(diǎn)是需要分別開發(fā)和安裝相應(yīng)的考試服務(wù)系統(tǒng)和考試客戶系統(tǒng),開發(fā)成本高,升級(jí)困難且麻煩,系統(tǒng)維護(hù)代價(jià)高。所以一般地來說C/S模式并不是網(wǎng)絡(luò)考試系統(tǒng)的理想模式。B/S架構(gòu)下的網(wǎng)絡(luò)考試系統(tǒng),是一種基于Web的應(yīng)用系統(tǒng),目前應(yīng)用比較廣泛,它將試題和成績等全部存放在服務(wù)器上,客戶機(jī)只要是帶有瀏覽器且能夠上網(wǎng)即可;它突破時(shí)空限制,可在任何時(shí)間、任何能夠上網(wǎng)的地點(diǎn)進(jìn)行遠(yuǎn)程考試和考務(wù)工作。它可自動(dòng)生成試卷,考試結(jié)束時(shí)可迅速給出客觀題和部分主觀題考試成績,其他主觀題部分也是以網(wǎng)上閱卷的方式進(jìn)行并實(shí)時(shí)提交成績。這些都使得網(wǎng)絡(luò)化考試比傳統(tǒng)的紙面考試具有無可比擬的效率和公平上的優(yōu)越性,是現(xiàn)代化考試發(fā)展的方向。

1.2ASP.NET技術(shù)

ASP.NET是Microsoft公司推出的一個(gè)統(tǒng)一的Web開發(fā)模型,它使用盡可能少的代碼生成企業(yè)級(jí)Web應(yīng)用程序所必需的各種服務(wù),ASP.NET為.NET Framework的一部分提供,當(dāng)編寫ASP.NET應(yīng)用程序的代碼時(shí),可以訪問.NET Framework 中的類。可以使用與公共語言運(yùn)行庫(CLR)兼容的任何語言來編寫應(yīng)用程序的代碼,這些語言包括Microsoft Visual Basic、C#等。使用這些語言,可以開發(fā)利用公共語言運(yùn)行庫、類型安全、繼承等方面的優(yōu)點(diǎn)的ASP.NET應(yīng)用程序。

1.3SQL Server和ADO.NET技術(shù)

SQL(Structured Query Language,結(jié)構(gòu)化查詢語言)語言是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言,是一種介于關(guān)系代數(shù)和關(guān)系演算之間的結(jié)構(gòu)化查詢語言。由于SQL語言功能豐富,語言簡潔,因而備受用戶和計(jì)算機(jī)工業(yè)界歡迎。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務(wù),比如在數(shù)據(jù)庫中更新數(shù)據(jù)或檢索數(shù)據(jù)。常見關(guān)系數(shù)據(jù)庫管理系統(tǒng)有Oracle、Microsoft SQL Server、Access等。本系統(tǒng)使用的是Microsoft SQL Server2000,它提供較多的高效開發(fā)工具和較成熟的開發(fā)技術(shù)。

ADO(ActiveX Data Objects)是ASP的內(nèi)置對象之一,凡是能由ODBC驅(qū)動(dòng)程序訪問的數(shù)據(jù)庫,在ASP中都可以通過ADO對象與SQL語句對其進(jìn)行網(wǎng)絡(luò)訪問。.NET Framework推出了ADO的升級(jí)技術(shù)—ADO.NET,但ADO.NET和ADO不同的。ADO.NET是一組向.NET 程序員公開數(shù)據(jù)訪問服務(wù)的類,ADO.NET為創(chuàng)建分布式數(shù)據(jù)共享應(yīng)用程序提供了一組豐富的組件。它提供了對關(guān)系數(shù)據(jù)庫、XML和應(yīng)用程序數(shù)據(jù)的訪問,ADO.NET能夠支持多種開發(fā)需求,包括創(chuàng)建由應(yīng)用程序、工具、語言或 Internet 瀏覽器使用的前端數(shù)據(jù)庫客戶端和中間層業(yè)務(wù)對象。

1.4Visual C#語言

C#是全新打造的.NET的核心語言,C#來自Visual C++,是C/C++家族的新成員;C#的程序結(jié)構(gòu)風(fēng)格和Java有許多的相似之處;C#博采Visual Basic的簡單樸實(shí)直觀的特點(diǎn),形成了一個(gè)完全面向?qū)ο蟮摹㈩愋桶踩?、功能?qiáng)大又簡易友好的新型軟件開發(fā)工具??傊?C#融會(huì)了許多語言的優(yōu)點(diǎn),代表了當(dāng)今編程語言的最新成果,體現(xiàn)了未來的軟件架構(gòu),適應(yīng)了Internet的應(yīng)用開發(fā)的需要。

2系統(tǒng)設(shè)計(jì)

2.1系統(tǒng)概述

系統(tǒng)是用于學(xué)生注冊、登錄、參加在線、查詢成績和教師進(jìn)行登錄、上傳試題、批閱試卷、統(tǒng)計(jì)學(xué)生成績,以及管理員登錄后主要負(fù)責(zé)系統(tǒng)的維護(hù),包括添加教師、學(xué)生或者管理員??忌M(jìn)行有效的身份驗(yàn)證登錄后,即可進(jìn)行考試,在考試過程中對考生進(jìn)行計(jì)時(shí),考生必須在規(guī)定的時(shí)問內(nèi)答題,當(dāng)?shù)竭_(dá)考試規(guī)定的時(shí)間以后,考生如果仍然沒有完成考試,系統(tǒng)將自動(dòng)鎖定屏幕,考生將不能再答題,若在規(guī)定的時(shí)間內(nèi)完成了考試,考生直接保存考試的結(jié)果即可。對于考試的結(jié)果,客觀題部分有系統(tǒng)自動(dòng)地計(jì)算此部分成績,對于主觀題,部分試題實(shí)現(xiàn)自動(dòng)評(píng)分(如填空題和程序設(shè)計(jì)題),其余主觀題必須有教師在線批改,系統(tǒng)自動(dòng)將主觀題和客觀題一起計(jì)入考生的考試科目的總分。

2.2數(shù)據(jù)庫設(shè)計(jì)

人們在總結(jié)信息資源開發(fā)、管理和服務(wù)的各種手段時(shí),認(rèn)為最有效的是數(shù)據(jù)庫技術(shù)。任何管理系統(tǒng)都離不開數(shù)據(jù)庫,一個(gè)強(qiáng)健的數(shù)據(jù)庫是系統(tǒng)是否成功的前提。根據(jù)對網(wǎng)絡(luò)考試系統(tǒng)的分析與研究,設(shè)計(jì)出如下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)。

考生信息表:包括考生的用戶名、姓名、密碼、所屬的院系、性別等,主要用來說明考生的有關(guān)信息,其中主鍵為用戶名;

教師信息表:包括教師的用戶名、姓名、密碼、所屬的院系、教師的權(quán)限標(biāo)志、性別等,主要用來說明教師的有關(guān)信息,其中主鍵為用戶名;

管理員信息表:由于在實(shí)際中管理員的數(shù)量是有限的,所以管理員的信息表中的信息較少,主要包括用戶名、姓名、密碼等信息,管理員具有系統(tǒng)得一切的權(quán)限,其中主鍵為用戶名;

試題庫信息表:包括試題的編號(hào)、試題的名稱、試題題目的編號(hào)、題目和相關(guān)的選項(xiàng),試題的正確答案或參考答案等信息,主要用來說明與試題有關(guān)的信息,其中主鍵為試題編號(hào);

考生成績表:包括考生的編號(hào)、考生所考的科目、考試成績等信息,其中主鍵為考生編號(hào)和考試科目;

考生答案表:此表主要用來保存考生主觀題的結(jié)果,包括考生的編號(hào)、考試試題的編號(hào),考生的答案、參考答案、題目批改標(biāo)志位等信息,其中主鍵為考生編號(hào)和考試試題編號(hào)。

通過以上分析易得網(wǎng)絡(luò)考試系統(tǒng)的E-R圖如圖1所示。

2.3功能模塊設(shè)計(jì)

按照系統(tǒng)的功能模塊,可以將系統(tǒng)分為三個(gè)部分,即學(xué)生管理模塊、教師管理模塊、管理員模塊,如圖2所示,本系統(tǒng)主要包含以下基本功能。

學(xué)生考試管理:主要包括學(xué)生登錄,選擇考試課目,考試成績查詢,學(xué)生考試,修改密碼等;

教師功能管理:主要包括教師登錄,上傳試卷,批閱試卷主觀題部分,統(tǒng)計(jì)考試成績,成績排名,修改密碼等;

管理員功能:主要包括對申請注冊的教師授權(quán),查看考試科目,查看成績,學(xué)生密碼查詢,系統(tǒng)參與人員查看,在后臺(tái)添加教師、學(xué)生或管理員等。

3系統(tǒng)實(shí)現(xiàn)

3.1數(shù)據(jù)庫連接

ASP.NET連接SQL Server 2000的常用方法如下:

(1) 導(dǎo)入命名空間

using System.Data.SqlClient;

(2) 創(chuàng)建連接

SqlConnection lo_conn = New SqlConnection ("Server=服務(wù)器名字或IP;Database=數(shù)據(jù)庫名字;uid=用戶名;pwd=密碼");

(3) 打開連接

lo_conn.Open();

(4) 向數(shù)據(jù)庫發(fā)送SQL命令要使用SqlCommand:

SqlCommand lo_cmd = new SqlCommand();

//創(chuàng)建命令對象

lo_cmd.CommandText = "這里是SQL語句";

//寫SQL語句

lo_cmd.Connection = lo_con;

//指定連接對象,即上面創(chuàng)建的

(5) 處理SQL命令或返回結(jié)果集

lo_cmd.ExecuteNonQuery();

//這個(gè)僅僅執(zhí)行SQL命令,不返回結(jié)果集,實(shí)用于建表、批量更新等不需要返回結(jié)果的操作。

SqlDataReader lo_reader = lo_cmd. ExecuteReader(); //返回結(jié)果集

(6) 以數(shù)據(jù)集的方式返回結(jié)果集

SqlDataAdapter dbAdapter = new SqlData Adapter(lo_cmd); //注意與上面的區(qū)分開

DataSet ds = new DataSet();

//創(chuàng)建數(shù)據(jù)集對象

dbAdapter.Fill(ds);

//用返回的結(jié)果集填充數(shù)據(jù)集,這個(gè)數(shù)據(jù)集可以被能 操作數(shù)據(jù)的控件DataBind

(7) 關(guān)閉連接

lo_conn.Close();

3.2用戶登錄

登錄分為三種角色:學(xué)生、教師、管理員,分別有各自不同的權(quán)限。經(jīng)身份合法性認(rèn)證后可直接登錄,登錄后進(jìn)入各自的操作界面。學(xué)生登錄代碼實(shí)現(xiàn)如下,其他角色代碼類似。

if (ds.Tables[0].Rows.Count>0){

String strname=ds.Tables[“newtable”].

rows[0][1].ToString();

Session[“UserName”]=strname;

String strID=TextBox1.Text;

Session[“UserID”]=strID;

Response.Redirect(“/student/student.aspx”);

} else {

Response.write(“);

}

此段代碼的主要算法思想:首先通過用戶名和密碼從數(shù)據(jù)庫中查詢滿足這樣條件的數(shù)據(jù)集,然后判斷數(shù)據(jù)集中滿足條件的數(shù)據(jù)個(gè)數(shù),如果個(gè)數(shù)大于0則登錄成功,否則登錄失敗。事實(shí)上由于數(shù)據(jù)庫要求主碼的唯一性,那么滿足條件的數(shù)據(jù)的個(gè)數(shù)只能可能是1個(gè)或者0個(gè)。

3.3教師上傳試卷

上傳試卷分為兩種方式:一種是按照題目的順序通過教師管理界面進(jìn)行輸入,另一種方式是先把試題放在一個(gè)Excel文件中,然后再把Excel文件中的數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫中。下面主要解釋第二種方法。主要代碼如下:

//EXCEL 的連接串

string sConnectionString = "Provider= Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + FileUpload1. PostedFile.FileName.ToString() + ";" + "Extended Properties=Excel 8.0;";

//建立EXCEL的連接

OleDbConnection objConn = new Ole DbConnection(sConnectionString);

objConn.Open();

OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [Sheet1$]", objConn);

OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();

objAdapter1.SelectCommand = objCmdSelect;

DataSet objDataset1 = new DataSet();

objAdapter1.Fill(objDataset1, "XLData");

for (int i = 0; i < objDataset1. Tables["XLData"].Rows.Count; i++){

String strsql2="insertintotb_question (PaperID,ID,ID_type,type,score,question,choice1,choice2, choice3,choice4,rightanswer) values ('" + TextBox1.Text.ToString() + "','" + objDataset1.Tables ["XLData"].Rows[i][0]. ToString() + "','"+ TextBox2.Text.ToString()+"','"+objDataset1. Tables ["XLData"]. Rows[i][1].ToString()+

"','"+objDataset1.Tables["XLData"].Rows[i][2].ToString()+"','"+ objDataset1.Tables["XLData"].Rows[i][3].ToString()+"','"+ objDataset1.Tables["XLData"].Rows[i][4].ToString()+"','"+ objDataset1.Tables["XLData"].Rows[i][5].ToString()+"','"+ objDataset1.Tables["XLData"].Rows[i][6].ToString()+"','"+ objDataset1.Tables["XLData"].Rows[i][7].ToString()+"','"+ objDataset1.Tables["XLData"].Rows[i][8].ToString() + "')";

SqlConnection insertconn;

insertconn = new SqlConnection("Server=SHENG-PC;Database=kaoshi;uid=sa;pwd=''");

insertconn.Open();

SqlCommand intsertconn_cmd = new SqlCommand(strsql2, insertconn);

intsertconn_cmd.ExecuteNonQuery();

insertconn.Close();}

Response.Write(""); }

3.6管理員功能

管理員的功能主要有教師授權(quán),系統(tǒng)人員查詢,密碼查詢和修改,成績查詢,考試科目查詢,添加人員,文件管理等功能。

4系統(tǒng)安全性

對網(wǎng)絡(luò)考試系統(tǒng)來說,安全性至關(guān)重要,我們通過以下的技術(shù)提高系統(tǒng)的安全。

(1) 角色控制,每位學(xué)生或教師注冊以后,必須要得到管理員的審核或與系統(tǒng)數(shù)據(jù)庫中合法人員的身份認(rèn)證一致以后才能進(jìn)入系統(tǒng);

(2) 密碼管理,對于考生、教師以及管理員的密碼,將其加密處理,加密的函數(shù)可以自己選擇也可以選擇一些開發(fā)軟件自帶的加密方法。即使一些考務(wù)人員進(jìn)入了數(shù)據(jù)庫,如果沒有管理員的權(quán)限,也無法獲得他人的密碼,這樣可以防止考試內(nèi)部人員的泄密;

(3) 試卷管理,每次考生考試時(shí),都隨機(jī)的生成試卷,只要保證考試的題庫有足夠多的試題,那么每個(gè)考生的考試試題或題號(hào)是不一樣的,這樣更有利于防止學(xué)生作弊;

(4) 成績管理,對于考試的結(jié)果進(jìn)行加密處理,例如將考試的成績分?jǐn)?shù)進(jìn)行加密,這樣即使有人得到數(shù)據(jù)庫,如果不知道解密和加密的函數(shù),也沒法獲得成績和修改成績。

5結(jié)束語

在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面的今天,傳統(tǒng)的考試方式也面臨著變革,而網(wǎng)絡(luò)考試則是一個(gè)很重要的方向。傳統(tǒng)的考試具有消耗資源大,安全性差等缺點(diǎn),而網(wǎng)絡(luò)考試系統(tǒng)正好彌補(bǔ)了以上缺點(diǎn),正受到人們高度重視。本文詳細(xì)介紹了網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)過程,希望能為社會(huì)節(jié)約資源和提高教師的工作效率作一點(diǎn)貢獻(xiàn)。本系統(tǒng)中還有需要進(jìn)一步完善的地方,如語音部分試題的在線測試開發(fā)工作還沒有實(shí)現(xiàn),這也是我們下一步的工作。

參考文獻(xiàn):

[1] 張友生.軟件體系結(jié)構(gòu)[M]. 北京:清華大學(xué)出版社,2006.

[2] 石志國.asp.net程序設(shè)計(jì)使用教程[M]. 北京:電子工業(yè)出版社,2006.

[3] 邱錦倫.Visual C#.net程序設(shè)計(jì)教程[M]. 北京:清華大學(xué)出版社,2006.

[4] 苗雪蘭,劉瑞新,宋會(huì)群. 數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用教程[M].北京:機(jī)械工業(yè)出版社,2004.

[5] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M]. 北京:高等教育出版社,2006.

[6] 邱錦倫.Visual C#.net程序設(shè)計(jì)教程[M]. 北京:清華大學(xué)出版社,2006.

Design and Implement of Internet Examination System

ZHANG Yi-wen1, WANG De-sheng1, JIN Ying2, WANG Ai-ping1

(1.School of Computer Science and Technology, Anhui University, Hefei 230009, China; 2. Department of

management of Hefei University, Hefei 230022, China)

Abstract:The network test system is an extension of the traditional test, which makes full use of database technology, greatly simplifies the traditional process of examination, enhances the flexibility of the teaching and learning activities, so it is an important part to e-teaching. In this paper, exploitation and design of network test system base on B/S model are introduced and analyzed and actualized a basic network test system.

Key words: Internet examination system; Browser/Server; security

猜你喜歡
主觀題管理員密碼
極坐標(biāo)方程主觀題考點(diǎn)分析
可疑的管理員
誰泄露了密碼
密碼藏在何處
破譯密碼
讓管理員管不了的名字
當(dāng)小小圖書管理員
例析詩歌鑒賞主觀題解答五忌
讓管理員暈倒的8個(gè)網(wǎng)名
破譯密碼