在线考试系统论文论文.docx

上传人:b****8 文档编号:9834924 上传时间:2023-05-21 格式:DOCX 页数:29 大小:449.36KB
下载 相关 举报
在线考试系统论文论文.docx_第1页
第1页 / 共29页
在线考试系统论文论文.docx_第2页
第2页 / 共29页
在线考试系统论文论文.docx_第3页
第3页 / 共29页
在线考试系统论文论文.docx_第4页
第4页 / 共29页
在线考试系统论文论文.docx_第5页
第5页 / 共29页
在线考试系统论文论文.docx_第6页
第6页 / 共29页
在线考试系统论文论文.docx_第7页
第7页 / 共29页
在线考试系统论文论文.docx_第8页
第8页 / 共29页
在线考试系统论文论文.docx_第9页
第9页 / 共29页
在线考试系统论文论文.docx_第10页
第10页 / 共29页
在线考试系统论文论文.docx_第11页
第11页 / 共29页
在线考试系统论文论文.docx_第12页
第12页 / 共29页
在线考试系统论文论文.docx_第13页
第13页 / 共29页
在线考试系统论文论文.docx_第14页
第14页 / 共29页
在线考试系统论文论文.docx_第15页
第15页 / 共29页
在线考试系统论文论文.docx_第16页
第16页 / 共29页
在线考试系统论文论文.docx_第17页
第17页 / 共29页
在线考试系统论文论文.docx_第18页
第18页 / 共29页
在线考试系统论文论文.docx_第19页
第19页 / 共29页
在线考试系统论文论文.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

在线考试系统论文论文.docx

《在线考试系统论文论文.docx》由会员分享,可在线阅读,更多相关《在线考试系统论文论文.docx(29页珍藏版)》请在冰点文库上搜索。

在线考试系统论文论文.docx

在线考试系统论文论文

 

摘要:

本文主要研究了题库管理系统的设计与开发,研究该课题的主要目的是便于学生进行测试、复习知识,学生可以登录此系统进行答题,实现考、测一体化,提高学校的教学质量和效率。

系统主要用VS2005以及SQL2005来实现。

关键字:

在线考试系统题库Sql2005

第1章系统分析

1.1开发背景

随着互联网的发展、广泛普及以及校园网的发展,计算机考试已成为一种趋势,运用计算机考试一方面可以节省人力物力,另一方面也给师生带来了方便,所以设计出一款界面友好型、经济实用型的软件已经迫在眉睫、刻不容缓。

现代高等教育中,网络的运用是提高学校教学效果和教学效率、提高科研和管理水平的必要手段。

目前的一个发展趋势是采用大规模试题库的计算机网络考试模式,随着计算机网络在生产生活、科技教育中的普及,传统的考试出卷、答卷方式以及学绩管理正发生着巨大的变革,因此,如何使考试过程变得方便、高效、快捷、公正,是现代教育的一个重要课题。

当前国际上许多考试认证,例如GRE、CISCO,其出题、答卷以及评分都是在计算机上完成的。

无纸化的考试形式有着其科学、及时、准确、公平等优点,具有传统考试形式无法替代和比拟的优势,一方面可以防止考生心存侥幸,投机取巧;另一方面它保密性高,考试时间灵活,提高了学校的教学水平。

本文设计的是一套基于微软SQLserver2005数据库的网络软件系统.

1.2系统需求分析

1.功能需求

系统应提供用户登录识别,对试题进行增、删、改、查询功能,自动生成试题,自动判卷功能等。

2.性能需求【1】

系统反应时间应在2s内,主存容量应该为256MB,磁盘容量最少应为80GB,在安全性方面应该防止SQL注入等。

3.可靠性可用性需求

在考试期间不能出现系统崩溃情况,当遇到的断电等突发情况,应该有一定的恢复措施,在一个月内在任何一台计算机上该系统不可用的时间不能超过2%。

4.出错处理需求

当插入的数据出现是系统应该给一个友好的提示,比如弹出一个对话框进行提示等。

1.3开发环境

数据库是数据管理的最新技术,是计算机科学的重要分支【2】。

今天,信息资源已成为各个部门的重要财富和资源。

十年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。

