asp毕业设计——基于asp+sqlserver的在线考试制卷系统设计与实现(毕业论文+程序源码)——在线考试制卷系统

基于asp+sqlserver的在线考试制卷系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于asp+sqlserver的在线考试制卷系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

1、项目简介

  1. 利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网建设的有利优势,基于B/S模式研究开发了在线考试系统这一ASP应用程序。该系统可以减轻教师工作负担、提高工作效率、优化学生考试的流程,比传统的考试模式节省了人力、财力和时间。

  2. 系统分为三大模块:系统管理模块,考试模块以及领导审查模块。其中系统管理模块是由科目管理、题库管理、试卷生成、信息发布、用户管理等组成,该模块是系统的基础。考试模块主要有选择科目、成绩查询、考试新闻组成,主要实现了考生在选择科目后进入考试窗体,以及考完后对客观题的自动评分、存档。审核模块主要实现领导对考试计划和考试新闻的审批等。

  3. 本系统的开发采用结构化设计思想。论文中介绍了考试系统的开发背景、开发工具、总体设计和系统的具体实现过程。


2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:10054个字28页
包含内容:全套源码+配整论文
开题报告、论文答辩、课题报告等ppt模板推荐下载方式:
在这里插入图片描述


3、关键词

题库管理;试卷生成;信息发布;用户管理

4、毕设简介

提示:以下为毕业论文的简略介绍,项目完整源码及完整毕业论文下载地址见文末。

1 引言
1.1 选题背景
教学包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然教学已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。

在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!

目前,应用软件运行的模式主要有二类:Client/server模式,Browser/Web模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是Web Server ,而Web Server与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护简便。

1.2 课题的选定
在线考试系统极大的提高了教学的灵活性,现在许多领域已经有了广泛的应用。最有影响的案例就是ETA(美国教育考试中心)举办的GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会变为每个工作日都可以参加考试。

本程序实现了一个功能比较强大的网上考试系统,该系统基本上可以满足现代信息化企业的内部考试要求,领导即使在外地出差也可以通过访问Internet轻松设置审批考试,考试结束后也不要传统的繁琐的阅卷过程,极大的提高了企业的办公效率。考试的题型都是标准化客观题目(单项选择题、多项选择题、判断题),对于其他类型的题目只要在文本的基础上稍加修改即可。本系统的最大特点是无论是考试计划还是新闻的发布都需要通过层层审批才能生效,审批流程,系统自动提示,这符合企业的流程,也有利于企业的管理。

在线考试系统一定要有的信息作为基础,关于考生的信息管理其实就是一个简单的会员管理系统,只要对这个库稍加修改即可变为任何企业,任意部门的考试系统。这里所实现主要是题库的管理,考试新闻的发布,试卷的制定、审核、生成,考场的环境,考试结果的公布查询等功能。

1.3 可行性研究
1.3.1 目标
在线考试系统极大的提高了教学的灵活性,现在许多领域已经有了广泛的应用。
1.3.2 评价尺度
开发这个系统的目的就是帮助企业的主管考试部门提高工作效率,实现企业考试信息管理以及考试流程的系统化、规范化和自动化。
1.3.3 对现有系统的分析
(1)处理流程和数据流程如图1-1所示:

在这里插入图片描述

图1-1 系统数据流程图
(2)系统的功能模块如图1-2所示:

在这里插入图片描述

图1-2 系统功能模块图

1.3.5 影响
所开发的系统对操作系统并没有太大的要求,可直接安装在计算机上使用。对计算机资源要求也不严格,任何语言编写的在线考试系统都可以和这个系统并行使用,而且在Windows98/2000/Me/XP的环境下都可以运行。为了完成该软件的开发,专门进行了市场调查。在调查的过程中进一步完善了系统的概况,并听取了有关专业人士的建议。

1.4 投资及效益分析
省略

1.5 运行环境

