网上考试系统设计毕业论文.doc_第1页
网上考试系统设计毕业论文.doc_第2页
网上考试系统设计毕业论文.doc_第3页
网上考试系统设计毕业论文.doc_第4页
网上考试系统设计毕业论文.doc_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河南理工大学毕业设计(论文)说明书网上考试系统设计毕业论文目录1 前言12 技术支持32.1 B/S(Browser/Server)模式32.2 ASP.NET42.3 IIS(Internet Information Services)简介93 系统设计103.1 需求分析103.1.1 系统功能分析113.1.2 系统性能分析123.2 前台设计123.2.1 界面设计目标123.2.2 界面设计思路133.3 后台设计133.3.1 系统总体设计133.3.2 子系统设计143.3.3 公用模块设计233.4 数据库设计243.4.1 数据库概念设计243.4.2 数据库物理结构设计274 系统实现314.1 系统网络实现314.2 系统数据库实现334.3 系统前台实现364.3.1 学生子系统364.3.2 教师子系统394.3.3 管理员子系统404.3.4 公共模块414.4 系统功能实现465 小结与展望515.1 小结515.2 展望51致谢53参考文献54541 前言随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是网上考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行网上考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。网上考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的网上考试系统可以使用户在网上学习过后及时检验自己的学习效果,以发现自己的不足,使得学习效率得到很大提高。网上考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来.目前,网络应用软件运行的模式主要有二类:Client/server模式,Browser/Web模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是Web Server ,而Web Server与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护简便。另外,考试系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。基于上述考虑,用Browser/Web模式来设计考试系统比较合适,服务器端我们采用Access数据库系统和ASP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用Active Server Page技术,我开发了基于B/S模式多用户在线考试系统这一程序。它运用方便、操作简单,效率很高(同时,它要求计算机配置也很高,尤其是服务器端)。现阶段虽只实现了试卷的客观题部分,但已具有用户在线考试、动态选择试题、时间控制、自动判卷,试题录入、修改题库、用户管理、试卷管理、分数管理等重要功能,也就是说实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题、出题和判卷等繁重的工作量。2 技术支持为了实现系统,需要用到一些必备的知识。以下分节介绍了网络考试系统设计的一些相关理论知识。2.1 B/S(Browser/Server)模式A、 B/S模式简介随着Internet和WWW的流行,以往的主机/终端和C/S都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。B/S模式最大特点是:用户可以通过WWW浏览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。客户端除了WWW浏览器,一般无须任何用户程序,只需从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。B、 B/S模式的优点和缺点a、 B/S结构的优点(1) 具有分布性特点,可以随时随地进行查询、浏览等业务处理;(3) 业务扩展简单方便,通过增加网页即可增加服务器功能;(4) 维护简单方便,只需要改变网页,即可实现所有用户的同步更新;(5) 开发简单,共享性强。b、 B/S 模式的缺点(1) 个性化特点明显降低,无法实现具有个性化的功能要求;(2) 操作是以鼠标为最基本的操作方式,无法满足快速操作的要求;(3) 页面动态刷新,响应速度明显降低;(4) 无法实现分页显示,给数据库访问造成较大的压力;(5) 功能弱化,难以实现传统模式下的特殊功能要求。2.2 ASP.NET A、 ASP.NET简介ASP.Net是建立在微软新一代.Net平台架构上,利用普通语言运行时(Common Language Runtime)在服务器后端为用户提供建立强大的企业级Web应用服务的编程框架。ASP. NET 不是ASP 的简单升级, 它是一种Web 开发平台, 它提供了创建Web 应用程序所需的服务。虽然ASP. NET 在语法上与ASP 兼容,但它不支持一个新的开发架构, 在此之上开发人员能够创建功能非常强大而且灵活的Web 应用程序。ASP. NET 程序和ASP 程序可以共同存于一Web 站点。当ASP 网页被请求时, IIS 会启动ASP. dll 来执行ASP 网页, 而当ASP. NET 被请求时, IIS 则会启动xspwp. exe 来执行ASP. NET 网页, 两者的执行文件不同。对于ASP 程序, 开发人员只需将扩展名. asp 修改为. aspx, 便可将其原来的文件迁移到ASP. NET 框架中。a、 ASP.Net的主要优点 ASP.Net可完全利用.Net架构的强大,安全,高效的平台特性。ASP.Net是运行在服务器后端编译后的普通语言运行时代码,运行时早绑定(Early Binding),即时编译,本地优化,缓存服务,零安装配置,基于运行时代码受管与验证的安全机制等都为ASP.Net带来卓越的性能。对XML,SOAP,WSDL等Internet标准的强健支持为ASP.Net在异构网络里提供了强大的扩展性。 b、 ASP.Net主要内容ASP.Net主要包括WebForm和WebService两种编程模型。前者为用户提供建立功能强大,外观丰富的基于表单(Form)的可编程 Web页面。后者通过对HTTP,XML,SOAP,WSDL等Internet标准的支持提供在异构网络环境下获取远程服务,连接远程设备,交互远程应用的编程界面。B、 ASP. NET 的工作原理(1)ASP. NET 的执行方式: 当Web 服务器接收到一个对某ASP. NET 页面的请求时, 如果这是对该页面创建后修改的第一次申请, 首先把该页面内容编译成MSIL 语言, 然后MSIL 再被编译成机器码加以执行。ASP. NET 页面被编译成MSIL语言后, 其执行代码一直存在于服务器的内存中,一直到该页面被修改。以后再对该ASP. NET 页面提出请求时, 不需要重新编译, 直接调用编译成的MSIL 语言执行即可。(2)MSIL 和JIT: MSIL 是介于高级程序语言( 例如VB) 及机器码之间的语言, 从MSIL 编译成机器码加以执行的速度很快。把MSIL 翻译成机器码的编译器称为JIT ( Juw t In Time) , 通过不同机器的JIT 编译器, MSIL 可以即时地被编译成不同的机器码, 然后在不同机器人中执行( 这意味着MSIL 能够跨平台执行, 但现在还没有完全实现) 。C、 ASP.Net与ASP的联系和主要区别 ASP.Net与现存的ASP保持语法兼容,实际上我们可将现有的ASP源码文件扩展名“.asp”改为“.aspx”,然后配置在支持ASP.Net运行时的IIS服务器的Web目录下,即可获得ASP.Net运行时的全部优越性能。 ASP.Net与ASP的主要区别在于前者是编译(Compile)执行,而后者是解释(Interpret)执行,前者比后者有更高的效率。实际上我们可以把ASP.Net的执行过程看做是编译后的普通语言运行时代码充当一个和前端浏览器和中间件用户交互的应用程序,它接受用户的请求,输出HTML流到客户端显示。除此之外,ASP.Net还可以利用.Net平台架构的诸多优越性能,如类型安全,对XML,SOAP, WSDL等Internet标准的强健支持。 D、 HTML Server Control和Web Server Control联系和区别HTML Server Control是为了和传统ASP保持兼容而开发的一类基于HTML静态页面的控件(如文本框,按钮),它们与这些控件一一对应,它们位于命名空间System.Web.UI.HtmlControls里。 Web Server Control 是专为下一代基于组件开发的.Net平台架构而量身定做的,它不仅包括具有传统HTML静态页面的控件等Web Server Control,它还包括有AdRotator,XML等功能强大的组件,更重要的是它为用户开发Web Server Control组件提供了强大,易用的技术底层支持。这将成为下一阶段ASP.Net开发的热点。它们位于命名空间System.Web.UI.WebControls里。E、 ASP.NET的主要内置对象总结(1)RequestRequest封装了客户端请求信息。Request的常见属性如表2-1所示。表2-1 Request的常见属性属性名值类型说明ApplicationPathString获取请求的资源在网站上的根路径ContentEncodingEncoding设置请求对象的编码CookiesHttpCookieCollection客户端发送到服务器的Cookie集合QueryStringNameValueCollection当前请求的查询字符串集合UrlReferrerUri获取用户由哪个url跳转到当前页面(2)ResponseResponse代表了服务器响应对象。每次客户端发出一个请求的时候,服务器就会用一个响应对象来处理这个请求,处理完这个请求之后,服务器就会销毁这个相应对象,以便继续接受其它客服端请求。Response常用属性如表2-2所示。表2-2 Response常用属性属性名值类型说明Charsetstring表示输出流的所使用的字符集ContentEncodingEncoding设置输出流的编码ContentLengthInt输出流的字节大小ContentTypestring输出流的HTTP MIME类型CookiesHttpCookieCollection服务器发送到客户端的Cookie集合OutputTextWriter服务器响应对象的字符输出流RedirectLocationstring将当前请求重定向Response常用方法如表2-3所示。表2-3 Response常用方法属性名返回值类型说明当前请求AppendCookievoid向响应对象的Cookie集合中增加一个CookieClearvoid清空缓冲区中的所有内容输出Closevoid关闭当前服务器到客户端的连接Endvoid终止响应,并且将缓冲区中的输出发送到客户端Redirectvoid重定向(3)SessionSession对象用来保存与特定用户相关的信息,Session中的数据保存在服务器端,在客户端需要的时候创建Session,在客户端不需要的时候销毁Session,使它不再占用服务器内存。前面说了服务器并不管客户端是否依然存在,因而它也无法确定客户端什么时间不再使用它,但是如果在客户端不再用的时候不及时销毁Session的话,服务器很快就会内存不足。为了解决这个问题,给Session加了一个生命周期,当服务器发现Session超过了它的生命周期,就会释放该Session所占用的内存空间。在中Session的默认生命周期是20分钟,也就是当我们在9:00的时候设置了一个Session,如果在9:20之前客户端没有任何请求,那么它的生命周期就到9:20分钟结束。但是一旦用户在9:19又向服务器发送了一个请求,那么这个Session现在的生命周期就是在当前时间的基础上再加上20分钟,也就是此时这个Session的生命周期是到9:39结束。Session具有以下特点: 、Session中的数据保存在服务器端; 、Session中可以保存任意类型的数据; 、 Session默认的生命周期是20分钟,可以手动设置更长或更短的间。假设我们要设置一个Session用来保存用户名,这个Session的名字是“UserName”,值是“zhoufoxcn”,代码如下:Session“UserName”=”zhoufoxcn”; 一个网站里用到Session的地方肯定不止一个,所以在设置和获取Session的时候通过Session的名在来操作,并且Session被设置成能存储任意类型的对象(即Object类型),所以获取Session的时候要根据设置的时候的实际类型进行响应的强制类型转换(当然如果在Session中存放像int/byte/short这样的数据类型,获取Session的值算是一种拆箱操作而不是强制类型转换),对于上面的Session,获取Session的值的代码如下:string username=(string)Session“UserName”;对于上面的代码,有个问题需要注意:当没有设置相应的Session或者Session因为超过生命周期而被销毁时,上面的代码有可能抛出异常。我们可以先判断是否存在指定名称的Session,如果不存在就不用获取了,仅当存在的情况下才获取Session的值,上面的代码可以改进如下:string userName;.if(SessionUserName!=null)当指定名称的Session存在时,获取指定Session的值 userName=(string)SessionUserName;F、 HTML超文本标记语言HTML文档的基本结构 a、 HTML结构标记 HTML文档都是由HTML标记构成的,一个基本的HTML文档通常包括以下三对顶级标记。(1) HTML标记(2) 头部标记 (3) 主体标记b、 表格标记在页面中,表格常常用于组织信息,也用于页面布局。表格标记由一组标记组成,结构如下: 表格标题 列标题列标题 单元格内容单元格内容 单元格内容单元格内容c、 表单标记表单的作用是从用户端收集信息,然后将这些信息提交给服务器进行处理。表单可以包含允许用户进行交互的各种控件,如按钮、复选框、文本框、列表框和单选按钮等。标记用于创建一个表单,即定义表单的开始和结束位置,在标记对之间的一切都属于表单的内容。创建表单的语法格式如下:2.3 IIS(Internet Information Services)简介IIS是Internet Information Services的缩写,是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着能发布网页,并且有ASP(Active Server Pages)、JAVA、VBscript产生页面,有着一些扩展功能。IIS支持一些有趣的东西,像有编辑环境的界面(FRONTPAGE)、有全文检索功能的(INDEX SERVER)、有多媒体功能的(NET SHOW)。其次,IIS是随Windows NT Server 4.0一起提供的文件和应用程序服务器,是在Windows NT Server上建立Internet服务器的基本组件。它与Windows NT Server完全集成,允许使用Windows NT Server内置的安全性以及NTFS文件系统建立强大灵活的Internet/Intranet站点。IIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。在同一时间内允许打开的网站页面数,打开一个页面占一个IIS,打开一个站内框架页面占2到3个IIS,若图片等被盗链,在其它网站打开本站图片同样占一个IIS。假若设置参数为50个IIS,则这个站允许同时有50个页面被打开。但要在同一时间(极短的时间)有50个页面被打开,需要50个人同时操作,这个概率还是比较低的。所以,100个IIS支持日IP1000(同时访问网站人数必定远低于1000人)以上都不是很大问题,除非网站被盗链或框架引发其它消耗。3 系统设计系统的实现离不开一个完善的设计。从需求分析得出系统的功能要求,分析出系统的功能模块。接着进行系统设计和数据库设计,为系统搭建一个框架模型,为系统的实现打下了基础。3.1 需求分析在当今信息时代,计算机技术与网络技术越来越广地应用于各个领域,改变着人们的学习、工作、生活乃至思维方式,也引起了教育领域的重大变革。将计算机与网络技术应用于现代教育中,是现代教育发展的需要,也是改革教育模式,提高学校教学效果和教学效率、提高科研和管理水平的必要手段。目前的一个发展趋势是采用大规模试题库的计算机网络考试模式随着计算机网络在生产生活、科技教育中的普及,传统试的考试出卷、答卷方式以及学绩管理正发生着巨大的变革,因此,如何使考试过程变得方便、高效、快捷、公正,是现代教育的一个重要课题。网络考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。因此网络考试系统是电子化教学不可缺少的一个重要环节。有趋势表明,考试的标准化、计算机网络化已当今考试的发展方向,当前国际上许多考试认证,例如GRE、CISCO,其出题、答卷以及评分都是在计算机上完成的。无纸化的考试形式有着其科学、及时、准确、公平等优点,具有传统考试形式无法替代和比拟的优势。在大学的期间,所有的考试都是传统的纸质试卷式的考试。为适应现在网络飞速发展的趋势,提高教学效率,考察河南理工大学的教学模式,总结了适用于河南理工大学的网络考试系统的系统需求。网络考试系统依据面向的用户共分三大模块,学生模块,教师模块,管理员模块。学生的需求分析:查看、修改个人信息,修改密码,在线考试,查看测试结果,查看公告等。教师的需求分析:查看、修改个人信息,修改密码,试题管理,查看授课及学生测试结果,查看公告等。管理员的需求分析:对学生,教师信息的管理,发布系统公告等。3.1.1 系统功能分析A、 分模块功能概述a、 学生(1)个人信息维护(2)在线考试(3)我的考试(4)公告板b、 教师(1)个人信息维护(2)试题信息维护(3)考试情况查看c、 管理员(1)学生信息管理(2)教师信息管理(3)管理员信息管理(4)公告信息维护 B、 系统的主要功能(1)题库管理:任课教师根据教学计划参与所任课程的试题库的管理。能够按照科目查询试题,增加、删除、修改试题。(2)试卷管理:任课教师命制所任科目的试卷,供参加课程修习的学生参加统一的测评考试。教师可以查看、修改、增加、删除试卷信息。试卷的组成:试卷由四种类型的客观题目组成,分别是单选、多选、判断、填空,每种类型有五到试题,每题五分,一套试卷共100分。教师按照此种试卷模型进行试题命制。(3)在线考试:学生按照学号、密码获取系统权限,进行验证成功之后进入系统参加考试。考试类型分为两种,学期测试和自我测试。学期测试是统一进行的学期课程考核,由教师统一组织,在规定的时间,规定的地点进行考试。考试的试卷由教师统一命制,此种考试用来得到学生的学期学习成绩。另一种是自我测试,系统随机从试题库中抽取试题,组成一套试卷,每个人每次做的试卷可能是不一样的。此种考试用来让学生课下根据自己的时间练习用的。可以在自己的客户端,不必到指定的考试机房,可以随时进行测试练习。(4)考试结果查询:对于学生,考试结束之后可以查看自己的考试成绩、考试排名、测评等级等,用以了解自己的测试水平。对于教师,可以查看自己的学生的考试成绩。可以根据学号、科目等条件查询符合条件的考试成绩,可以统计学生的考试结果,查看学生的排名等。(5)用户信息管理:对系统用户权限及信息的管理。(6)个人信息管理:登陆用户对本人信息的管理。3.1.2 系统性能分析(1)可靠性:网上考试系统面对不同的用户,特别是多用户同时通过Internet访问系统时,一旦服务器因阻塞或其他问题而崩溃,则会带来很大的麻烦和问题。另外服务器的及时响应也是衡量服务质量的重要指标,太长的延迟时间会给用户带来不便。因此,可靠性是网上考试系统的基本要求。(2)安全性:安全性是任何系统成功的基本要素。系统应该能够保护数据或基础结构免受恶意攻击或盗用,通过为用户信息的机密性、完整性和可靠性提供充分的保护来预防风险,保障系统安全运行。(3)可扩展性:可扩展性是指系统能够保证可持续增长以满足用户需求和业务复杂性要求。基于WEB的系统一般是动态变化的模型,它们通常刚开始很小,但随着需求的增长而呈指数级的增长。这种增长非常迅速,不仅表现在支持用户的数量上,而且表现在提供给用户服务的复杂性和集成性方面。对于网上考试系统而言,这种扩展性显得尤为重要,系统需要随着用户的要求和技术的发展不断改进,所以可扩展性非常必要。3.2 前台设计3.2.1 界面设计目标本系统要求界面友好,操作方便。(1)界面色彩要求:作出恰当的色彩搭配,使用户在较长时间使用后不至于过于感到视觉疲劳为宜。例如轻松的淡彩为主配色,灰色系为主配色等等。切忌色彩过多,花哨艳丽,严重妨碍用户视觉交互。(2)界面平面版式要求:系统样式排版整齐划一,尽可能划分不同的功能区域于固定位置,固定的格式,方便用户导航使用;排版不宜过于密集,保留一定的“留白”区域,减轻查看时的视觉疲劳。(3)数据显示集中原则:各种列表在页面中往往是传递信息的核心,尽量集中的表现出来,并提供必要的关联数据、表等恰当的组织起来,并且在视觉上使用户很容易察觉数据之间的关系,并方便查看、编辑等;冗长拖沓的数据组织形式可能给用户带来非常低的维护效率。(4)主次分明原则:页面中同时分布较多栏目的情况下,按照页面(Flow)的伸展方向,即由上到下,有左到右,根据浏览的方向,重要的内容应该在左边最易注意的位置,导航等置于页面头部固定位置。使导航等重要内容始终处于用户的视野(Sight)之中.页面右边一般是一些当前页面主要操作的扩展、选项等内容。3.2.2 界面设计思路基于在线考试系统的性质,面向的用户主要是教师学生。系统的前台风格应为简洁、干净、布局合理。(1) 色彩以淡蓝色为色彩基调。(2) 页面布局为上下结构,主要分为菜单栏和操作栏。3.3 后台设计3.3.1 系统总体设计A、 系统结构网络考试系统要能实现完善的考试功能,必然是离不开后台数据库的支持,界面显示和对数据库数据的读写紧密相关。网络考试系统的系统架构如图3-1所示。图3-1 系统架构图B、 系统模块系统面向的用户为三类:学生、教师、管理员,按照用户的功能区分,因而系统分为三个子系统。系统总体的模块划分如图3-2所示。图3-2 系统总体模块图3.3.2 子系统设计A、 学生子系统(1)系统功能学生是网络考试系统的主体,要求系统有信息管理和在线考试等完善的功能,将各功能模块细分,得出了学生子系统的模块图。个人信息:该模块是对登陆学生用户的信息维护,包括登陆信息的查看、修改,密码的修改。密码的修改需要原密码的支持。在线考试:这是学生考试系统的核心,支持学生进行在线考试。进入考试主页面之后显示考生修习的课程,选择科目后开始考试。考试模式分为两种:学期测试和自我测试。学期测试是需要参加考试学生统一参加的考试,有指定的开考时间、考试用时,在指定的机房内进行考试。所有参加同一次考试的学生会做同一份试卷,答题结束之后,录入数据库中,作为本门科目的学期测评成绩。自我测试是考生平时自我练习之用,时间地点比较灵活,不会进行限制,试卷是由系统从相关试题库中随机生成,答题结束之后录入自测考试数据库,记录考生的练习情况。我的考试:这个模块用于查看学生的考试结果情况。相对应于在线考试的两种考试模式,也是分为两种考试结果查看模式。学期测试查看学期测试的考试结果,显示测评分数,也可以查看选中课程的排名情况、平均成绩等。自我测试显示自我测试的考试结果,显示选中课程的平均成绩,测评等级等。学生子系统模块结构如图3-3所示。图3-3 学生子系统模块图(2)系统流程子系统页面操作根据设计的功能有一定的操作流程来实现相关的功能。将学生子系统各个功能模块与系统的主菜单项对应起来,形成了系统的主菜单。学生系统流程是按照划分的系统功能而形成的系统操作流程,表示了系统页面的设计顺序。系统流程图说明了如何将功能模块具体分布到页面实现,为了用户操作提供了说明,也是系统设计的依据。图3-4 学生子系统主流程图(3)模块流程考试模块是学生子系统一个重要的模块,也是网络考试系统的一个核心模块。点击进入考试模块后,显示登陆学生选修的科目信息,选择科目开始考试。考试类型分为两种,学期测试和在线测试。学期测试是用来学期测评的,授课教师选出试题形成试卷,考试结束后得到该门课程的学期测试成绩。在线测试则是学生自己练习用的,系统随机生成试卷。图3-5 在线考试模块流程图B、 教师子系统(1)系统模块由需求分析教师所需要的功能,设计出教师的功能模块结构。教师的功能模块结构如图3-6所示。图3-6 教师子系统模块图(2)系统流程教师子系统的总体操作流程图如图3-7所示。图3-7 教师子系统流程图(3)模块流程我的试题列表显示登录教师用户所录入的试题,录入的试题按照教授课程的不同分别显示。对自己录入的试题可以查看,编辑,删除,可以添加试题。我的试题模块操作流程图如图3-8所示。图3-8 我的试题流程图C、 管理员子系统(1)系统模块依据需求分析管理员拥有的功能,设计出管理员子系统的模块图。管理员子系统的模块结构如图3-9所示。图3-9 管理员子系统模块图(2)模块流程学生基本信息对学生基本信息管理的功能模块的流程图如图3-10所示。图3-10 学生基本信息维护流程图3.3.3 公用模块设计在本系统中,有三个子系统可以共用的模块。任何身份的用户都要通过登录界面,输入用户名、密码,通过系统数据库验证进入相应的子系统内。各个子系统都支持密码修改的功能,密码修改模块也作为了一个公共模块进行设计。(1)登录模块用户登录的操作流程图图3-11 用户登录操作流程图3.4 数据库设计3.4.1 数据库概念设计数据库概念设计主要分析出系统需要的各个实体,以及实体之间的关系。据此设计系统需要的实体E-R图。首先分析整个系统各个实体和实体之间的关系,得到系统整体模型E-R图。从一个整体的角度说明了各个实体和实体之间的关系。各个实体和实体间的关系说明如图3-12所示。图3-12 系统整体模型E-R图考试系统的主角是学生。系统需要记录学生的个人信息,这里学生实体主要包括学号、姓名、性别等属性,选择了几个比较重要的信息进行保存。图3-13 学生实体E-R图学生、教师、课程之间的关系:选授课的关系。选授课关系将学生、教师、课程联系起来,说明他们之间的联系,主要有学号、课程号、教师号、成绩等属性。图3-14 选授课关系实体E-R图考试系统必然要花费一部分的存储在试题上。数据库需要存储试题的题目、答案等信息。选择题实体主要包括试题号、课程号、教师号、题目等属性。这几个属性将选择题的主要信息进行了存储,支持系统的考试功能。图3-15 选择题实体E-R图考试记录实体,主要属性包括学号、教师号、课程号,试卷答案信息,答案评分信息等。考试记录主要用于评判提交的试卷,得出分数,也便于考试情况查询。图3-16 考试记录表实体E-R图3.4.2 数据库物理结构设计数据库物理设计相关数据的存储,数据类型要根据数据库设计需要选择适合的数据类型。数据类型varchar(n)长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8000 之间的数值。存储大小为输入数据的字节的实际长度,而不是 n 个字节。nvarchar(n)包含 n个字符的可变长度 Unicode 字符数据。n 的值必须介于 1与4000 之间。字节的存储大小是所输入字符个数的两倍。根据各数据类型的不同,数据表中主要用到的数据类型为varchar(50),nvarchar(50)。根据上节的数据库概念设计,可以创建与实体对应的数据表。为了使读者对本系统的数据库的结构有一个更清晰的认识,下面给出数据库中所包含的数据表的结构图,如图所示。图3-17 数据库整体表结构图在三层BS体系下,数据库服务器作为逻辑上的一层单独列出。逻辑关系上的数据库服务器与业务逻辑服务器在物理的表现形式可以是两台独立的服务器,也可以是一台服务器。不同的逻辑层服务可架设到同一台物理服务器上。网络考试系统的数据库存在于逻辑意义上的数据库服务器中。数据库独立于程序而存在,安全性较高考生、试题、答案等信息都存放在数据库中。根据功能要求在SQL Server2008里创建数据库,建立各数据表。下边对主要的表进行介绍。(1) 学生表学生表用来存储学生的信息,该数据表的数据结构如表3-1所示。表3-1 学生表(2) 教师表教师表用来存储教师用户的信息,如表3-2所示。表3-2 教师表(3) 课程表课程表存储课程信息,如表3-3所示。表3-3 课程表(4)选授课表选授课表是本系统中比较重要的关系表,描述了三大主体学生、教师、课程之间的关系。选授课表如表3-4所示。表3-4 选授课表(4) 选择题表选择题表存储选择题信息,如表3-5所示。表3-5 选择题表(6)试卷表该表存储考试的试题信息,从该表中调取相应的试题就能够生成需要的试卷。试卷表如表3-6所示。表3-6 试卷表(6) 考试记录表考试记录表如表3-7所示。表3-7 考试记录表4 系统实现设计之后就是系统的实现,网络考试系统的网络实现,这是系统的基础。数据库按照数据库设计进行了实现。系统是分功能模块实现的,分别说明了个模块的实现效果。整个章节介绍了系统的详细实现。4.1 系统网络实现(1)进入Win7的控制面板,打开程序功能,选择打开或关闭Windows功能 。(2)在安装Windows功能的选项菜单,把Interlnet信息服务的所有组件全部勾起来。(3)安装完成后,打开控制面板,进入系统和安全,打开管理工具,点Internet信息服务(IIS)管理器。图4-1 打开Internet信息服务(IIS)管理器(4)打开IIS管理器,进入管理页面,展开右边的个人PC栏,右击网站添加网站,在出来的对话框中添加自己的网站名称、物理路径。网站名称设置为:Network Examination System,物理路径是网站网页资源的物理路径。要设置网站文件夹的安全项,添加一个Everyone用户,设置所有权限控制即可,最后点确定。图4-2 设置网站物理路径(5)双击IIS7中ASP,父路径是没有启用的,选择True开启。单击右侧的绑定.,可以设置网站的IP地址和端口。双击IIS7中的 默认文档, 设置网站的默认文档。图4-3 设置IP和端口图4-4 设置默认文档(6)在浏览器的地址栏里面访问自己的IP就可以打开刚才添加的网站。 4.2 系统数据库实现为了实现数据库数据的显示,需要对数据库链接并对数据绑定。系统中页面上数据库数据的显示,有一些公共的数据库操作代码,比如说连接数据库,SQL语句的执行,GridView控件的数据绑定。为了简化程序的结构,对这些公共的操作进行了封装,封装在一个叫做CommonClass的类里边。(1)数据库连接 public static SqlConnection DBCon() return new SqlConnection(server=PC-20100925XGLSSQLEXPRESS;database=网络考试系统数据库;Integrated Security=SSPI;UID=PC-20100925XGLSAdministrator;PWD=;); (2)执行SQL语句,形式参数是SQL语句字符串,函数执行传入的SQL语句。 public static void sqlExcute(string strSQL) SqlConnection conn; SqlCommand cmd; conn = DBCon(); conn.Open(); cmd = new SqlCommand(strSQL,conn); cmd.ExecuteNonQuery(); conn.Close(); (3)执行SQL语句,返回 SqlDataReader public static SqlDataReader sqlExcutiReader(string strSQL) SqlConnection conn; conn = CommonClass.DBCon(); SqlCommand cmd = new SqlCommand(strSQL, conn); conn.Open(); SqlDataReader myReader; myReader = cmd.ExecuteReader(); return myReader; (4)执行SQL语句,返回ExecuteScalar的字符串 public static string sqlExcuteScalar(string strSQL) string str; SqlConnection conn = CommonClass.DBCon(); conn.Open(); SqlCommand cmd = new SqlCommand(strSQL, conn); str = cmd.ExecuteScalar().ToString(); conn.Close(); return str; (5)gridview控件绑定数据,控件数据源来自SQL语句。形式参数是控件名和SQL语句。 public static void gridDataBind(GridView gridView, string strSQL) string connString = Data Source=PC-20100925XGLSSQLEXPRESS;Initial Catalog=网络考试系统数据库;Integrated Security=True; SqlConnection con = new SqlConnection(connString); SqlDataAdapter dr = new SqlDataAdapter(strSQL, con); DataSet ds = new DataSet(); dr.Fill(ds); gridView.DataSource = ds.Tables0; gridView.DataBind(); (6)为dropdownlist控件设置数据源 public static void dropdownlistDataBind(DropDownList dropdownlist,string strSQL,string colName) SqlConnection conn = CommonClass.DBCon(); conn.Open(); SqlCommand cmd = new SqlCommand(strSQL, conn); SqlDataReader myReader; myReader = cmd.ExecuteReader(); while (myReader.Read() dropdownlist.Items.Add(new ListItem(myReadercolName.ToString(); conn.Close(); /不要忘记关闭myReader myReader.Close(); 4.3 系统前台实现4.3.1 学生子系统学生登陆成功后进入学生子系统,子系统的首页显示登陆学生的个人信息。可以在主页面对显示的个人信息进行修改。学生子系统的主页面如图4-5所示。图4-5 学生子系统主页面考试主页面显示登录学生学习的课程,学生可以从下拉列表中选择进行考试的科目,然后选择进行考试的方式:学期测试或在线测试。点击相应的按钮参加相应的考试。图4-6 考试主页面点击学期考试,显示考试须知页面。图4-7 考试须知页面进入考试系统开始考试之后,会在页面上显示试卷的题目。试题类型分为四种,考试页面的上方有试卷题型的按钮,点击相应题型则在页面显示试卷上对应的题型。考生可以自由选择题型进行答题。图4-8 考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论