由于数据库具有数据的结构化、可控冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,因此,作为信息系统核心和和基础的数据库技术得到了越来越广泛的应用,越来越多的新的应用领域采用数据库技术来存储和处理信息资源,较大的信息系统都是建立在数据库设计之上的。

由于用到的数据表格多,学生基本信息的变动较大,我们选用SQLServer作为数据库开发,而不用Access,主要是因为Access存放的记录,在实际运用中不适合此系统;而SQLServer是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,使用方便快捷,故选用SQLServer数据库。

用VB语言进行编码。

VB编程语言是微软在.NET计划中重要的开发语言,它具有语法简单,功能强大,快速应用,语言自由,强大的Web服务器控件,支持跨平台,与XML相融合等。

因此选择VB编程语言。

第2章系统设计

2.1系统架构

整个系统分为三个部分,管理员、学生和主界面。

由于每个用户的权限不同,所以用户进入系统应该进行身份验证。

根据不同的身份权限进入不同的操作界面,进行不同的操作,浏览不同的页面。

学生进入考试系统后,能进行考试,以及查看自己的考分。

对于每个考试者来说,试卷的试题和题量都应是相同的,并且为了保证考试的公平性,每个考生只限制抽取一次题。

考试者选择答案提交后,由计算机自动判卷,得到成绩后立即显示出来。

考试完毕后,用户应该退出系统。

对于管理员来说,可以根据需要往数据库录入试题,还能对题库进行增、删、改、查、等操作。

本系统是以WindowsXP系统为操作平台,在.NET2005环境下编程实现。

系统ER图:

2.2系统功能模块

本题库管理系统分为用户管理模块、学生管理模块、题库管理模块、试卷生成管理模块、考试查询模块、考试页面管理模块六个模块。

图2-2系统模块图

学生用例图【3】:

图2-3学生用例图

管理员用例图:

 

 

图2-4管理员用例图

2.3系统数据库设计

综合以上分析,要实现上面的所有功能模块,本题库系统共有8个数据表,分别是:

选择题信息表、判断题信息表、填空题信息表、问答题信息表、试题科目表、管理员信息表、试卷信息表和试卷内容表。

表2-1管理员信息表(admin)

列名

含义

数据类型

长度

缺省值

允许空

admin_id

用户名

Varchar

100

admin_pwd

密码

Varchar

100

表2-2试题科目表(Sub)

列名

含义

数据类型

长度

缺省值

允许空

QuestionSub

试题科目

nvarchar

50

表2-3选择题信息表(SingleSel)

列名

含义

数据类型

长度

缺省值

允许空

QuestionID

试题编号

char

20

Question

试题内容

ntext

16

列名

含义

数据类型

长度

缺省值

允许空

Choice_A

选项A

nvarchar

50

Choice_B

选项B

nvarchar

50

Choice_C

选项C

nvarchar

50

Choice_D

选项D

nvarchar

50

Answer

正确答案

char

10

QuestionSub

所属科目

nvarchar

50

QuestionTime

录入时间

nvarchar

50

QuestionType

试题类型

nvarchar

50

表2-4判断题信息表(RightOrWrong)

列名

含义

数据类型

长度

缺省值

允许空

QuestionID

试题编号

char

20

Question

试题内容

ntext

16

Answer

正确答案

char

10

QuestionSub

所属科目

nvarchar

50

QuestionTime

录入时间

nvarchar

50

QuestionType

试题类型

nvarchar

50

表2-5填空题信息表(Filling)

列名

含义

数据类型

长度

缺省值

允许空

QuestionID

试题编号

char

20

Question

试题内容

ntext

16

Answer

正确答案

nvarchar

50

QuestionSub

所属科目

nvarchar

50

QuestionTime

录入时间

nvarchar

50

QuestionType

试题类型

nvarchar

50

表2-6问答题信息表(EssayQuestion)

列名

含义

数据类型

长度

缺省值

允许空

QuestionID

试题编号

char

20

Question

试题内容

ntext

16

Answer

正确答案

ntext

16

QuestionSub

所属科目

nvarchar

50

QuestionTime

录入时间

nvarchar

50

QuestionType

试题类型

nvarchar

