40毕业设计论文基于ASPNET的在线考试系统的开发.docx
《40毕业设计论文基于ASPNET的在线考试系统的开发.docx》由会员分享,可在线阅读,更多相关《40毕业设计论文基于ASPNET的在线考试系统的开发.docx(38页珍藏版)》请在冰点文库上搜索。
40毕业设计论文基于ASPNET的在线考试系统的开发
目录
设计总说明I
introductionII
1引言1
2基础知识2
2.1动态网页技术2
2.2数据库知识2
3系统设计3
3.1系统需求分析3
3.2数据库设计3
3.2.1数据库需求分析3
3.2.2数据库物理设计4
3.2.3数据库逻辑设计4
3.3系统结构4
4系统主要功能模块5
4.1用户登录模块5
4.1.1流程分析5
4.1.2文件设计6
4.2试题管理模块和考生成绩管理模块7
4.3抽取试题管理8
4.3.1手工抽题9
4.3.2自动组卷10
4.4答题页面的实现10
5系统测试11
6总结11
鸣谢12
参考文献13
设计总说明
随着计算机技术的迅猛发展,学校教学和管理的信息化发展也有长足的进步,这就要求各个环节都均衡发展,从软硬件双方面把学校建设成一流的信息管理、教育教学的平台。
本文设计开发的考试管理系统也是其中重要的一个方面。
该系统本着减轻教师工作负担、提高工作效率、优化学生考试的流程,增强参加考试学生的身份识别,比传统的考试模式节省人力财力和时间。
本文介绍了基于网络环境的考试系统设计与实现过程,包括系统需求分析和系统的功能设计、数据库设计以及主要ASP.NET页面的设计。
重点阐述了用户登录模块、题库管理模块和试题抽取管理模块的设计。
关键词:
在线考试;ASP.NET;SQLserver2000
introduction
Alongwiththefastdevelopmentincomputertechnology,wehavegottenbigprogressinschoolscienceandinformationmanagement.Soitneedsequaldevelopmentineverypart.Theschoolwillbebuildinganinformationmanagementandeducationalplatfromhardwareandsoftwaretwosides.Idevelopedthissystemisinordertoreducetheteacher'spressure,enhancetheworkefficiency,optimizetheprocessofstudent'stesting,enhancethestudents'identityandpapers'secrecy.Itcansavemorepeoplemoneyandtimethantraditionmethods.Thispaperexpoundsthedesigningandimplementingprocessofanexaminationsystembasedonnetworkenvironment.Itincludestheanalysisofdemandandthefunctiondesign,databasedesign,thedesignofmainASP.NETpages.thispaperstressinthedesignofproblemstorehousemanagementmodular,userentrymodularandpapermanagementmodular.
Keywords:
examinationonlineASP.NETSQLServer2000
基于ASP.NET的在线考试系统
电子信息工程,2002181526,徐成龙
指导教师:
王震宇
毕业设计说明书
1引言
网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。
随着Internet/Intranet的迅速发展和广泛普及,建立在其上的远程教育成为现代教育技术未来发展方向之一,考试测试作为远程教育的一个子系统也成为一个重要的研究领域。
现代远程教育作为一种新的教学手段已经开始进入我们的生活,正在给传统教育模式带来新的变革,并对教育的发展形成新的推动力。
Internet技术的发展使得考试的技术手段和载体发生了革命性的变化,Internet的开放性、分布性的特点和基于Internet的巨大的计算能力使得考试突破了时间和空间的限制。
基于Internet的考试系统正成为人们的研究热点之一。
与传统考试模式相比,网上考试具有无可比拟的优越性,它可以将传统考试过程中的试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量的时日、人力、物力与财力,而且还可以大幅度提高考试成绩的客观性和公正性。
网上考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化系统的建设;目的是充分利用学校现有的计算机软、硬件资源和网络资源实现无纸化考试以避免传统手工考试的不足。
与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。
通过Internet来实现网上考试,是现代教育技术的一个具体实现,具有很重要的现实意义。
可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观、公证性,自动化组卷、阅卷可以减轻教师的工作强度。
传统考试要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。
这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。
网络考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地的对学生进行考试,加上Web数据库技术的利用,大大简化了传统考试的过程。
本文以Internet为平台,研究了基于Web考试系统的设计与实现,包括系统需求分析和系统功能设计以及数据库设计。
重点阐述了用户登录模块、题库管理模块和试卷管理模块的设计。
特别是在题库管理模块中对自动组卷功能常用的算法(包括随机选取法、回溯试探法和遗传算法)进行了比较。
2基础知识
2.1动态网页技术
由于系统的操作界面都是Web页面形式,而且需要对各种用户的具体请求进行动态处理并返回结果,这是一般静态Web页面技术所无法实现的,所以采用动态网页技术。
目前动态网页技术有很多,可以说是层出不穷,比如CGI、PHP、JSP、ASP、ASP.NET等。
本设计采用ASP.NET技术。
ASP.NET(又称ASP+)是ASP的下一代版本,它并不只是ASP4.0,它是一个用于Web开发的全新框架,其中包含了许多新的特性。
ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这些具有革新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给Web开发人员更好的灵活性,有效缩短了Web应用程序的开发周期。
ASP.NET与SQLServer2000的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的运行环境。
2.2数据库知识
由于本系统涉及到许多数据的处理,这就需要有一个强大的后台数据库管理系统支持。
目前主要的数据库有:
Access、FoxPro、Excel、Sybase、Oracle、Informix、SQLServer等,其中网络型的SQLServer、Oracle产品安全性远远高于桌面型的Access、FoxPro等数据库。
本系统采用的是微软公司的SQLServer2000。
原因如下:
1、完全的客户机/服务器体系结构。
这一结构可以有效的使用网络,提高网络带宽的利用率。
因为在客户枷服务器运算模式下,数据库操作都集中在服务器进行,在网络上传输的是用户的请求命令和数据库服务器的操作结果,而不是整个数据库文件,这样可以减少网络上的信息流量,从而提高网络的使用效率。
2、简单的图形化管理工具使系统管理更为直观方便。
SQLEnterpriseManager是一个基于Windows图形用户接口的集成管理工具,利用它可完成SQLServer的许多配置管理工作。
3、隐含的并发控制能力。
SQLServer利用锁定功能防止用户在查询和更新并发操作时相互发生冲突,锁定是隐含的,用户不必操心锁定过程。
4、丰富的编程接口工具。
SQLServer提供了多种专用开发工具,其中TransactSQL与工业标准SQL语言兼容,并在其基础上加以扩充,使它更适合事务处理方面的需要。
此外它还支持ODBC规范,可以使用ODBC访问SQLerver数据库。
5、多线程体系结构。
SQLServer支持多线程操作,在多用户并发访问时,系统在产生较小额外负担的情况下能够进行并行处理,从而减少内存需求,提高系统的吞吐量。
在用户数量增加时,SQLServer的运行速度也不会明显变慢。
6、SQLServer是Microsoft服务器套件BackOffice的成员之一,它与其它软件(WindowsNT,InternetInformationServer,ExchangeServer等)有机结合,并充分利用它们提供的服务或功能(如安全管理、事件日志、性能监视器、内存管理和异步I/O等),从而增强了SQLServer数据库系统的功能,同时占用较少的系统资源。
7、容量庞大,每个数据库中可创建多达20万个数据表,数据表中的记录的行数只受服务器硬盘空间的限制,符合系统的考题数目较多的要求。
总之,在使用WindowsNT作为服务器操作系统,IIS作为Web服务器的环境里,使用SQLServer作为Web数据库管理系统有着不可替代的优势。
3系统设计
3.1系统需求分析
本系统的用户分为教师和学生两部分,考虑到系统的安全性,本系统共分成两个界面:
一个界面用于教师登录,主要负责试题库的管理,试题的抽取和考生信息的管理;另外一个界面用于考生登录,主要用于进行在线考试。
从总体上考虑,系统应该实现下列功能:
对教师来说,包括试卷管理、试题抽取、考生成绩管理。
1、试题管理:
教师可以对试题库中不同科目的试题进行修改,删除旧有试题和添加新试题等。
2、试题抽取:
教师可以选择不同的科目抽取试题,并可以通过手工抽题和随机抽题两种方法抽取试题组成试卷。
3、学生信息管理:
教师可以查看考生的考试成绩,并修改学生的基本资料和考试成绩等。
对于学生来说,只能够在老师抽取试题的情况下才能登陆并进行在线考试
3.2数据库设计
3.2.1数据库需求分析
针对一般考试系统的需求,设计如下所示的数据项和数据结构:
●学生信息,包括的数据项有:
学生学号、姓名、语文成绩、数学成绩等。
●教师信息,包括的数据项有:
教师教师号、姓名等。
●语文试题,包括的数据项有:
题号c题干、备选项(A、B、C、D)、正确答案等
●数学试题,包括的数据项有:
题号、题干、备选项(A、B、C、D)、正确答案等
本系统应该建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、试题信息、试卷信息、考试信息等)。
为了从多方面来保障考生考试信息的安全性、可信性和考试成绩的可依赖性,本系统还应该建立一套机制,这套机制至少应该包括学生和教师的账号的安全机制、后台数据库的安全机制、考试过程的控制机制。
3.2.2数据库物理设计
对应逻辑设计的数据库名Examination,设计数据库的物理文件及相关属性如下。
●主数据文件:
exam.mdf。
初始空间:
1MB,若超出空间按10%自动增长。
存放路径:
c:
\programfiles\MicrosoftSQLServer\MSSQL\Data\。
最大文件大小:
不受限。
隶属文件组:
PRIMARY。
●日志文件:
exam_log.ldf。
初始空间:
1MB,若超出空间按10%自动增长。
存放路径:
c:
\programfiles\MicrosoftSQLServer\MSSQL\Data\。
最大文件大小:
不受限。
3.2.3数据库逻辑设计
由于本系统是为网上考试系统而设计的,因此数据库名称定为Examination。
根据需求分析设计四个用户表,分别为“Administrator”、“StudentInfo”、“Chinesequestion”和“MathQuestion”由设计人员根据需要设计,具体的用户数据表结构参见附录一。
3.3系统结构
本系统分为后台数据库系统和前台ASP.NET网站系统两部分。
后台数据库Examination包含四个用户表。
前台ASP.NET网站系统包括考生和教师的登陆界面、考生的考试界面、教师抽取试题的界面、教师管理试题的界面和教师管理学生成绩的界面等。
根据需求分析设计了如图3-3所示的数据库结构。
4系统主要功能模块
4.1用户登录模块
4.1.1流程分析
该模块包括Login.aspx和AdministratorLogin.aspx,用户想要使用本系统,必须先登陆。
用户登陆的方法十分简单,教师直接输入用户名和密码就可以了,若输入的数据与数据库存放的数据相符,则表明用户登录成功,可以开放全部前台子系统;如果不符,则登录失败。
考生必须在教师抽取试卷后才能登陆,登陆方法与教师相同。
教师登陆模块流程图如图4.1.1所示,考生登陆模块与之相似。
4.1.2文件设计
login.aspx文件:
按照下述内容设计login.aspx文件。
表单名:
form1。
表单执行程序:
login.aspx。
表单数据传输方法:
post。
表单的要素如表4-1所示。
表4-1login.aspx表单设计
表单要素说明
表单要素名称
表单要素性质
用户名
Username
文本框
密码
Password
文本框(密码域)
提交按钮
Submit
按钮(类型为submit)
重置按钮
Reset
按钮(类型为reset)
设计的源代码见附录1
4.2试题管理模块和考生成绩管理模块
题库管理包括填空题管理、选择题的管理。
教师可以通过题库管理对各种类型的试题进行添加、删除、修改以及查询。
题库管理功能模块图如图4.2所示,设计的源代码见附录1
4.3抽取试题管理
4.3.1手工抽题
手工抽取试题的页面显示主要由“试题库”、“命令”和“已选试题”三大部份组成。
这部份引用了一些公用函数,如创建视图函数等。
在创建视图函数中,将根据Application(“Subject”)的值来决定从哪一个存储试题的表中抽取试题。
试题库和已选试题使用相同的创建函数,但是已选试题需要由变量Application(“RowFilter”)来指定过滤条件。
Application(“RowFilter”)的值在Page_Load函数中被初始化为“QuestionID=0”,由于所有的“QuestionID”都大于0,所以在页面初次显示时没有任何记录被显示在已选试题上。
当通过单击命令按纽实现一系列加入和移除记录后,Application(“RowFilter”)的值将会随着不同的情况而变化。
四个命令按纽将实现向已选试题加入或者移除的功能,而实现这些功能的关键就是根据不同的命令将Application(“RowFilter”)设为不同的值。
加入或者移除被选择的试题时比较简单,前者可以将Application(“RowFilter”)的值设为“QuestionID<>0”,而后者为“QuestionID=0”。
加入或者去除被选择的试题则比较麻烦一些,要用到“And”或者“OR”这两个条件运算来连接各个条件。
首先来看条件字符串可能出现的形式。
一种是条件字符串中不包括“And”运算符,这时,各个条件表达式是等式,如:
QuestionID=’1004’ORQuestionID=’1003’
这个条件字符串表示已选中试题中只有题号为1004和1003的记录。
此时,如果要加入一个记录,则可以为条件字符串增加一个条件表达式。
比如:
要增加题号为1002的记录,刚条件字符串应为:
QuestionID=’1004’ORQuestionID=’1003’ORQuestionID=’1002’
如果要去除一个记录,则应该为条件字符串去除一个条件表达式。
比如去掉题号为1003的记录,则条件字符串应为:
QuestionID=’1004’
还有一种就是不包含“OR”运算符,这时,各个条件表达式是不等式,例如:
QuestionID<>’1004’AndQuestionID<>’1003’
这个条件字符串表示已选试题中包含除了题干为1004和1003之外的所有纪录,如果要加入一个记录,则更为条件字符串中去除一个条件达式。
比如,要增加题号为1003的记录,刚条件字符串应为:
QuestionID〈〉‘1004‘
如果要去除一个记录,则应该为条件字符串增加一个条件表达式。
比如,要去除题号为1002的记录,则条件表达式为:
QuestionID<>’1004AndQuestionID<>’1003’AndQuestionID<>’1002’
使用上面两种方法向已选试题中加入或者去除试题,可以保证不会出现既包含“And”运算符,又包含“OR”运算符的条件字符串。
设计的源代码见附录1
4.3.2自动组卷
自动组卷是题库管理模块中最重要的环节之一。
目前具有自动组卷功能的考试系统一般采用随机选取法、回溯试探法和遗传算法。
随机选取法根据状态空间的控制指标,由计算机随机的抽取一道试题放入试题库,此过程不断重复,直到组卷完毕,或已无法从题库中抽取满足控制指标的试题为止。
该方法结构简单,对于单道题的抽取运行速度较快,但是对于整个组卷过程来说组卷成功率低,即使组卷成功,花费时间也令人难以忍受。
尤其是当题库中各状态类型平均出题量较低时,组卷往往以失败而告终。
回溯试探法是将随机选取法产生的每一状态类型记录下来,当搜索失败时释放上次记录的状态类型,然后再依据一定的规律(正是这种规律破坏了选取试题的随机性)变换一种新的状态类型进行试探,通过不断的回溯试探直到试卷生成完毕或退回出发点为止,这种有条件的深度优先算法,对于状态类型和出题量都较少的题库系统而言,组卷成功率较好,但是在实际应用时发现这种算法对内存的占用量很大,程序结构相对比较复杂,而且选取试题缺乏随机性,组卷时间长,后两点是用户无法接受的。
遗传算法(GeneticAlgorithms)是一种并行的、能够有效优化的算法,以Morgan的基因理论及Eldridge与Gould间断平衡理论为依据,同时融合了Mayr的边缘物种形成理论和Bertalanffv一般系统理论的一些思想,模拟达尔文的自然界遗传学:
继承(基因遗传)、进化(基因突变)优胜劣汰(优的基因大量被遗传复制,劣的基因较少被遗传复制)。
其实质就是一种把自然界有机体的优胜劣汰的自然选择、适者生存的进化机制与同一群体中个体与个体间的随机信息交换机制相结合的搜索算法。
运用遗传算法求解问题首先需将所要求解的问题表示成二进制编码,然后根据环境进行基本的操作:
selection,crossover,mutation……这样进行不断的所谓“生存选择”,最后收敛到一个最适应环境条件的个体上,得到问题的最优解。
分析上述算法的优缺点,不难发现,在限制条件状态空间的控制下,随机选取法有时能够抽取出一组令用户满意的试题,只不过由于它随机选取试题的范围太大,无法确定目前条件下哪些区域能够抽取合适的试题,反而可能在那些已经证明是无法抽取合适试题的区域内反复选题,进行大量的无效操作进入死循环,最终导致组卷失败。
回溯试探法组卷成功率高,但它是以牺牲大量的时间为代价的,对于现今越来越流行的考生网上随机即时调题的考试过程来说,它已不符合要求。
遗传算法以其具有自适应全局寻优和智能搜索技术,并且收敛性好的特性能很好的满足自动考试组卷的要求。
4.4答题页面的实现
在答题页面上要显示试卷名称、考生的准考证号和姓名成绩显示栏等。
试卷名称由Application(“Subject”)变量来决定,而考生姓名则来自于Session(“Name”)变量,准考证来自于Session(“ID”)。
显示试题的部分用了一个Datalist控件,其数据来源于“ChineseQuestion”表。
“交卷”按钮将使考生对各题的选择结果与“ChineseQuestion”表存储的试题答案进行比较,最后计算机出考生的得分,得分将显示在成绩显示栏上。
5系统测试
系统在投入使用之前必须进行严格的测试,测试的内容包括功能测试、性能测试、可用性测试、客户端兼容性测试、安全测试等。
测试完成后要上交测试报告,我们可以根据测试报告及时发现问题并提出解决方案,便于系统的维护与升级。
经过初步测试,系统在服务器端和客户端均能正常运行,对于不同显示分辨率下网页也能够正常显示而且网页的链接基本正确。
但由于系统对操作人员录入的错误数据和数据本身的错误所造成数据的不完整性,系统的约束力较弱,应加强数据的完整性约束提高系统数据的正确性和相容性,以及系统的容错性,加强对用户输入端的数据进行检验。
6总结
由于时间和技术水平的缘故,本系统还存在着许多方面的工作尚未完善。
系统对操作人员录入的错误数据和数据本身的错误所造成数据的不完整性,系统的约束力较弱,在系统的更进一步的实现阶段,应加强数据的完整性约束提高系统数据的正确性和相容性,以及系统的容错性,加强对用户输入端的数据进行检验。
另外,本系统只提供了选择题,没有问答题、分析题和判断题等,系统还有待于进一步升级,实现试卷的主观题部分和多媒体试卷。
因此,仍有大量的工作需要开展。
鸣谢
首先我要感谢我的导师王震宇副教授,本论文是在王老师的悉心指导下完成的。
在我的学习过程中,无论在学习上、工作上还是在生活上,尤其在做人的品格上,王老师都给了我无微不至的关还和指导.他那严谨的治学态度、渊博的学识使我终身受益,一生难忘.谢谢!
王老师!
同时我还要感谢我的同学钟树亭、陈丽刚、学友张海泉、王剑波等各位同学朋友和曾经帮助过我的每一位朋友.他们在我课题研究期间给予了我诸多的帮助和大力的支持,帮助我排除了许多困难,使我的论文能顺利完成.
最后,我要感谢我的家人,没有他们的支持我是无法我的学业的.我要向他们表示我的深深谢意!
参考文献
[1]《精通ASP.NET网络编成》/孟军2002
[2]《ASP.NET技术与应用》/杨帆编著2004
[3]基于Web模式的网络考试系统安全性研究/朱归良著(《计算机工程与应用》2002年3月)
[4]《ASP.NET变成培训教程》/赵克立编著2002
[5]《中文版SQLServer2000应用及实例集锦》/赵松涛编著2002
[6]ASP实战锦囊[专著]/万维多媒体工作室著2001.2
[7]新概念ASP.NET教程[专著]/王洪超编著2001
[8]Windows2000+ASPSQLServer[专著]/曾清国著2001.8
[9]现代远程教育系统原理与构建[专著]/刘远航等编著2002.10
[10]