2.1 系统设计
在线考试系统可实现考生在线答题,管理员在线录题及生成试卷,系统管理维护,共分为五大主要子系统:新闻模块,登陆,考试模块,领导审核,后台管理。
(1)进入考试系统
<1>输入管理员或普通用户的ID和密码,以普通用户的身份进入系统时选择要考试的科目,以管理员的身份进入系统,这时页面上方的导航条已经改变,增加了科目管理、试卷管理、生成试卷、新闻发布等选项。
(2)首页
<1>系统的首页主要使用框架搭建,主要分为四个部分:顶部工具条、左侧用户信息栏、右侧中部系统时间信息栏、右下侧是用户所选的功能模块界面默认为的考试新闻信息栏。
(3)新闻页面
<1>关于发布以及显示考试方面(如:考试科目,考试时间等)的相关信息,考场纪律及注意事项。
(4)登录
<1>登录界面需要让用户输入用户名、密码,以及进入系统的身份(考生和系统管理员)。如果输入错误还要返回该页面,程序还要判断是否因为错误登录信息而造成的再次进入,如果是还要显示错误信息。
(5)考试模块
<1>考试模块:只有一个考试的列表,表格的每一列的内容分别是:序号、考试科目、考试时间、操作(进入考场的链接)。
<2>成绩查询:本页面可以提供对考生以往的考试成绩的多功能查询功能,这里应该可分科目显示考生以往的考试成绩。页面的实现基本上同题库的实现页面相同。
(6)领导审核
<1>项目的审核:进入此界面后,在新闻的下方有系统提示的审批请求,单击进入审批页面。审批内容包括考试计划和考试新闻的审批,如果考试信息审核通过则考试按照计划执行,如果新闻审核通过则新闻发布。若未通过则考试信息和新闻不发布。
(7)后台管理
系统管理员界面的首页与普通用户的公共首页基本上一样,只是上方的工具栏发生变化,管理员工具条增加了对系统数据库维护的几个选项。
<1>科目管理:主要实现对考试科目的添加、删除等功能。首先,在页面上添加一个表单用来提交科目的增添操作。然后,需要在页面中显示已有的用于考试的科目。
<2>题库管理:主要的功能是实现试题内容的添加、修改、删除、查询等操作以及对现有试题库的科目、题型的浏览。首先要实现的是页面中的操作有效性提示部分,其次题库的显示可以按照科目题型分类和按照关键字显示,这里采用一个提供选项的表单。最后是要显示已有的题库。由于题库的容量庞大,所以必须采用分页显示。
<3>生成试卷:管理先向系统提交想要生成的试卷的各种信息,这个信息必须通过领导审批才能作为一次正式的考试。本系统处理考试试卷的生成总共需要三部分:第一步,管理员需要向系统提交试卷的基本信息。在页面中添加一个表单,在表单内插入一个表格,表格内输入考试的题目、题型、数目、各题的分值、考试的有效期。第二步,管理员需要向系统提交参加考试的人员名单以及审核考试信息的领导姓名。只要在页面中添加一个两行的表格,第一行显示的内容分别为:编号、姓名、职务、部门、单位。名单的显示是通过调用系统用户表生成的,这样可以方便的组织某一部门的考试。审核领导的名单是通过对系统用户的职务级别判断产生的。第三步,管理员确认所有信息无误后将所有考试信息存入数据库,生成试卷成功。制卷逻辑流程如图2-1所示。

在这里插入图片描述

图2-1 制卷逻辑流程图
<4>信息发布:管理员添加考试新闻(如:科目的考试通知等)需要填写的内容有标题、正文、有效期、审核领导和姓名。审核领导姓名通过查询数据表自动形成。管理确认提交后,系统将信息加入数据库。当一条考试计划或者考试新闻成功添加以后,管理员在这个项目通过审批前有权取消计划。审核功能流程如图2-2所示。

在这里插入图片描述

图2-2 审核功能流程图
2.2 数据库概念模型
E-R(Eneity-Relationship Approach)图是最常用的概念模型表示方法,也是数据库的核心和基础,它是按用户的观点来对数据和信息建模,依据概念模型设计应具的特点:真实性、易理解性、易修改性、易转换性,系统数据库的E-R图如图2-3所示。

在这里插入图片描述