50

表2-7试卷信息表(test1)

列名

含义

数据类型

长度

缺省值

允许空

test_number

试卷编号

char

20

test_name

试卷名称

nvarchar

100

test_sub

试卷科目

nvarchar

100

test_score

试卷分值

float

8

xzQuantity

选择题数量

int

4

xzScore

选择题分值

float

8

pdQuantity

判断题数量

int

4

pdScore

判断题分值

float

8

tkQuantity

填空题数量

int

4

tkScore

填空题分值

float

8

wdQuantity

问答题数量

int

4

wdScore

问答题分值

float

8

表2-8试卷内容表(QuestionPaper)

列名

含义

数据类型

长度

缺省值

允许空

test_number

试卷编号

char

20

PaperSerial

试卷中的题号

char

20

QuestionID

试题编号

char

20

QuestionType

试题类型

varchar

50

Score

试题分值

float

8

第3章系统实现

3.1管理员主页面

管理员页面包括用户登录Login.aspx页面.

图3-1学生主界面

对于用户名用RequiredFieldValidator控件【4】来判断其不能为空,对于判断登录用户是否合法,用If(dr.Read())来判断。

Dimusername,passwordAsString

username=TexUserName.Text.ToString().Trim()

password=TexPassword.Text.ToString().Trim()

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=ExamTest;DataSource=.")

DimcmdAsNewOleDbCommand("select*fromadminwhereadmin_id='"&username&"'andadmin_pwd='"&password&"'",conn)

conn.Open()

DimdrAsOleDbDataReader=cmd.ExecuteReader()

If(dr.Read())Then

Session("admin_id")=username

IfDropDLAdmin.SelectedItem.Value="管理员"Then

Response.Redirect("admin.aspx")

ElseIfDropDLAdmin.SelectedItem.Value="学生"Then

Response.Redirect("Student.aspx")

EndIf

