基于bs架构的网上考试系统的设计与实现.docx
- 文档编号:13851856
- 上传时间:2023-06-18
- 格式:DOCX
- 页数:40
- 大小:388.92KB
基于bs架构的网上考试系统的设计与实现.docx
《基于bs架构的网上考试系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于bs架构的网上考试系统的设计与实现.docx(40页珍藏版)》请在冰点文库上搜索。
基于bs架构的网上考试系统的设计与实现
2010届本科毕业论文
基于B/S架构的网上考试系统的设计与实现
系院:
学生姓名:
学号:
专业:
年级:
完成日期:
指导教师:
摘要
随着计算机科学的发展,数据库技术在Internet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。
个性化已逐渐成为当今Web应用的潮流。
网络的诞生和发展,颠覆了传统的信息传播方式,冲破了存在于传统交流方式中时间和空间的种种壁垒,极大地改变了人类从物质到精神、从形式到内容、从生产到生活的各种活动,并且给人类带来了新的机遇和挑战。
Internet已经成为人们生活、工作、学习越来越离不开的平台,Web技术已经不在局限于单纯地提供信息服务、而是日益成为一个操作平台、为用户提供强大的服务功能,例如见网上电子商务、社会信息数据库等、网络实现了远程通讯,人们能够通过计算机网络进行电子邮件的发送,召开网络会议,网上考试,甚至坐在家里就可以上大学,网络有巨大的潜力待我们去开发探索,因此,基于B/S架构创建这个网上考试系统,紧跟行业发展,满足人们生活方便、学习的需要。
建于一个基于B/S架构的网上考试系统,实现信息网络化,登录者可以在线考试,查询成绩信息,将成绩下载保存,修改个人密码和个人信息,在后台管理员可以进行考试管理工作,考生信息管理,成绩管理,科目管理,试卷管理,题库管理等,方便网站的管理与维护。
要实现这样的功能,离不开后台数据库的支持,本系统采用数据库SQLServer2000作为后台数据库,整个个性化页面生成系统主要由使用ASP.NET技术开发实现个性化Web页面生成。
关键词:
网上考试系统;ASP.NET;数据库
Abstract
Asthedevelopmentofthecomputerscience,theapplicationofthedatabasetechnologyintheInternetisbecomingmoreandmorewidely,forthevastnumberofnetworkuserswithamoreattentiveandpersonalizedservice.Personalizationisslatedtobecomeatrendintoday'sWebapplications.Thebirthanddevelopmentofthenetworkanddestabilizingthetraditionalinformationdisseminationmethods,brokethroughthepresentinthetraditionalwaytocommunicateintimeandspaceofallthesebarriers,greatlychangedthehumanspiritfrommaterialto,fromtheformtothecontent,fromproductiontothelifeofavarietyofactivities,andbroughtnewopportunitiesandchallenges.
Internethasbecomethepeoplelive,work,learntobecomeincreasinglydependentontheplatform,Webtechnologyisnolongerlimitedtosimplyprovidinginformationservices,andisbecomingaplatform,providestheuserwithapowerfulservicefeatures.Forexample,onlinee-commerce,socialinformationdatabase,andsoon,thenetworkenablesremotecommunication.Peopletoovercomputernetworks,emailsending,convenedameetingofthenetwork,anonlineexam,orevensittingathomecangotoCollege;thenetworkhasenormouspotentialforustodevelopexploration.Therefore,basedontheb/Sschematocreatethisonlineexamsystem,keeppacewithindustrydevelopment;meetpeople'sliveseasier,andlearningneeds.
BuiltinaschemabasedontheB/Sonlineexamsystem,enablingtheinformationnetwork,logontoonlineexam,queryresults,saveresultstodownload,modifypersonalpasswordandpersonalinformation,inthebackground,theadministratorcantestmanagement,testtakerinformationmanagement,performancemanagement,accountmanagement,testmanagement,testmanagement,easysitemanagementandmaintenance.
Toimplementsuchafeature,notthebackgrounddatabasesupport,thissystemusesdatabaseSQLServer2000asabackgroundfortheentiredatabase,personalizedpagegenerationsystemisusedprimarilybytheuseoftechnologytodeveloppersonalizedWebpagegeneration.
Keywords:
On-lineExaminationSystem;A;Database
1引言
1.1系统的开发背景
纵观计算机化测试的研究和应用的历史,可以看到,随着计算机技术的发展,计算机在测试中的应用从当初单纯的判分,到IRT模型出现后的自适应考试,再到现在的基于网络的情境化、模拟化测试,发挥的作用越来越大。
试题的形式也在此过程中发生着变化,从固定在单一试卷中的试题发展到了可以自由组合的题库,再到现在的多媒体试题库。
随着题库的建立,组卷变得方便了,测试的形式也发生着变化,由所有学生同考一张试卷的大规模的集体测试发展到了同一场考试使用等同考查效力的不同试卷的小组测试。
组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。
这种工作将是一件十分烦琐和容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
随着计算机应用的迅猛发展,网络应用不断扩大,远程教育和虚拟大学的先后出现,并逐步深入到千家万户。
人们迫切要求利用网络系统来进行在线考试,以减轻教师的工作负担提高工作效率,以达到提高考试的质量为目,并使考试趋于公证、公平、客观,来激发学生的学习兴趣。
网上考试系统的实现及应用是未来信息社会发展应用的一种趋势,在此本着探索的原则,设计一个简单的考试系统,既使原来的知识学有所用,又学到了新的知识,为向更高层次的学习和研究写下开端。
1.2系统概况
1.2.1基于B/S模式
B/S体系即浏览器/服务器(Browser/Server)体系。
在B/S的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。
B/S结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
当用户从浏览器向Web服务器提出请求时,Web服务器会自动将ASP.NET的程序编译为标准的HTML格式的主页内容,用户端只要使用常规可执行HTML程序的浏览器,就可浏览ASP.NET所设计的主页内容,因此与浏览器无关,并且保证了ASP.NET的源程序代码不会外漏B/S体系的优点是,系统安装维护简便,数据集中管理,便于分散用户使用,适应互连时代软件的发展趋势。
1.2.2安全管理机制
由于考试系统的特殊性,安全性显得格外重要。
网上考试系统从考生登陆(注册)到参加考试,到查询考试成绩都使用存储过程来防止SQL的攻击,例如:
禁止刷新,禁止查看源代码等等。
1.3系统实施计划
(1)系统目标:
开发一个小型的网上考试系统,以组织客观、公正、科学合理的考试为目的。
(2)开发工具:
系统前台界面是以ASP.NET+Dreamweaver为平台开发的ASP.NET动态网页;后台数据库是利用功能强大的MicrosoftSQLServer2000开发的。
(3)开发设计思想:
系统的优点不仅仅要体现在功能上,还要在使用上具有方便、快捷、高效的特点。
(4)系统采用面向对象的编程思想和三层架构模式进行程序的设计:
表示层:
展现在用户面前的.aspx页面。
业务逻辑层:
主要用来处理应用程序的业务逻辑,例如:
执行数据库的增,删,改查等操作。
数据层:
即数据库。
注:
这样做的目的是以便于日后系统的维护和扩展在服务器、数据库等多个层次上提供行之有效的安全防范措施。
1.4相关技术介绍
1.4.1.NET框架
Microsoft.NET战略基于一组开放的互联网协议,推出了一系列的产品、技术和服务,其有以下特点:
(1)通用语言运行时以及它所提供的一组基础类库是整个开发框架的基础。
通用语言运行时为多种语言提供了一种统一的运行环境。
此外,它还提供了更多的功能和特性,例如:
统一和简化的编程模型;避免了DLL的版本和更新问题(常称为DLL地狱);多种语言之间的交互;自动的内存和资源管理等等。
基础类库为从输入输出到数据访问等各个方面,提供了一个统一的面向对象的、层次化的、可扩展的编程接口。
(2)在开发技术方面,.NET提供了数据库访问技术ADO.NET、网络应用开发技术。
.NET中访问数据库的技术是ADO.NET,它提供了用来连接到数据库、运行命令和返回数据集的一组类库。
与ADO相比,ADO.NET通过提供一系列新的对象和编程模型,并通过与XML紧密结合,确保.NET中的数据操作高效方便。
ASP.NET是.NET中的网络编程结构,它使得建造、运行和发布网络应用变得非常方便。
ASP.NET网络表单技术把VB中的快速开发模型引入到网络开发中来,大大简化了网络应用的开发。
ASP.NET支持多种语言,不仅支持脚本语言,通用语言运行时支持的所有语言在ASP.NET中都可以使用。
代码和内容分开,使得开发人员和设计人员能够更好的分工合作,提高开发效率。
Web服务是下一代可编程网络的核心。
它是可命名的网络资源,可在Internet范围内方便的表现和使用。
ASP.NET中,建造和使用Web服务都非常方便。
传统的基于Windows的应用(WinForms)仍然是.NET战略中不可或缺的部分。
在.NET中开发传统的基于Windows的应用程序时,除了可以利用现有的技术外,还可以基于通用语言运行时开发,可以使用ADO.NET、Web服务等新技术,这样也可以实现诸如避免DLL地狱、多语言支持等.NET新特性。
(3)在开发语言方面,.NET提供了VB、VC++、C#、Jscript等多种语言支持,同时支持第三方生产针对.NET的编译器和开发工具。
微软在.NET中推出了全新的C#语言,这种全新的面向对象的语言使得开发者可以快速的构建从底层系统级到高层商业组件的不同应用。
C#在保证了强大的功能和灵活性的同时,给C和C++带来了类似于VB的快速开发,并且它还针对.NET作了特别设计,比如C#允许XML数据直接映射为它的数据类型等等,这些特性结合起来使得C#成为优秀的下一代网络编程语言。
与此同时,.NET对原有的VB和C++也做了很大的改进,使得它们更加适应.NET框架的需求。
(4)VS.NET是全面支持.NET的构建下一代互联网应用的优秀工具,它和.NET框架紧密结合,通过提供统一的集成开发环境和工具,大大提高了开发者的效率,集成了多种语言支持,简化了服务器端的开发,提供了高效地创建和使用Web服务的方法等等。
1.4.2Web技术
Web技术的迅猛发展,使全人类都能共享Web上的各类资源,包括功能强大的计算资源、海量信息的数据库资源、五花八门的多媒体信息资源、门类齐全的软件工具资源等,这些使得任何人能在任何时间、任何地点和任何设备上获得所需要的信息资源和服务。
Web技术为Internet的普及与推广起到关键性的作用,例如在远程教育、电子商务、电子政务、办公自动化、掌上电脑、信息家电、嵌入式系统等方面的应用,几乎无所不在。
Web是一个无集中控制、无统一结构、无完整性约束、无事务管理、无标准查询语言和数据模型、可无限扩充的一个松散的分布式信息系统。
Web是在TCP/IP、Mime、Hypertext等技术之上发展起来的,并在此基础之上,开发了HTTP、HTML、URL等技术,但其核心是HTTP。
从本质上讲是各种技术的集成与综合应用,它以TCP/IP协议为基础,使用HTML描述网络的资源,通过超文本(Hypertext)、超媒体(Hypermedia)技术实现超级链接,无论文本、图形,还是动画、声音都能通过文挡中的链接连接到服务器上的其它文档或其它站点,使客户以用交互方式快速地搜索所需要的资料,通过表单供用户填写并通过服务器应用程序提交给数据库等。
1.4.3CSS和DIV
CSS是CascadingStyleSheets(层叠样式表)的简称。
由W3C的CSS工作组产生和维护,是一种标记语言,它不需要编译,可以直接由浏览器执行(属于浏览器解释型语言)。
在标准网页设计中CSS负责网页内容(XHTML)的表现。
CSS文件也可以说是一个文本文件,它包含了一些CSS标记,CSS文件必须使用css为文件名后缀。
可以通过简单的更改CSS文件,改变网页的整体表现形式,从而减少设计工作量,实现内容与表现分离,有了CSS,网页的内容(XHMTL)与表现就可以分开了。
使网页的表现非常统一,并且容易修改。
CSS支持多种设备,比如手机,PDA、打印机、电视机、游戏机等。
使用CSS可以减少网页的代码量,增加网页的浏览速度,减少硬盘容量。
DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。
DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表(CSS)格式化这个块来进行控制。
1.5网站对软、硬件的需求
(1)硬件环境
服务器端/客户端:
处理器:
IntelPentiumD或更好
内存:
512M以上
硬盘空间:
80G或更高
(2)软件环境
服务器端/客户端:
操作系统:
WindowsXP/VISTA/2000/2003
网络协议:
TCP/IP
浏览器:
InternetExplorer6.0/7.0
2系统分析
开发一个软件首先要进行系统需求分析,其主要工作是确定系统的规模和范围,确定软件的总体要求以及所需要的硬件环境和支撑软件,确定待开发软件与外界的接口,根据用户的情况确定软件对操作的要求,以及待开发软件总体上的约束和限制。
系统需求分析有助于弄清对需开发的软件、硬件环境、支撑软件和操作人员的要求。
系统需求分析的过程实际是一种解决问题的活动,需要系统需求者与系统开发者之间的反复商讨。
在进行系统需求分析时所要考虑的项目和解决问题时所产生的结果一般包括:
分析计划、项目与用户的联系、系统目标、现行系统、数据元素及结构、向用户做调查、对其他系统的调查、各种方案、选择设计方案、结构分析和下一阶段的计划等。
2.1用户需求分析
本考试系统的主要用途是供校园内部考试、或者机关单位的培训考试之用,其规模比较小。
其用户有考生用户、系统管理员和教师三类。
对于考生用户来说,要提供方便、快捷、高效的考试操作功能,考试应该让考生充分发挥其知识水平,不应因为客观原因而影响考生的正常状态。
系统反应灵敏迅速,如在执行用户登陆、试卷提取、成绩查询等功能时,应快速做出响应。
对于教师来说,可以浏览,查询,增加,删除,修改及试题的增,删,改,查和试卷的制订与维护功能,要对试卷及试题保密。
对系统管理员来说,要提供方便统一的管理功能,管理员除了拥有教师的权限外还可以浏览、查询、添加、删除、修改考生的基本信息,系统管理员面对的是众多考生,要对考场、考生、试题做统一的控制,负责整个系统的正常运行,对试卷的保密、数据的安全与完整性等方面有比较高的要求。
2.2系统功能分析
2.2.1对学生信息的管理
(1)考生的注册:
文件录入考生资料时证件号码不允许包括空格否则会出现在考试机输入正确证件号码但报告错误的情况出现。
报名编排必须一次完成不能把本次考试的学员分两次报名编排,如果分两次最后一次编排的数据会覆盖第一次上报的数据,造成数据丢失,考生在注册时一定要选择试卷,系统自动分配考场及座号。
(2)用户管理:
对于已经考试过的试卷,限制考生现再次考试。
2.2.2对考试科目及题库的管理
(1)管理员可以对考试科目进行设置,如添加、修改、删除等操作。
(2)题库设置,题库是专用题库,能供某一个特定的部门使用。
2.2.3对考试试卷的管理
(1)随机组卷、随机从数据库中抽取试题组成一套试卷。
(2)教师可以调出试卷库中的试卷直接使用或作参考或在此基础上稍加改动形成新试卷,所有参考人员按预定的试题使用同一份试卷。
2.2.4成绩查询
(1)当考生考试完某一个科目后,可以直接提交试卷就会看到该科目的分数。
(2)教师及管理员可以查看所有考生成绩。
(3)教师可以打印正式试卷,可以打印标准答案,可以导出成绩到Excel中。
2.2.5管理员信息的管理
管理员可用分配的用户名与密码进行登录,用户名和密码要具有唯一性。
2.2.6安全机制
只有本系统的管理员及教师才有对数据库的管理和修改权限,不允许未经过授权的非法用户登录修改数据库中的数据。
2.3数据流程图
数据流程图(DataFlowDiagram,简称DFD)是新系统逻辑模型的主要组成部分,它可以反映出新系统的主要功能、系统与外部环境间的输入输出、系统内部的处理、数据传送、数据存储等情况。
它的绘制依据是现行系统流程图,数据流程图是系统总体设计图。
2.3.1用户登录流程分析
该模块包括admin_login.aspx和user.aspx文件。
如果用户要使用为注册用户提供的功能,那么在使用之前必须登录。
用户的登录方式很简单,只要输入用户名、密码就可以了。
若用户输入的以上两项与数据库中保存的相符,则表明用户登录成功,可以开放全部前台子系统;如果不符,则登录失败。
模块执行流程如图2-1所示。
其中管理员、教师、学生登录模块执行流程与用户登录模块执行流程类似,文件分别为:
admin_login.aspx、Login.aspx。
图2-1用户登录流程
2.3.2数据字典
数据字典是结构化分析的工具之一,它对数据流图中出现的数据元素给出落迷定义,能清晰的表达数据处理的要求。
数据字典的条目可以分为四大类,即数据流条目,文件条目,数据项条目,加工条目。
其中最主要的是词条描述,即对于在数据流图中每一个被命名的图形元素,均加以定义。
由于数据字典条目众多,在此只给出典型的数据字典描述。
本系统的考试科目管理的字典层次关系图如图2-2所示:
图2-2考试科目数据字典的层次关系
3数据库设计
数据库在一个信息管理系统中占有非常重要的地位,数据库设计的好坏将直接影响到系统的效率以及实现的效果。
合理的数据库结构设计可以提高数据库的存储效率,保证数据的完整性和一致性。
设计数据库系统时首先应该充分了解用户在各个方面的需求,包括现有的以及将来可能添加的需求。
数据库的设计一般包括以下四个步骤:
(1)数据库需求分析
(2)数据库概念结构设计
(3)数据库逻辑结构设计
(4)数据库结构的实现
3.1数据库需求分析
根据系统功能设计的要求以及功能模块的划分,数据库需要的存储信息如下:
(1)考试科目信息:
科目编号、科目名称。
(2)用户信息:
考生学号、考生姓名、密码、权限标记。
(3)题库信息:
题目编号、题干、题目选项、试题答案。
(4)考试成绩信息:
考生学号、试卷编号、考试成绩、考试时间。
(5)考场信息:
考场编号、考场名称、容纳人数。
(6)考生座位信息:
学员编号、考场号、座位号、试卷编号。
3.2数据库概念结构设计
根据3.1节数据库需求分析中的数据项和数据结构就可以设计出满足用户需求的各种实体以及它们之间的联系。
设计数据库系统时首先应该充分了解用户在各个方面的需求,包括现有的以及将来可能添加的需求。
每个数据库存储信息根据各个数据库需求分析中的数据项设计出来,具体设计可根据用户的需求。
合理的数据库结构设计可以提高数据库的存储效率,保证数据的完整性和一致性,也更方便用户对数据库的了解。
(1)用户信息实体E-R图如图3-1所示:
图3-1用户信息实体E-R图
(2)题库信息实体E-R图如图3-2所示:
图3-2题库信息实体E-R图
(3)考试信息实体E-R图如图3-3所示:
图3-3考试成绩信息实体E-R图
(4)试卷信息实体E-R图如图3-4所示:
图3-4试卷信息实体E-R图
3.3数据库逻辑结构设计
数据库逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
在3.2节实体以及实体之间关系的基础上,形成数据库中的表格以及各表格之间的关系。
根据考试系统功能要求,需要在SQLServer2000里创建数据库,建立的数据表如下所示:
(1)为了便于用户登录安全管理和维护数据库,建立用户信息表,如表3-1所示:
表3-1用户信息表
字段名
数据类型
说明
UserID
Text
用户身份号
UserName
varchar
用户姓名
UserPwd
varchar
密码
(2)为了存储考试科目信息,建立考试科目信息表,如表3-2所示:
表3-2考试科目信息表
字段名
数据类型
说明
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 bs 架构 网上 考试 系统 设计 实现