图2-3 系统数据库E-R图
2.3 数据库的分析与设计
在线考试系统数据库采用Microsoft SQL SERVER,数据库中表及其作用如下:
(1)用户信息表(cadre_info)
用于存储所有用户的信息(包括:考号、考生姓名、密码、职务信息、管理员权限)
(2)部门信息表(department)
为了考试的分部门管理以及查询所建立的部门信息表(包括:部门名称)
(3)考试科目信息表(exam_subject)
为存储考试的科目信息所建立的科目信息表(包括:科目编号、科目名称)
(4)新闻信息表(exam_news)
考试信息发布需要存储新闻信息所建立的新闻信息表(包括:新闻编号、标题、正文内容、创建人、审核发布人、创建日期、审核通过的发布日期)
(5)题库信息表(exam_database)
为了存储题库所建立的题库信息表(包括:题目编号、题干、选项、正确答案、考试时是否以被选过的标记)
(6)考试信息表(exam_test)
存储管理员已经制定了的考试所建立的考试信息表(包括:考试编号、各科目的数量、各科目的分值、考试时间、创建者、审核者、开始日期、结束日期、设置日期)
(7)考生信息表(exam_testuser)
为存储每次参加考试又那些考生所建立的考生信息表(包括:考生考号、考试编号、是否考过标记)
(8)等待通过的项目信息表(waitforpass)
为存储等待通过的项目(包括考试和要发布的新闻)所建立的项目信息表(包括:等待通过的项目类别、编号、审核者、审核日期、是否通过)
(9)考试成绩信息表(exam_score)
为存储每个考生的考试成绩信息所建立的成绩信息表(包括:考生的各种信息、考试信息、考试成绩)
(10)考试新闻系统登录信息表(exam_news_log)
为能查看没有看新闻的考生所建立的日志表(包括:新闻编号、登录用户)
如表2-1、2-2、2-3、2-4、2-5、2-6、2-7、2-8、2-9和2-10所示。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3 系统的具体实现过程
3.1 系统首页及用户登录
3.1.1 系统首页
统首页使用的是框架搭建的,主要分为四部分:顶部工具条、左侧用户信息栏、右侧中部系统时间信息栏、右下侧是用户所选的功能模块界面默认为的考试新闻信息栏。(如图3-1)
在这里插入图片描述

图3-1 系统首页页面
3.1.2 用户登录
输入信息以后,系统自动判断该用户是否为普通用户。如果输入错误还要返回该页面,程序还要判断是否因为错误登录信息而造成的再次进入,如果是还要显示错误信息。
3.2 管理员模块(后台管理模块)
系统管理员界面的首页与普通用户的公共首页基本上一样,只是上方的工具栏发生变化(如图3-2),增加了对系统数据库维护的几个选项。如,科目管理,题库管理,试卷生成,消息发布等操作。
在这里插入图片描述

图3-2 管理员登录页面
3.2.1 试卷的生成
一套试卷是由不同层次、不同难度和不同范围的一定数目的试题所组成,这些基本信息正是构成试卷的主要元素。而试卷基本信息的管理即对要生成的试卷的基本信息按照教师意愿进行录入的功能模块,以便在生成试卷的时候能够根据这些基本信息在题库中进行随机选题。该模块主要由admincreatepaper1.asp,admincreatepaper2.asp这两个文件实现。各个功能介绍及对应文件如下:
(1)试卷基本信息的录入。包括:名称,科目,总分,题型及每种题型的分数比例,考试时间(包括开始,结束,考试用时),试卷对于所有考生难度系数等信息的录入。(对于此次设计由于时间原因只完成出客观题功能,主观题暂不考虑)主要由文件admincreatepaper1.asp实现。如图3-3所示:

在这里插入图片描述

图3-3 试卷基本信息的输入页面
重要功能及代码分析如下:
 科目选择。科目的选择要在已有的考试科目中选取一个。实现代码如下:

<select size="1" name="subject">
          <option selected>--选择科目--</option>
          <% sql="select * from exam_subject"
      set rs=server.createobject("adodb.recordset")
      rs.open sql,conn,3,2
      do while not rs.eof %>
          <option value="<%=rs("exam_subject")%>"><%=rs("exam_subject")%></option>
          <% rs.movenext
      loop
      rs.close %>
     </select>

 页面控制功能函数。为防止用户还没有输入信息就进入下一步,在文件头中应设计一些函数来控制用户的动作,在用户点击“下一步”按钮时就触发设定的函数对其进行检查,在该页面中主要包括:防止用户未选择科目,确定已修改考试时间且开始时间要小于结束时间,使卷面总分与设定的总分相同。对于防止用户未选择科目,可以在初始界面中就默认为显示“选择科目”,当用户点击“下一步”按钮时,就进入指定函数进行判断,看列表框的value值是否等于“选择科目”,若等于就出错,弹出出错对话框,并返回该界面重新输入。对于确定已修改考试时间且开始时间要小于结束时间,在初始时使开始时间与结束时间相同,当用户点击“下一步”按钮时,就进入指定函数进行判断,若开始时间小于或等于结束时间就出错,弹出出错对话框,并返回该界面重新输入。对于要使卷面总分与设定的总分相同,当用户输入各个分值或点击“下一步”按钮后,就进入指定函数进行判断,将每种题型的题目数乘以该题型每题的分值,并将各种题型的总分相加得实际的总分,若不等于页面输入的总分值就出错,弹出出错对话框,并返回该界面重新输入。