ElseIfMsgBox("你输入的用户名密码有误!

")Then

EndIf

conn.Close()

Admin.aspx管理员主页面:

图3-2题库管理主界面

使用普通按钮Response.Redirect("PassWordAlter.aspx")语句来实现页面之间的跳转。

Response.Redirect("PassWordAlter.aspx")

PassWordAlter.aspx页面来修改密码(其中Session("admin_id")为从Login.aspx页面传来的变量):

图3-3密码修改界面

Dimjiumima,xinmima1,xinmima2AsString

jiumima=TextBox1.Text.ToString().Trim()

xinmima1=TextBox2.Text.ToString().Trim()

xinmima2=TextBox3.Text.ToString().Trim()

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=ExamTest;DataSource=.")

Dimcmd1AsNewOleDbCommand("select*fromadminwhereadmin_id='"&Session("admin_id")&"'andadmin_pwd='"&jiumima&"'",conn)

conn.Open()

Dimdr1AsOleDbDataReader=cmd1.ExecuteReader()

'判断记录是否存在

If(dr1.Read())Then

IfTextBox2.Text=TextBox3.TextThen

Dimcmd2AsNewOleDbCommand("updateadminsetadmin_pwd='"&xinmima1&"'whereadmin_id='"&Session("admin_id")&"'",conn)

Dimdr2AsOleDbDataReader=cmd2.ExecuteReader()

MsgBox("恭喜,密码修改成功")

ElseIfMsgBox("两次输入的密码不一致")Then

EndIf

ElseIfMsgBox("你输入的密码有误!

")Then

EndIf

conn.Close()

添加试题、查询试题页面(试题管理页面)TestManagement.aspx,其中在页面TestManagement.aspx用Session("biaoming")来保存表名。

图3-4试题管理界面

页面加载时代码如下:

Session("QuestionType")=DropDownList1.Text.ToString().Trim()

添加试题按钮单击事件代码如下:

IfDropDownList1.Text="选择题"Then

Response.Redirect("AddSingle.aspx")

ElseIfDropDownList1.Text="填空题"Then

Response.Redirect("AddFilling.aspx")

ElseIfDropDownList1.Text="判断题"Then

Response.Redirect("AddRightOrWrong.aspx")

ElseIfDropDownList1.Text="问答题"Then

Response.Redirect("AddEssayQuestion.aspx")

EndIf

查询按钮单击事件代码如下:

DataBindGridView()

DataBindGridView子过程代码如下:

SubDataBindGridView()

Dimstrsql1,strsql2,strsql3,strsql4AsString

strsql1="selectQuestionID,Question,QuestionSub,QuestionTime,QuestionTypefromSingleSelwhereQuestionSub='"&DropDKM.Text.ToString().Trim()&"'andQuestionType='"&DropDTX.Text.ToString().Trim()&"'andQuestionTime='"&TexSJ.Text.ToString().Trim()&"'"

strsql2="selectQuestionID,Question,QuestionSub,QuestionTime,QuestionTypefromRightOrWrongwhereQuestionSub='"&DropDKM.Text.ToString().Trim()&"'andQuestionType='"&DropDTX.Text.ToString().Trim()&"'andQuestionTime='"&TexSJ.Text.ToString().Trim()&"'"

strsql3="selectQuestionID,Question,QuestionSub,QuestionTime,QuestionTypefromFillingwhereQuestionSub='"&DropDKM.Text.ToString.Trim()&"'andQuestionType='"&DropDTX.Text.ToString().Trim()&"'andQuestionTime='"&TexSJ.Text.ToString().Trim()&"'"

strsql4="selectQuestionID,Question,QuestionSub,QuestionTime,QuestionTypefromEssayQuestionwhereQuestionSub='"&DropDKM.Text.ToString().Trim()&"'andQuestionType='"&DropDTX.Text.ToString().Trim()&"'andQuestionTime='"&TexSJ.Text.ToString().Trim()&"'"

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=ExamTest;DataSource=.")

Dimcmd1AsNewOleDbCommand(strsql1,conn)

Dimcmd2AsNewOleDbCommand(strsql2,conn)

Dimcmd3AsNewOleDbCommand(strsql3,conn)

Dimcmd4AsNewOleDbCommand(strsql4,conn)

conn.Open()

IfDropDTX.Text="选择题"Then

Dimdr1AsOleDbDataReader=cmd1.ExecuteReader()

GridView1.DataSource=dr1

GridView1.DataBind()

Session("biaoming")="SingleSel"

ElseIfDropDTX.Text="判断题"Then

Dimdr2AsOleDbDataReader=cmd2.ExecuteReader()

GridView1.DataSource=dr2

GridView1.DataBind()

Session("biaoming")="RightOrWrong"

ElseIfDropDTX.Text="填空题"Then

Dimdr3AsOleDbDataReader=cmd3.ExecuteReader()

GridView1.DataSource=dr3

GridView1.DataBind()

Session("biaoming")="Filling"

ElseIfDropDTX.Text="问答题"Then

Dimdr4AsOleDbDataReader=cmd4.ExecuteReader()

GridView1.DataSource=dr4

GridView1.DataBind()

Session("biaoming")="EssayQuestion"

EndIf

conn.Close()

EndSub

其中DataBindGridView1子过程代码如下:

SubDataBindGridView1()

DimstrsqlAsString

'建立Connection对象

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=ExamTest;DataSource=.")

'建立Command对象

strsql="selectQuestionID,Question,QuestionSub,QuestionTime,QuestionTypefrom"&Session("biaoming")&"whereQuestionID='"&Session("ID").ToString().Trim()&"'"

DimcmdAsNewOleDbCommand(strsql,conn)

'建立DataAdapter对象

DimadpAsNewOleDbDataAdapter(cmd)

'建立DataSet对象

DimdsAsNewDataSet()

'填充DataSet对象

adp.Fill(ds,"link")

'绑定数据对象

GridView1.DataSource=ds.Tables("link").DefaultView'指定数据源

GridView1.DataBind()'执行绑定

EndSub

对选择题进行操作的页面AddSingle.aspx:

图3-5插入选择题界面

其中插入按钮点击事件代码如下:

Dimstrsql,shitibianhao,suoshukemu,chuangjianshijian,shitineirong,xuanxiangA,xuanxiangB,xuanxiangC,xuanxiangD,daanAsString

shitibianhao=TexSTBH.Text.ToString().Trim()

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2