网络在线考试系统 毕业设计及论文(网络 计算机).doc
-
资源ID:3991480
资源大小:458KB
全文页数:27页
- 资源格式: DOC
下载积分:8金币
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
网络在线考试系统 毕业设计及论文(网络 计算机).doc
毕业设计(论文)设计(论文) 题目 网络在线考试系统学 院 教 学 系 班 级 网络 班 姓 名 指导教师 年 月摘 要随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,也有人称为数字化时代。数在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时也希望能够得到科学的评价,老师希望有效改进现有的考试模式,提高考试的效率,教育机构也希望给网上的学生提供更全面灵活的服务,希望全面准确地对学生进行跟踪和评价。网络考试系统正是迎合这一时常需求而开发的,它旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为学校创造一种新的考试环境,使考务管理突出失控的局面,提高考试工作效果和标准水平,是学校管理者、教师和学生可以随时随地通过网络进行考试。本系统实现了管理员的后台学生和题库管理,学生前台考试,成绩查询等功能。关 键 字:考试系统;网络考试系统;ASP.NET SQL SERVER2000AbstractDue to acceleration of informationization process and popularization of Internet, so many kinds of programming contests such as International Olympiad in Informatics, becomes more and more popular. A kind of programming contest training websites, which provides training for users, has come into our lives. This dissertation introduces the designing and developing process of a programming contest training system. The system allows users submit programs online, ranks users first by number of problems solved, then by accepted ratio. It also provides BBS, in which users can discuss each other. The system can not only improve programming skills of users, but also provide a intercommunication methods for users.This system carried out the managing person's backstage student and a database a management, student stage examination, the result searches function.Keywords:Examine system;The network examines system ;ASP.NET;SQL SERVER2000目录诸论1第一章 开发概述211 开发背景212 课题研发的目的、意义方法213可行性分析3第二章 系统分析421系统调查:422 系统目标5第三章 系统设计631、系统功能结构设计63. 2 模块简介733. 数据库的设计8第四章 系统详细设计和实现1141 后台登录模块设计114. 2前台页面设计114. 3后台代码134. 4后台管理页面154. 5学生注册154. 6找回密码16第六章 结论19谢辞21参考文献22诸论现代信息技术的发展,给教育带来了深刻的变革。教育部长陈至立在讲到现代教育技术的发展与应用进指出: "我们将从三个面推进教育的信息化:一是在学校中普及和运用以多媒体计算机技术为核心的教育技术;二是推进网络的普及和应用;三是发展现代远程教育,建设并提供大量的网络资源,以此为平台构建终身学习体系。"随着信息时代的到来,人们对教育的需求日益增加。在线测试系统作为一种新的训练方式,将最大限度地利用网络资源,以其大众化、现代化和方便快捷的特性来满足用户的需求。同时现代计算机技术和网络技术的快速发展,也为在线测试的发展提供了强有力的技术保障条件。国内外大学试题库网站的成功运行和蓬勃兴起,也促使我们要加快步伐。开发网上试题库训练系统,提供开放的训练环境,促进交流,是本系统要实现的目标。随着计算机网上教育的日益兴起,在网上运行的除了要有大量的学习软件外,还要有相应的练习和测试系统与之配套。现在许多学校都已建有多媒体计算机教室,并连成局域网,开发适合学校或者远程教学的网上试题或练习迫在眉睫。在网上,人们可以不受时间和空间的限制,随时随地选学任何地方的任何课程。为全社会的终身教育提供完备、全面的资源保障。相比传统的考试方式,网络考试系统的主要好处是一方面可以动态的管理各种考试信息,只要准备好足够的题库,就可以按照要求自动生成各种试卷;另一方面,考试时间灵活,考生可以在规定时间段内的任意时间参加考试;另外计算机化的考试的最大特点就是阅卷快,系统可以在考试结束时当场给出考试结果,计算机阅卷给了考生的最大的公平感。第一章 开发概述11 开发背景随着Internet 互联网的高速发展,网络已经逐步发展成为现代人生活中不可缺少的一部分,各种网路应用软件层出不穷,网络应用更是应有尽有。与此同时网络教学应用应运而生,可以说网络无纸化考试系统的出现开辟了考试史的新纪元,它使得考试形式不再单纯依赖于纸张,达到了考生考试自动化,使广大莘莘学子上网实时考试的梦想变为现实。现代远程教育以计算机网络技术和多媒体技术为技术依托,为广为分散的学生提供远程交互式的学习方式。网上学习、网上练习和网上考试是远程教育中非常好的信息交互模式。基于数据库和ASP.NET的网上无纸化考试系统以其组卷的科学性、操作的简便性、评分的可靠性和高效率正在成为远程教育模式中不可或缺的组成部分。本程序实现了一个功能强大的网上考试系统,该系统基本上可以满足现代信息化企业的内部考试要求,领导即使在外地出差也可以通过访问Internet轻松设置审批考试,考试结束后也不要传统的繁琐的阅卷过程,极大的提高了企业的办公效率。考试的题型都是标准化客观题目(单项选择题、多项选择题、判断题),对于其他类型的题目只要在文本的基础上稍加修改即可。本系统的最大特点是无论是考试计划还是新闻的发布都需要通过层层审批才能生效,审批流程,系统自动提示,这符合企业的流程,也有利于企业的管理。网上考试系统一定要有的信息作为基础,关于考生的信息管理其实就是一个简单的会员管理系统,只要对这个库稍加修改即可变为任何学校,任意部门的考试系统。这里所实现主要是题库的管理,试卷的制定、审核、生成,考场的环境,考试结果的公布查询等功能。我利用ASP.NET去开发一套基于网络的考试系统,利用它可进行远程测试,从题库中提取考题供用户解答。用户提交答卷后,系统进行评分并将成绩登记入库。本系统还将实现及时反馈用户答题情况。12 课题研发的目的、意义方法随着信息时代的到来,人类知识更新的周期越来越短,如何使得教学和培训能够满足不同地点和不同学习时间人们的需要,传统的面对面教学方式已经力不从心。在这种情况下,现代远程教学应运而生,它的优点在于使得学生在时间和地点不同的情况下能与教师进行交互并完成学习任务。计算机辅助教学(CAI)与INTERNET技术的有机结合,使得基于网络的现代远程教育成为现代教育的发展趋势。基于ASP.NET网上考试系统,就是用万维网作为考试媒体传送考试内容,在网上进行网上测试和网上交流。网络作为媒体,其优势不仅在于它是很好的内容载体,可以随时随地地访问,还在于它提供了很多交流渠道,可以促进师生之间,学生之间的充分讨论,这对于提高教学质量,促进学生高级认知能力的开发是十分重要的。本课题旨在研究传统考试的不足和缺点,并进行有益的探索,力图开发出基于ASP.NET网上考试系统。13可行性分析网络考试系统的开发及应用,避免以往学校里考试纸张、笔、监考和巡考等各种资源的浪费,并且后台管理是管理员单一的管理,确保了程序的安全性。网络考试管理员登录后,对考试内容、专业、科目和考试题目等,都做了详细的分类,只要考生通过自己的学生编号和密码进入前台,按步骤依次进行选题和答题,答题完毕后系统会自动判断考卷,以及核对出最后考卷的分数,解决了在学校考试后等待考卷分数通知的问题。第二章 系统分析系统分析是应用系统思想和方法,把复杂的对象分解成简单的组成部分,找出这些部分的基本属性和彼此间的关系。它是信息系统开发工作中最重要的一环,其内容主要包括对组织各部门、各业务的详细了解,并在此基础上进行分析,提出新方案,以开发出符合用户要求的管理信息系统,它的基本任务是:系统分析员与用户在一起,充分了解用户的要求,并把理解用系统说明书表达出来。需求分析简单地说就是分析用户的需求。需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、学校等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。调查的重点是“数据”和“处理”,通过调查、收集与分析,获得用户对数据库的如下要求:(1)信息要求。指用户需要从数据库中获得信息的内容和性质。由信息要求可以导出数据要求,即在数据库中需要存储哪些数据。(2)处理要求。指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理。(3)安全性与完整性要求。确定用户的最终需求是一件很困难的事,这是因为一方面用户缺少计算机知识,开始时无法确定计算机究竟能为自己做什么,不能做什么,因此往往不能准确地表达自己的需求,所提出的需求往往不断地变化。另一方面,设计人员缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求。因此设计人员必须不断深入地与用户交流,才能逐步确定用户的实际需求。21系统调查:通过相关调查,要求网站具有以下功能; 通过网络,考生可以注册。 通过网络,考生可以进入考试。 通过网络,考生可以查询成绩。 通过网络管理员可以管理学生。 通过网络,管理员可以管理学生成绩。 通过网络管理员可以管理考试试题。总体目标:1、利用网络手段,提供网上训练环境。2、进行在线测试,促进交流。22 系统目标本程序是将传统的考试模式与先进的网络应用相结合进行开发设计的,主要实现如下目标: 具有实时性,已注册的用户无论身在何地,通过Internet浏览器,都可登陆网络考试系统。 具有严肃及公正性,系统提供的自动交卷功能,当考试到时间时,系统将自动交卷。 提供了考试时间倒计时功能,随时了解考试剩余时间。 考生可随时查看考试成绩。 系统自动交卷、阅卷,保证成绩真实准确。第三章 系统设计在前面进行了一系列的系统调查和系统分析以后,接下来的工作便是系统设计了。这是软件工程中第二个关键的阶段。它是根据前面的几个阶段的结果,在已获准的系统分析报告基础上进行系统设计。系统设计阶段是开发系统的重要阶段。这个阶段。我们需要把前面阶段收集来的信息进行整理(特别是用户的需求分析),找出我们需要的信息,定下系统开发过程中我们需要实现的功能。这个其实比较有难度的同时比较重要的。数据库如何能设计的尽可能全面而又合理、模块之间的联系程度、前后台的依赖关系如何反映,是在这一阶段感触最深的三个方面。数据库是所有信息的集合,好的数据库设计可以大大减少数据冗余度,如果数据冗余度太大,将占用很对系统资源,给服务器带来沉重的负担。还有数据库的设计也要充分考虑到前台代码执行的效率,不能仅仅是为了设计数据库设计而设计,这会可能导致在编写代码时遇到诸多不便,这一点还需我在以后的工作中好好研究。在系统设计阶段,每个模块应该尽可能的独立,这样可以减少模块间的调用关系和数据交换关系。每个模块的功能最好能让其尽可能的单一,这样易于以后系统的修改,可以大大的减少相关的操作。在做系统的时候,发现自己原先设计下来的模块不合理,难以满足用户的需求或则是难以实现这个功能,那就必须把这个模块推翻了,如果这个模块又设计到其他的模块,那这个对系统的改动是巨大的。这就要求我们尽早确定系统的核心模块,减少改动。由于此系统较大原定由两人完成,但因为某些原因,只剩我一人,因此我主要关注前台系统的开发。对于一些必须由后台系统反馈信息列表的前台模块必须清楚区分、详细界定。这也是本系统开发中较为遗憾的地方。31、系统功能结构设计系统的功能模块如下图所示:网络考试系统完整功能结构,如图1所示。3.2 模块简介网络考试系统是一个功能完善的网络应用程序,由前台学生登录考试、学生注册、找回密码和后台管理二部分组成。 前台功能模块前台页面窗口主要包括登陆前台和后台的主页、选择考试课程、课程相关的套题、准备考试、开始考试、查询考试成绩和退出系统。 学生注册功能模块学生注册页面只是单一的学生资料注册窗口。 密码找回功能模块密码找回页面也只是单一的密码找回窗口。 后台功能模块后台页面窗口主要包括系统管理员资料查询、添加、修改、删除,注册学生资料查询、删除,专业信息查询、添加、修改、删除,课程信息查询、添加、修改、删除,套题信息查询、添加、修改、删除,考生成绩查询、删除,考试题目查询、修改、删除,添加试题及退出系统管理等功能。33. 数据库的设计数据表结构以下是我做网络在线考试系统的一些数据表 这些表的内容包括管理员权限、学生注册、课程编辑、专业编辑,试题添加、考试结果等 已经标注每个语句的含义表1 tb_Administrator的结构列名数据类型长度主键否功能描述IDbigint8是系统管理员编号Namevarchar50否管理员名称PWDvarchar50否管理员密码JoinTimedatatime8否加入时间表2 tb_Lesson的结构列名数据类型长度主键否功能描述IDbigint8是课程编号Namevarchar60否课程名称ofrofessionbigint8否所属专业编号JoinTimedatatime8否加入时间表3tb_Profession的结构列名数据类型长度主键否功能描述IDbigint8是专业编号Namevarchar200否专业名称JoinTimedatatime8否加入时间表4t b_Questions的结构列名数据类型长度主键否功能描述Idbigint8是试题编号que_subjectvarchar50否试题主题que_typechar10否试题类型que_joindatedatetime8否试题加入时间que_lessonidint4否所属课程号que_professionidint4否所属专业号que_taotiidbigint8否所属套题编号optionAvarchar50否选项AoptionBvarchar50否选项BoptionCvarchar50否选项CoptionDvarchar50否选项Dque_answerchar10否试题答案notevarchar50否注释表5tb_Student的结构列名数据类型长度主键否功能描述IDvarchar50是学生证号Namevarchar20否学生姓名PWDvarchar20否学生密码Sexvarchar2否性别JoinTimedatetime8否加入时间questionvarchar50否密码问题answervarchar50否密码答案professionbigint8否所选专业号IPAddresschar30否IP地址表6tb_Student的结构列名数据类型长度主键否功能描述res_idbigint8是试题结果编号stu_idvarchar50否所属学生编号which_lessonvarchar50否所属课程名称taotiidbigint8否所属套题编号taotinamevarchar50否所属套题名称res_singleint4否单选成绩res_moreint4否多选成绩res_totalint4否总成绩res_subdatedatetime8否成绩提交时间表7tb_TaoTi t的结构列名数据类型长度主键否功能描述IDbigint8是套题编号Namevarchar50否套题名称LessonIDbigint8否所属课程编号JoinTimedatetime8否加入时间第四章 系统详细设计和实现41 后台登录模块设计后台登录模块为本网络考试系统的主要页面,操作者可从此页面登录前台学生考试页面、学生注册页面、密码找回页面或后台管理员页面。登录前台考试页面及后台管理员页面必须通过验证用户名、密码和验证码正确与否,只有合法的用户才可以进入系统。当用户没有输入用户名或密码以及验证码为空时,系统会自动弹出“不允许为空”的消息提示框。“登录”按钮左侧的复选框功能为是否选择管理员登录,选中则登录后台管理员页面,反之登录为前台学生考试页面,后台登录页面运行效果 如图1所示。图1 后台登录模块4.2前台页面设计网站后台登录可以通过VS2005工具箱中“登录”选项卡内的“Login”组件设计而成,也可以自定义设计登录窗口。本系统登录窗口为自定义设计窗口,设计组件主要有“HTML”选项卡中Table组件用于布局页面、“标准”选项卡中3个TextBox控件、4个Label控件 、3个Button控件和一个CheckBox控件,这些控件具体信息及用途如表所示。、 前台页面用到的控件及用途工具箱组件名称数量用途HTMLTable1布局页面标准CheckBox1验证管理员登录标准Button3登陆/注册/忘密标准TextBox3录入登陆用户名/密码/验证码标准Label4用户名/密码/验证码/显示验证码控件的属性设置,可以通过前台代码实现,也可以在“控件属性”对话框中的设置实现,本页中使用的控件属性设置请参见如下代码:<table> <tr> <td align="right" style="width: 443px; height: 233px"> </td> <td style="width: 121px; height: 233px"> </td> <td align="left" style="width: 114px; height: 233px"> </td> </tr> <tr> <td align="right" style="width: 443px"> <ASP.NET:Label ID="labUserName" runat="server" Font-Size="9pt" Text="用户名"></ASP.NET:Label></td> <td style="width: 121px"> <ASP.NET:TextBox ID="txtUserName" runat="server" Width="120px"></ASP.NET:TextBox></td> <td align="left" style="width: 114px"> <ASP.NET:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="txtPwd" Display="Dynamic" ErrorMessage="请输入密码!"></ASP.NET:RequiredFieldValidator> <ASP.NET:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtUserName" Display="Dynamic" ErrorMessage="请输入用户名!"></ASP.NET:RequiredFieldValidator></td> </tr> <tr> <td align="right" style="width: 443px; height: 37px"> <ASP.NET:Label ID="labPwd" runat="server" Font-Size="9pt" Text="密码"></ASP.NET:Label></td> <td style="width: 121px; height: 37px"> <ASP.NET:TextBox ID="txtPwd" runat="server" TextMode="Password" Width="120px"></ASP.NET:TextBox></td> <td align="left" style="width: 114px; height: 37px"> </td> </tr> <tr> <td align="right" style="width: 443px; height: 19px"> <ASP.NET:Label ID="Label4" runat="server" Font-Size="9pt" Text="验证码"></ASP.NET:Label></td> <td style="width: 121px; height: 19px"> <ASP.NET:TextBox ID="txtValidate" runat="server" Width="76px"></ASP.NET:TextBox> <ASP.NET:Label ID="labValidate" runat="server" BackColor="#C0C0FF" ForeColor="Red" Text="Label"></ASP.NET:Label></td> <td align="left" style="width: 114px; height: 19px"> <ASP.NET:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="txtValidate" Display="Dynamic" ErrorMessage="请输入验证码!"></ASP.NET:RequiredFieldValidator></td> </tr> <tr> <td align="right" style="width: 443px"> <ASP.NET:CheckBoxList ID="cblAdminLog" runat="server" Font-Size="8pt"> <ASP.NET:ListItem>管理员登陆</ASP.NET:ListItem> </ASP.NET:CheckBoxList></td> <td style="width: 121px"> <ASP.NET:Button ID="btnLogin" runat="server" Font-Size="9pt" Text="登录" OnClick="Button1_Click" /> <ASP.NET:Button ID="btnZhunce" runat="server" CausesValidation="False" Font-Size="9pt" OnClick="Button2_Click" Text="注册" /> <ASP.NET:Button ID="btnPwd" runat="server" CausesValidation="False" Font-Size="9pt" OnClick="Button3_Click" Text="忘密" /></td> <td rowspan="1" style="width: 114px"> </td> </tr> </table>4.3后台代码系统登录模块主要用于验证用户登录系统时输入的用户名、密码和验证码是否正确,在处理登录页面提交的数据时,首先会根据“管理员”复选框的值来判断是否登陆管理员页面,此功能代码首先if- else语句判断复选框CheckBoxList1控件是否被选中,如果被选中则执行核对用户名、密码和验证码而进入管理员页面,反之则会执行另一段代码,以验证非管理员登录信息,而进入学生考试页面,处理代码如下所示:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class Default : System.Web.UI.Page Datacon dataconn = new Datacon(); protected void Page_Load(object sender, EventArgs e) Session"StuName" = this.txtUserName.Text; if (!IsPostBack) Random rnd = new Random(); /生成验证码 this.labValidate.Text = rnd.Next(1000,9999).ToString(); /=找回密码= protected void Button3_Click(object sender, EventArgs e) Page.Response.Redirect("InfoPwd.ASP.NETx"); /=新学生注册= protected void Button2_Click(object sender, EventArgs e) Page.Response.Redirect("zhuce.ASP.NETx"); /=登录按钮= protected void Button1_Click(object sender, EventArgs e) if (txtValidate.Text != labValidate.Text) Response.Write("<script lanuage=javascript>alert('验证码错误');location='javascript:history.go(-1)'</script>"); else if (cblAdminLog.Items0.Selected = true) this.getcom(1); else this.getcom(2); /=登录控制= private void getcom(int i) SqlConnection con = dataconn.getcon(); con.Open(); SqlCommand com=con.CreateCommand(); switch (i) case 1: com.CommandText = "select count(*) from tb_Administrator where Name='" + txtUserName.Text + "' and PWD='" + txtPwd.Text + "'" int count1 = Convert.ToInt32(com.ExecuteScalar();/获取SQL语句的值 强制转换成数值类型 if (count1 > 0) Application"Name" = txtUserName.Text;/成功 Application"PWD" = txtPwd.Text;/成功4.4后台管理页面本系统的后台管理主要有:管理员、学生、考试题目、专业和课程信息的添加、删除和修改等操作,由于这些信息的执行操作大致是相同的,所以我们在这里主要介绍管理员信息的各种操作。管理员信息设置模块包括管理员信息列表、查询管理员、添加管理员、修改管理员信息和删除管理员5部分功能,要实现这些功能,运行效果如图2所示。 输入查询关键字图2 管理员页面的设计结果4.5学生注册学生注册是为了保存学生的基本信息。包括学生证号、学生姓名、密码、密码问题、问题答案、性别和所学专业。所学专业通过DropDownList控件列出,供学生选择。学生注册页面的设计页面如图5所示。图3 学生注册4.6找回密码很多情况下,学生会将密码遗忘或丢失,这样就无法登录自己的学生帐号,为了避免造成不必要的损失,笔者设计了找回密码的功能。找回密码主要分为三个页面来完成。页面一:输入已注册的学生证号;页面二:系统会根据输入学生证号把相应的密码问题列出来,然后输入问题答案;页面三,如果问题答案正确,则成功找回密码。忘记密码三个页面的设计结果分别图4 忘记密码1图5 忘记密码2图6 忘记密码3实现密码找回功能的代码很简单,主要是判断输入的学生证号是否存在,以及该学生的密码提示问题和密码答案是否正确。在页面一中,需要输入学生证号,系统会自动核对其是否存在,实现代码如下: Datacon