实现代码如下:

<script language="javascript">
function checktotal(){
var myform=document.firstform;
var a=myform.singlecount.value;
var b=myform.singleper.value;
var c=myform.multicount.value;
var d=myform.multiper.value;
var e=myform.judgecount.value;
var f=myform.judgeper.value;
var i=myform.totalper.value;
var j=a*b+c*d+e*f;
if (j!=i){
  document.all.tishi.innerText=" 当前卷面总分:"+ j +",卷面总分与设定的不相符,请修改卷面总分或者调整题型分布和分值分布!";
  }
else
  document.all.tishi.innerText=" 当前卷面总分:"+ j;
}

function submitit(){
var myform;
myform=document.firstform;
if (myform.subject.value==""){
  alert("请选择考试科目!")
  myform.subject.focus();
  return false;
  }
else
  return true;
if (j!=i){
  alert("设定的总分和卷面总分不相符,请修改卷面总分或者调整题型分布和分值分布!");
  return false;
  }
else 
  return true;
}
</script>

(2)参考人群,审核人的设定。实现该功能主要由。页面如图3-4所示:
在这里插入图片描述

图3-4 参考人群,审核人的选定页面
其中在选择参考人群的时候,页面可以根据用户选择的部门自动列出考试用户信息,供管理员选择哪些人员可以参加该考试。默认的时候是选择所有的部门,也可以从所有部门里选取特定的用户,此时可以判断列表项是选择的是哪一个部门,根据此部门的id在cadre_info表中查询出user_ID等于此id的用户信息,并用循环依次列出每个用户及其详细信息。根据特定的条件来选择审核人员(如图3-4:教务处),并在用户点击“生成试卷”时判断用户是否已经选择了审核人,若否则弹出出错对话框。
判断部门语句如下:

<select size="1" name="sdepartment" onChange="this.form.submit();">
      <option selected>所有部门</option>
      <% sql="select * from department"
      set rs=server.createobject("adodb.recordset")
      rs.open sql,conn,3,2
      do while not rs.eof %>
      <option value="<%=rs("department")%>"><%=rs("department")%></option>
      <% rs.movenext
      loop
      rs.close %></select>
根据特定的条件选择审核人语句如下:
  <select size="1" name="shenhr">
    <option value="选择审核人">选择审核人</option>
    <% 
sql="select * from cadre_info where rank='院领导' or rank='部门领导'"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,3,2
do while not rs.eof %>
    <option value="<%=rs("userid")%>"><%=rs("username")%></option>
    <% rs.movenext
      loop
      rs.close %>
  </select>

3.2.2 题库和科目的管理及信息的发布
(1)题库的管理 :主要的功能是实现试题内容的添加、修改、删除、查询等操作以及对现有试题库的科目、题型的浏览。首先要实现的是页面中的操作有效性提示部分,其次题库的显示可以按照科目题型分类和按照关键字显示,这里采用一个提供选项的表单。最后是要显示已有的题库。由于题库的容量庞大,所以必须采用分页显示。(如图3-5所示)。
(2)科目的管理:主要实现对科目的添加、删除等功能。首先,在页面上添加一个表单用来提交科目的增添操作。然后,需要在页面中显示已有的用于考试的科目。(如图3-6所示)。
(3)信息发布:主要实现考试计划或者考试新闻等相关信息的发布。管理员添加考试新闻需要填写的内容有标题、正文、有效期、审核领导和姓名。审核领导姓名通过查询数据表自动形成。管理确认提交后,系统将信息加入数据库。当一条考试计划或者考试新闻成功添加以后,管理员在这个项目通过审批前有权取消计划。
在这里插入图片描述

图3-5 题库管理页面
在这里插入图片描述

