完整版基于ASP的在线考试系统的设计与实现本科毕业设计.docx
《完整版基于ASP的在线考试系统的设计与实现本科毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版基于ASP的在线考试系统的设计与实现本科毕业设计.docx(48页珍藏版)》请在冰豆网上搜索。
完整版基于ASP的在线考试系统的设计与实现本科毕业设计
基于ASP的在线考试系统的设计与实现
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
基于ASP的在线考试系统的设计与实现
摘要:
高校的扩招,老师的组织考试的工作量越来越大,随着社会的发展,计算机Internet技术也是在日新月异的发展变化,并且随着网络技术在教育领域应用,考试系统体现出越来越多的优越性。
因此,我们利用Microsoft公司提供的VisualStudio2005软件编程平台,采用B/S体系结构,利用C#技术,设计一个考试系统,分为三个模块:
管理员、教师和学生,其中管理员功能包括学生信息管理、教师信息管理、试题信息管理、科目信息管理、考试结果管理和管理员信息管理,教师功能包括试题信息管理、考试结果管理和个人信息维护,学生只可以答题。
该系统可以动态地管理各种考试信息,可以按照要求自动生成各种试卷,便于教师的考试教学,方便广大师生学习交流。
关键字:
在线考试,信息管理,ASP技术
TheDesignandImplementationofOn-lineExaminationSystemBasedonASP
Abstract:
Withtheexpandenrollmentoftheuniversity,theteachers'worktoorganisetheexaminationismoreandmoreheavily.Withthedevelopmentofthesociety,thecomputerInternettechnologyisalsodevelopedandchangedrapidly.AndwiththeapplicationofInternettechnologyinthefieldofeducation,theexaminationsystembecomemoreandmoresuperiority.
Therefore,weuseMicrosoftVisualStudio2005compilerplatformprovidedbyMicrosoft,B/SsystemstructureandC#technologytodesignthistestsystem.Dividedintothreemodules:
administrator,teacherandstudent,amongthemadministrator’sfunctionsincludesstudentinformationmanagement,teacherinformationmanagement,questionsinformationmanagemet,subjectsinformationmanagement,examinationresultsinformationmagamentandadministratorinformation,teacher’sfunctionsincludesquestionsinformationmanagement,
examinationresultsinformationmagamentandpersonalinformation,andstudentonlycananswer.
Thesystemcandynamicallymanageallkindsoftestinformation.itcanfollowtherequirmentsautomaticallytogenerateallkindsoftestpapers.Withthissystemtheteacherscanteachandtesttheirstudentsmoreeasilyandcanlearnandcommunicatewithstudentsmoreconvenience.
Keywords:
On-lineExamination,informationmagament,ASPtechnology
前言
随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网路实现异地教育和培训。
现在,计算机硬件技术的发展已经达到了相当高的水平。
但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件人员提出了更高的设计要求。
远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。
其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。
在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分繁琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
随着计算机应用的顺猛发展,网络应用不断扩大,如远程教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。
人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公正、客观、更加激发学生的学习兴趣。
在线考试系统采用传统的客户机/服务器模式(C/S)架构,即试题内容放在远程服务器上,在考试机上安装考试应用程序和数据库客户配置。
从安全性和易维护性考虑,选择了WEB实现技术,简单的说,就是将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于服务器上的试题以及对系统进行远程维护。
本文通过五个章节的阐述,介绍了基于ASP的在线考试系统的设计与实现。
本文的概述主要介绍了课题的意义、目的,主要研究的内容和研究方案。
本文第二章中进行了系统的需求分析,第三章中对系统的详细设计进行了介绍,第四章详细描述了系统的实现,第五章对系统测试。
第1章概述
1.1课题的意义、目的
在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着改革,而网络考试则是一个很重要的方向。
基于ASP技术的在线考试系统是传统考场的延伸,加上数据库技术的应用,大大简化了传统考试的过程。
因此在线考试系统是电子教学不可缺少的一个重要环节。
考生可通过姓名、准考证和口令进行登录,试卷可根据题库中的内容即时生成,可避免考前的压题,体现了对考生公平性;而且可以使用大量标准化试题,从而使用计算机判卷,体现了答案的安全性,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作,因此,采用在线考试系统将是以后考试发展的趋势。
基于ASP的在线考试系统采用传统的客户机/服务器模式(C/S)架构,即试题内容放在远程服务器上,在考试机上安装考试应用程序和数据库客户配置。
从安全性和易维护性考虑,选择了WEB实现技术,简单的说,就是将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于服务器上的试题以及对系统进行远程维护。
1.2主要研究的内容
基于ASP的在线考试系统的体系结构主要有以下几大功能模块:
(1)提供登录管理界面,分别设有系统管理员、老师和学生登录。
(2)提供学生信息管理,对学生信息进行查询、修改、删除和添加操作。
(3)提供教师信息管理,对教师信息进行查询、修改、删除和添加操作。
(4)提供试题信息管理,对试题信息进行查询、修改、删除和添加操作。
(5)提供科目信息管理,可对考试科目信息进行添加操作。
(6)提供考试结果管理,可对考试结果进行查询和删除操作。
(7)教师登录后,可对试题基本信息进行添加、修改、查询及删除操作;同时对学生考试成绩进行查询及删除操作。
如果教师对现有的密码不满意,还可以修改自己的密码。
(8)学生只能进行考试答题操作。
1.3研究方案
1.采用的技术线路
系统采用B/S(浏览器/服务器)体系结构,数据库采用SQLServer2005,动态网页的开发使用ASP.NET技术,采用面向对象语言C#来编写程序。
2.系统整体规划
为了保障整个系统的安全性,在线考试系统实现了分类验证的登录模块,通过此模块,可以对不同身份的登录用户进行验证,确保了不同身份的用户操作系统。
在抽取试题上,系统使用随机抽取试题的方式,体现了考试的客观与公正。
当考生答题完毕之后,提交试卷即可得知本次考试的得分,体现系统的高效性。
在后台管理上,分后台管理员管理模块和试题管理模块。
分别适应不同的用户,前者只有系统的高级管理员才能进入,对整个系统进行管理。
而后者只允许教师登录,教师可以对自己任教的科目试题进行修改。
第2章系统分析
2.1需求分析
需求分析就是发现、求精、建摸、规格说明和复审的过程。
为了发现用户的真正需求,首先应该从宏观角度调查、分析用户所面临的问题。
也就是说,需求分析的第一步是尽可能了解当前用户的情况和需要解决的问题。
2.1.1功能需求分析
本系统的用户可分为管理员和普通用户两类。
本系统共分成两个界面:
一个界面用于管理员登录,主要负责进行基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于普通用户登录,主要负责在线考试、查询以往考试成绩等。
从总体上考虑,系统应该实现下列功能:
对管理员来说,包括试卷管理、题库管理、成绩管理。
(1)试卷管理:
管理员可以从课程,各种题型的数量等方面对某份试卷提出一定的要求生成试卷规则。
同时,管理员还可以对库中已有的试卷进行修改和删除,添加新试卷等。
(2)题库管理:
管理员可以对题库中的试题进行三种基本操作:
添加新的考题、删除旧有考题、修改原有考题,其中试题类型包括判断题、填空题、选择题;对于每种类型的试题,教师可以设置题干、答案等属性。
(3)成绩管理:
管理员可以查看考生的考试成绩,并针对不同的课程进行成绩统计。
(4)学生管理:
管理员可以对用户的资料进行查询、删除。
对普通用户来说,包括在线考试、查询以往考试成绩等。
(1)在线考试:
学生可以任选时间进行在线测试,考试结束后,系统会根据已有的标准答案进行在线判卷,考生可以立刻知道考试成绩。
(2)查询以往考试成绩:
学生可以在线查询以前参加过的每门课程的考试相关信息。
2.1.2数据库需求分析
针对一般考试系统的需求,设计如下所示的数据项和数据结构:
(1)管理员信息包括的数据项有:
管理员姓名、密码等。
(2)学生用户信息包括的数据项有:
用户名、密码、性别、班号、学号等。
(3)教师用户信息包括的数据项有:
用户名、密码。
(4)试卷信息包括的数据项有:
填空题分值、填空题数量、判断题分值、判断题数量、选择题分值、选择题数量等。
(5)选择题信息包括的数据项有:
单选题编号、题干、正确答案、备选项(A、B、C、D)等。
(6)成绩信息包括的数据项有:
考试科目、考生学号、考生姓名、成绩。
2.2可行性分析
实用性原则:
考试是学生学习和实践的一个重要环节,对此环节都依赖老师的个人管理,随着学生人数的增加以及对课题设计的要求提高,借助软件对此环节进行有效管理已势在必行。
经济性原则:
建立适合在线考试系统用户自身需求的平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活以满足需求,并确保其较好的拓展性和开放性;同时能够自主的对系统中大部分内容作更新、修改操作,节省了老师学生的宝贵时间,提高了信息更新、传播效率。
扩充性原则:
系统的整体规划及框架设计是具可扩充性的,系统在设计开发中充分考虑了移植、扩展的问题。
这是每个系统都要考虑的重要问题。
分层,细化模块可以很好的解决将来系统扩展中不改变基本架构的同时增加功能。
前台页面的设计能保证系统在更新后不会破坏系统的整体结构。
2.3技术分析
由于在本次毕业设计中将涉及网络技术、数据库技术等多种技术和程序开发语言,只有首先对所要涉及和使用到的每个技术和编程语言都有所了解,充分把握其技术优势,并且能够举一反三的灵活应用的情况下才能使这些技术更好的服务于物业管理服务系统的方案制定和开发中。
为了充分利用网络资源,越来越多的信息需要在(WorldWideWeb)上发布,实现信息最大程度的共享。
为了实现此目的,Web技术的应用已成为一种必然。
只有把浏览器/服务器与Web技术很好的结合,充分发挥各自诉优势,才能满足这种需要。
基于这种情况,微软提出WebComputing的概念,并把它应用于数据库技术中,这就是浏览器/服务器架构下的Web数据库体系。
这种数据库体系是利用Web服务器和ActiveServerPages(动态服务器网页,简称ASP)作为数据库操作的中间层,将浏览器/服务器架构与Web技术结合,使Web站点可以呈现出更多样化、更丰富的内容。
典型的Web数据库系统有一个Web浏览器作为用户界面,一个数据库服务器用作信息存储和一个连接两者的Web服务器,这是一个三层的Web结构。
用户使用Web浏览器访问Web页,通过Web页上显示的表格与数据库进行互操作。
典型的交互操作包括读取页、单击链接、列表框选择以及查询和输入数据域。
以数据库获取的信息能以文本、图像、表或多媒体对象的形式在Web页上显示。
浏览器/服务器架构下的Web数据库体系的优点:
1.用户方面
由于在前端采用了统一的浏览器界面,所以用户在使用时简单易用,只需要掌握一些简单的Web页面操作方法,大大降低了培训、维护成本。
2.系统的开发方面
整个软件的开发可以集中在服务器端进行,不需要对用户端进行特殊的设置和软件安装,降低了维护成本。
3.系统环境配置方面
前端可以使用多种浏览器(如IE/Netscape等);服务器端可存取多种数据库(SQLServer、Access、Foxpro等);完成前后端两者的集成输出的功能就由微软的IIS和ASP技术实现,且在ASP中可使用多种脚本语言(VBScript、JavaScript、PERL等)。
第3章系统的详细设计
3.1用户层的设计
项目实施之前,我们对用户的工作方式、业务流程和管理模式进行了比较详细的了解和细致的分析,从总体上进行把握,再就工作流程和需求等细节问题上进行多次的相互交流,并得到用户的认可。
为了便于管理和开发,对于整个系统来说,现在我们在集中形成的用户界面上体现的主要功能为:
用户登录模块、系统管理员模块、教师模块、学生模块、系统退出。
3.2系统功能的总体逻辑层次
在决定采用三层B/S结构来实现这个系统后,划分三层间的界线就成了关键性的问题,特别是划分应用层和数据层之间的界线关系到网络的流量、代码的重用和以后的业务逻辑的扩展及修改。
当然也关系到系统整体性能、伸缩性和易维护等方面。
系统整体架构设计如图3-2所示:
图3-2总体架构设计
(l)界面层提供给用户一个操作界面,通过界面层,用户输入数据、显示数据。
由于各项业务处理由权限不同的部门人员使用,对界面和功能的要求也不一,还有现在主要应用是建立在INTRANET上,因此当前的B/S界面由各有关的用户使用(系统管理员,教师,学生,系统管理员),可将其主要功能划分为若干独立应用程序模块。
(2)逻辑层(中间层、应用服务器)是系统设计的关键和难点。
在这里我们根据业务数据的相关性,划分成多个对象(每个对象是一个DComDatalnodule)。
这样,可以重复利用对象中的Provider和方法,减少冗余,层次清晰。
逻辑层主要封装各类应用的数据请求及处理SQL语句。
如果应用服务器很忙的话,即要处理的业务很多,还可以根据易于管理这个原则把相关的业务分到新的应用服务器上去,使得业务处理得到平衡。
(3)数据层采用大型MSSQLServer2005数据库系统,在这里还可根据业务规则编写触发器、部分业务处理存储过程等SQL语句。
这里所写的业务逻辑要考虑到服务器的处理事务的繁忙程度及业务逻辑实现的难易。
如果在应用层比较容易实现,那么最好放在应用层来实现,这样层次比较清楚。
3.3设计要求
3.3.1系统稳定性
在线考试系统的用户数随着学生的日益增大而越来越多,在线考试系统对于学校管理和学生实践工作至关重要。
那么在设计该系统时,很重要的一个问题就是系统的长期稳定运行。
我们对于系统的启动、运行和监控等各个环节可能出现的不稳定因素给予充分的考虑,以确保不影响单位的日常工作。
3.3.2数据的安全性
在线考试系统中的业务数据信息是非常重要的。
数据安全性是本系统需要着重考虑的另一个问题,要确保数据完整性和一致性,要确保数据经常性的备份,即使数据意外遭破坏,也要能及时恢复,而不能要人工把原始的大量的数据重新输入一遍。
因此要在技术上采取一定的技术手段和措施来保证数据的安全性。
3.3.3系统健壮性
在线考试系统需要长期稳定地运行,用户在日常的工作中要进行各种各样的操作,而操作水平参差不齐,难免会产生各种各样的误操作和错误,这就打破了本系统的正常运行流程,可能导致预想不到的后果。
因此,在本系统的设计过程中,我们将预先考虑各种各样的误操作及后果,采取相应的预防措施,确保不产生灾难性的后果,保证系统的健壮性。
3.4系统规划
在线考试系统由系统管理员模块、教师模块、学生模块3部分组成。
3.4.1系统功能结构图
在线考试系统模块3--1所示:
图3-1在线考试系统模块图
3.4.2数据流图
数据流图(DFD:
DataFlowDiagram)就是组织中信息运动的抽象,是信息逻辑系统模型的主要形式。
这个模型不涉及硬件、软件、数据结构与文件组织,它与对系统的物理描述无关,只是用一种图形及与此相关的注释来表示系统的逻辑功能,即所开发的系统在信息处理方面要做什么。
由于图形描述简明、清晰,不涉及到技术细节,所描述的内容是面向用户的,所以即使完全不懂信息技术的用户单位的人员也容易理解。
因此数据流图是系统分析人员与用户之间进行交流的有效手段,也是系统设计(即建立所开发的系统的物理模型)的主要依据之一。
在本系统中,在线考试系统的数据流图,如图所示:
图3-2在线考试系统的数据流图
3.5数据库层的设计
数据设计方案:
采用DBMS方案——SQLServer.SQLServer关系数据库引擎支持当今苛刻的数据处理环境所需的功能。
数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。
SQLServer分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是SQLServer数据库的部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。
复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。
可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。
SQLServer中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用SQLServer的过程。
这些功能使您得以快速交付SQLServer应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。
因为SQLServer强大的功能,较好的易用性,良好的通用性和兼容性,本系统选择了SQLServer作为数据库平台。
3.5.1概念模型设计
将需求分析得到的用户需求抽象为信息结构,即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。
1.概念结构的主要特点
(1)能真实充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。
(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。
(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。
(4)易于向关系、网状、层次等各种数据模型转换。
描述概念模型的有力工具是E-R模型。
根据以上得到的数据项和数据结构,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
2.E-R图中的图形符号说明
实体:
用矩形表示,矩形框内写明实体名称
属性:
用椭圆表示,并用无向边将其与相应的实体连接起来
联系:
用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:
1,1:
n,m:
n)
3.系统中实体E-R图
根据库存管理子系统的设计系统的要求,我规划出了以下一些实体:
管理员、教师、学生。
管理员实体就是用来记录登录名、用户名和密码信息的。
如图3-3所示:
图3-3管理员实体属性图
学生实体就是用来记录学生的登录名、姓名、密码和姓名信息的。
如图3-4所示:
图3-4学生实体属性图
教师实体就是用来记录教师的登录名、姓名、密码以及所任教的科目数。
如图3-5所示:
图3-5教师实体属性图
课题表实体用来记录课程名和课程的创建日期。
如图3-6所示:
图3-6试题表实体属性图
3.5.2关系模式设计
1.一个实体型转换为一个关系模式的集合。
实体的属性就是关系的属性,实体的码就是关系的码。
对于实体间的联系则有以下不同的情况:
2.一个1:
1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
3.一个1:
N联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。
4.一个M:
N联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
5.三个或三个以上实体间的一个多元联系可以转换为一个关系模式,与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
图3-7各实体总E-R图
本系统采用的数据库管理系统是Microsoft公司的SQLServer2005。
该管理系统由一系列产品组成,不仅能够满足最大的数据处理系统和商业Web站点存储数据的需要,还能为个人或小企业提供易于使用的数据存储服务。
微软开发的SQLServer2005是在Windows/2000/XP及WindowsNT平台中应用的关系型数据库管理系统,可以通过各种数据库对象对数据进行控制和管理,不论用户创建的独立桌面数据库适用于个人、部门还是整个企业,SQLServer2005都可以为管理数据生成易于使用的数据库,SQLServer2005不仅拥有众多传统数据库管理软件所具备的功能,同时还进一步增强了与web页集成,能够更方