图3-6 科目管理页面
3.3 领导审核模块
3.3.1 试卷的审核
审批信息管理主要是对管理员定制的试卷和发布的新闻进行审核。实现该功能的页面有:news.asp,passit.asp,unpass.asp,savepass.asp等。由于考虑到权限的问题,该功能由部门领导或者院领导调用。首先用户登录系统后将根据用户id号判断该用户是否具有调用该功能的权限,若有则在新闻页面news.asp中显示系统提示信息,包括有需要审核的新闻和考试计划,并为审核提供跳转页面,也可直接使其作废。在需要审核的项目后有进入审核页面的超链接“现在审批”,点击后进入审核页面passit.asp。如图3-7所示:
在这里插入图片描述

图3-7 登录新闻页面显示待审批考试计划页面
进入审核界面后首先判断将审核的是考试计划还是新闻,若是考试计划将显示该试卷的基本信息,即在试卷定制时输入的信息,供审核人查看以判定该试卷是否合理,并且审核人是不能修改这些信息的。然后显示该试卷的详细信息,即显示包含在该试卷中的每一道题的题干及选项,供审核人查看试卷的具体内容是否合理是否符合上述基本信息。页面如图3-8所示:
在这里插入图片描述

图3-8 试卷审核时显示试卷详细信息页面
以上是显示该试卷的所有信息,接着将是审核人要对该考试计划进行合理性判断,以确定是否让其通过。若通过则将审核意见填如waitforpass表,然后将waitforpass表的havepass字段设置为1,若未通过则将审核意见填如waitforpass表,然后将waitforpass表的havepass字段设置为0。并显示操作成功信息提示。注:为确保制卷人知道审核是否通过的原因,审核人在审核意见一栏必须填入审核的意见才能进入下一步。
3.4 普通用户模块
当系统判定用户为普通用户后,进入普通用户界面(如图3-9所示:)选择科目考试进行考试(如图3-10所示:)或者查询以往的考试成绩(如图3-11所示)
在这里插入图片描述

图3-9 普通用户登录页面
3.4.1 科目考试
只有一个考试的列表,表格的每一列的内容分别是:序号、考试科目、考试时间、操作(进入考场的链接),考生考试结束交卷后系统会立刻自动评分,显示成绩。此外提交考卷以后还可以继续考试,即一个考生可以进行多场考试。
在这里插入图片描述

图3-10 科目考试页面
3.4.2 成绩查询
本页面可以提供对考生以往的考试成绩的多功能查询功能,这里应该可分科目显示考生以往的考试成绩。页面的实现基本上同题库的现实页面相同。
在这里插入图片描述

图3-11 成绩查询页面
结 论

通过老师的指点和自己的努力,完成了在线考试制卷系统的设计,满足了用户需求。由于设计是基于B/S模式,该系统具有良好的可移植性等优点,并且具有相当不错的应用前景。最大的特点是开放性、方便性和灵活性。主要是指不仅可以轻松地向题库添加、修改和查询试题(卷),而且还可以自动新增科目并建立相应的数据表,它还允许用户根据自己的需求,从现有的试题库中灵活地抽取各类试题,以组建适合于自身所需的试卷。而且,自测试卷的难易程度和形式以及各大题分数等都由用户根据需要确定。由于ASP技术相对现在流行的JSP等技术在安全性方面存在一定得差距,所以该系统在安全性方面存在与生俱来的劣势,安全性有待于进一步加强。
参考文献
[1]王国荣.ASP网页制作教程[M].北京:人民邮电出版社,2000。
[2]周纳. ASP动态网站编程与应用[M].北京:清华大学出版社,2005。
[3] 蔡翠平.网络程序设计-ASP (第2版)[M].北京:清华大学出版社,2004。
[4] 郝平. 数据库开发与应用[M].北京:科学出版社,2005。
[5] 杨铭.数据库系统应用教程[M].北京:经济科学出版社,2002。
[6] 刘湛清,王强. SQL Sever 2000经典范例50讲[M].北京:科学出版社,2003。
[7] 周绪.SQL Sever 2000入门与提高[M].北京:清华大学出版社,2003。

致 谢
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)
本项目源码基于asp+sqlserver的在线考试制卷系统设计与实现(源码+文档)_asp_BS架构_在线考试制卷系统.zip

6、更多asp毕业设计项目

精选ASP毕业设计91套——源码+论文完整资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业设计方案专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值