1、XXXXX大学毕业设计报告题目基于WEB的在线自测试考试系统教师及管理员模块的设计与实现姓名学号院系专业及班级计算机科学与技术09摘要随着计算机网络技术和教育的信息化技术不断发展,传统的基于纸笔的考试形式已不再适应现代教育的发展要求。在线自测试考试因其灵活性、准确性和方便性等特点,成为现代教育系统普遍采用的一种考试方式。设计在线自测试考试的主要目的是教师根据课程内容灵活的添加试题,学生可以伴随课程进度自由进行自测试,达到教与学的灵活互动。在线自测试考试系统采用了B/S架构,以ASPNET技术、ADO技术为核心,VISUALSTUDIO2008为开发环境,C、JAVASCRIPT等语言得以实现。
2、该系统由学生、教师、管理员三大模块组成,采用分角色进行登录操作。教师管理模块具有试题管理、试题评阅和成绩、错题率查询统计三大功能,通过引入JMEDITOR公式编辑器组件和结合JAVASCRIPT技术实现试题公式、图片的添加、修改功能;试卷评阅采用客观题由系统自动评阅,主观题由教师在线评阅的复合方式,在提高阅卷效率的同时保证成绩的准确性;成绩、错题率查询功能实现学生学习信息反馈功能。管理员模块通过一些基类及存储过程实现学生、教师等基本信息的管理功能。总之,在线测试系统的建立,既有助于学习者及时了解自己学习的情况,重新调整学习计划。此外,组织者也可以通过对回收反馈信息的统计和分析,及时对课程结构、
3、内容安排等进行调整,并及时为学习者提供指导。关键词ASPNETVISUALSTUDIO2008自测试考试B/S模式山东科技大学学士学位论文SUMMARYSUMMARYTHERAPIDDEVELOPMENTINCOMPUTERTECHNOLOGYTODAY,SCHOOLTEACHINGANDMANAGEMENTOFINFORMATIONTECHNOLOGYDEVELOPMENTHASMADESIGNIFICANTPROGRESSTHETESTONLINEBECAUSEOFITSFLEXIBILITY,ACCURACYANDCONVENIENCE,ETC,BECOMEAMODERNEDUCATIO
4、NSYSTEMWIDELYADOPTEDAWAYOFEXAMINATIONDESIGNTHEMAINPURPOSEOFTHETESTFORTEACHERSFLEXIBLEADDINGQUESTIONSACCORDINGTOTHECOURSECONTENT,STUDENTSCANBESELFTESTALONGWITHTHECOURSEPROGRESS,TOACHIEVEFLEXIBLETEACHINGANDLEARNINGINTERACTIONONLINEEXAMINATIONSYSTEMADOPTEDTOTHEB/SARCHITECTURE,ASPNETTECHNOLOGY,ADOTECHNO
5、LOGYASTHECORE,THEVISUALSTUDIO2008ASDEVELOPMENTENVIRONMENT,C,JAVASCRIPTANDOTHERLANGUAGESTHESYSTEMCONSISTSOFTHREEMODULESSTUDENTS,TEACHERS,ADMINISTRATORS,ADOPTSTHEROLEFORTHELOGINOPERATIONTHETEACHERMANAGEMENT,TESTQUESTIONMANAGEMENTMODULEHASTHEPAPERSREVIEWANDPERFORMANCE,THERATEOFWRONGTOPIC,QUERYSTATISTIC
6、STHREEBIGFUNCTIONSTEACHERSMODULE,BYINTRODUCINGJMEDITORFORMULAEDITORCOMPONENTWITHJAVASCRIPTTECHNOLOGYIMPLEMENTATIONQUESTIONSFORMULA,IMAGES,ADD,MODIFY,FUNCTIONEXAMMARKERSSUBJECTIVEQUESTIONSHAVETHESYSTEMAUTOMATICALLYREVIEW,SUBJECTIVEQUESTIONSBYTHETEACHERONLINEREVIEWCOMPOSITEMODE,INIMPROVINGREADINGEFFIC
7、IENCYATTHESAMETIME,ENSURETHEACCURACYOFTHERESULTSSCORES,THEREALIZATIONOFTHEFUNCTIONOFTHERATEOFWRONGTOPICQUERYSTUDENTSINFORMATIONFEEDBACKFUNCTIONADMINISTRATORMODULEBYSOMEBASECLASSESANDSTOREDPROCEDURESREALIZESTUDENTS,TEACHERSANDOTHERBASICINFORMATIONMANAGEMENTFUNCTIONSTHISCANMAKETHEEXAMINATIONSYSTEMMANA
8、GEMENTHAVEACLEARDIVISIONOFRESPONSIBILITIES,TOREDUCETHENECESSARYMANPOWERANDMATERIALRESOURCES山东科技大学学士学位论文SUMMARYINAWORD,THEESTABLISHMENTOFTHEONLINETESTSYSTEM,HELPSLEARNERSUNDERSTANDTHEIRLEARNINGSITUATIONINTIME,TOADJUSTTHESTUDYPLANINADDITION,THEORGANIZERSALSOCANTHROUGHTOTHERECOVERYOFFEEDBACKINFORMATION
9、STATISTICSANDANALYSIS,INATIMELYMANNERTOADJUSTCURRICULUMSTRUCTURE,CONTENT,ARRANGEMENT,ANDFORLEARNERSTOPROVIDEGUIDANCEINTIMEKEYWORDSASPNETVISUALSTUDIO2008SELFTESTB/SMODEL山东科技大学学士学位论文目录目录1绪论111课题开发的背景112课题研究的目的及意义213国内外主要研究现状314论文研究的主要内容42系统相关的理论与技术621ASPNET概述622ADONET技术823SQLSERVER技术1124JAVASCRIPT技术14
10、25B/S结构143系统需求分析1731需求分析1732可行性分析194在线自测试系统整体方案设计2141总体概述2142系统功能设计2143构建开发环境2244系统功能结构2345数据库设计235详细设计与系统实现2851公共类的设计和实现过程2852登录界面的设计与实现3053管理员界面设计与实现3254教师管理界面的设计实现406系统测试5161系统测试的环境5162系统测试的情况52山东科技大学学士学位论文目录63系统测试的结果537结论与展望5471课题结论5472课题展望55总结56参考文献57致谢59山东科技大学学士学位论文绪论11绪论11课题开发的背景随着计算机技术的发展,互联
11、网时代的到来和飞速发展,我们已经进入了信息时代,也有人称为数字化时代。在这数字化的时代里,学校传统的管理方法和办学水平都受到了极大的挑战。INTERNET技术持续迅猛的发展,也给传统的办学提出了新的模式。绝大部分大学和学院都已接入互联网并建成校园网,各校的硬件设施己经比较完善。通过设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理,从而方便管理者、老师和学生间信息发布、信息交流和信息共享。以现代计算技术、网络技术为基础的数字化教学主要是朝着信息化、网络化、现代化的目标迈进。在线考试系统的实现技术有多种,可以采用传统的客户机/服务器型的C/S型架构,即试题内容
12、放在服务器上,在考试机上安装考试应用程序和数据库客户机配置,因此每次考试时要对机器进行安装、配置,考务工作比较繁琐,而且考试程序放在客户机上,安全性也受到一定影响,因此本文讨论的在线考试系统采用WEB技术实现。WEB技术超越了传统的“客户机/服务器”两层结构,采用了三层体系结构用户界面层/事务层/数据库层,因此WEB结构有着更好的安全性,在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上。当然,事务层和数据库可以是同一台机器如果条件允许,还是应该把这两层分开在不同的计算机上。所以,本文所讨论的考试系统采用WEB技术实现。通过这种新的模式,为考试创
13、造一种新的考试环境,使考务管理突破时空限制,提高考试工作效率和标准化水平,使学校管理者、山东科技大学学士学位论文绪论2教师和学生可以在任何时候、任何地点进行在线进行考试1。12课题研究的目的及意义伴随着计算机技术的发展和互联网时代的到来,计算机已经成为现代社会重要的基础设施。在现代信息化的教育环境下,学生希望得到个性化的学习方式,老师则希望通过在线学习与自测考试结果有效改进现有的教育模式,以提高教育的水平。在线自测试考试系统现阶段可以对学生进行不同学科客观题和主观题的混合测试,学生在线考试系统通过网络实现教师和学生考试工作的计算机化。本系统主要作为学生日常练习测试之用,辅助学生自主学习和指导教
14、师进行教学计划的修正,基本上摆脱以前的人工操作模式。本系统主要设计实现管理员对信息数据的更新维护,教师对试题库的添加、修改、删除,学生自主选题组卷并进行自测考试等功能,其主要目的是帮助主管考试的人员和教师提高教学效率,实现考试信息管理及考试流程的系统化、规范化和自动化。作为学生学习和教师教学过程中的辅助工具,本系统最大的特点是学生能够跟随教学进度,随时进行自测试,查缺补漏,教师可以自由地向题库添加、查询修改、删除试题,并对学生的考试成绩进行分类统计。教师通过浏览器进行有效的身份验证登录后,在教师界面进行操作。作为学生用户登录,通过自主选择课程章节进行随机组卷,生成试卷后,学生在规定的时间内完成
15、试题。交卷后,客观题部分由系统自动完成改卷,主观题部分则由教师进行人工审阅后进行分数提交,保证主观题分数评定的公正性和准确性。对于管理员主要负责信息数据库的修改更新等功能。山东科技大学学士学位论文绪论3在线测试系统的建立,既有助于学习者及时了解自己学习的情况,重新调整学习计划。此外,组织者也可以通过对回收反馈信息的统计和分析,及时对课程结构、内容安排等进行调整,并及时为学习者提供指导。因此,对在线考试系统的开发和设计具有重要意义。13国内外主要研究现状在线考试系统在网络远程教育和培训方面都得到了广泛的应用,并随着计算机网络技术的发展日趋成熟,考试系统越来越多的使用基于B/S2(BROWSER/
16、SERVER)结构的WEB应用程序。仅仅通过浏览器,即可实现在线培训、练习、考试、分析统计等功能,用户无需另外安装客户端。通过各类服务器端脚本技术如ASP等动态脚本语言实现动态网页,借助ASP及其扩展,可以开发出功能强大的WEB应用。在线考试系统有基于WEB和基于局域网的在线考试系统。基于WEB的系统一般应用于考生自测或在线教学系统,基于局域网的在线考试系统通常用于各类行业考试、职业技能考试、计算机等级考试等。以下概述在线考试系统的国内外发展现状1大部分考试系统基本采用B/S三层架构,并使用各种动态网页程序来编写,为客户端提供更快和更稳定的运行环境。使用相应的数据库平台,来对专业知识题库进行存
17、储。采用WEB方式构建生成,便于系统的使用和维护,可以无缝集成到企业现有的INTRANET系统。系统管理者通过浏览器或数据库工具进行系统管理、查询分析统计等工作;考生在浏览器中登录,考生还可以查询个人成绩等信息,参加培训、练习、考试。2对技能操作的认证和考核系统。计算机操作技能型考试通常要求能够模拟真实的操作环境。AOCA公司的ATA智能化考试服务系统,可山东科技大学学士学位论文绪论4以在ATAETESTING通用平台上模拟全真环境的应用软件和系统软件来实现对操作过程及步骤的考核。其在系统中应用了ZNM技术智能化、非线性多元组卷模板技术、LAS技术(智能化考试结果判定技术)、SRAT技术(全真
18、环境下动态转换技术)、RET技术(真实环境考试技术)、DST技术(动态模拟考试技术)。3在实际应用中各种考试系统也存在各自的缺点。有的系统必须安装相对应的教学系统作为支撑,系统使用复杂;有些对题型支持不好,不支持主观试题;有的不能有效的组织统一考试。有的系统本身稳定性不好,BUG众多。传统考试的组织工作十分繁琐且非常容易出错。为提高考试现代化水平和效率,构建WEB平台的在线考试系统,协助组织考试的主管部门和人员实现考试流程的自动化、规范化和系统化,提高工作效率。参加考试的人员不再受地域、空间的限制。采用自动化的阅卷过程也维护了考试的客观性和公正性。而且系统可以方便的进行扩展和复用,除了专门用于
19、考试之外还能在平时作为培训学习、联系测试之用。14论文研究的主要内容在线考试系统采用ASPNET,VS2008,SQL等编程语言、公式编辑器与数据库等工具,通过基于WEB服务器访问纯WEB页面,实现试题管理、在线组卷与考试等各项相关的功能。本系统是专门用于试题录入、查询、修改、删除、组卷和参加在线考试的ASP应用程序。其最大的特点是开放性、方便性和灵活性。主要是山东科技大学学士学位论文绪论5指教师用户不仅可以轻松地向题库添加、修改和查询成绩,而且管理员可以自动新增科目、章节、专业班级等并建立相应的数据表它还允许学生用户根据自己的需求,从现有的试题库中灵活地抽取各类试题,以组建适合于自身所需的试
20、卷。考生通过浏览器进行有效的身份验证登录后,输入正确的用户名和密码,并要求在规定的时间内进行答题,当达到规定的时间后,系统将自动予以提交。一旦考生做完后便能立即看到自己的成绩,并且其答案和分数将被记入库中以供审核和查阅,并作为成绩评估和试卷分析的历史数据。山东科技大学学士学位论文系统的相关理论与技术62系统相关的理论与技术考试本身就是一项系统工程,而自测考试系统的设计就是需要把这个理论性强,而且系统庞大的工程付诸实现。自测考试的主要目的是进行有效的教学,以检验学生对相关知识和技能的掌握情况。为实现自测试考试系统,需要掌握一些基本的网页制作理论与技术。21ASPNET概述211用ASPNET制作
21、动态网页早期的HTTP和HTML技术在制作开发静态、非交互式网页方面发挥了巨大作用,但为了制作出具有高效、动态和可交互式的网页就需要利用数据库访问技术。现在已经使用的访问远程数据库技术有CGI、ASP、ASPNET、PHP、JSP等。APIAPPLICATIONPROGRAMINTERFACE是在CGI的基础上发展而来的,通过提供动态连接库DLL形式减少了对CPU的占用。为提高性能,在服务器启动时装入内存,由每一个请求启动单独进程改为利用DLL变进程为线程。不足之处是程序需要考虑多线程、同步进程和直接协议等知识。微软的ISAPI是服务器API的代表性产品。CGI(COMMONGATEWAYIN
22、TERFACE),即通用网关接口,通过用户的一个请求,CGI的一个应用程序将请求信息用变量的形式提取传送给服务器,然后服务器将程序运行结果以HTML文件的形式返还用户。这就是WEB服务器与应用程序之间的接口标准。缺点是每一个用户请求都需要精心转换,相应的进程数量随之增加,这样使系统运行缓慢,且消耗大量的时间和资源。ASP(ACTIVEX山东科技大学学士学位论文系统的相关理论与技术7SERVERPAGE)综合了HTML、ACTIVEX脚本程序语言及ACTIVEX组件技术,具有灵活性和交互性。ASPNET3是WEB设计技术的一种,它采用面向对象的方法创建动态网页,通过代码封装、HTTP按钮、数据绑
23、定列表和网络,提高调用效率。212ASPNET优点ASPNET作为一种功能强大的WEB开发平台,具有明显的优势(1)执行效率高;(2)开发工具选择方便、灵活;(3)功能强大、适应性强;(4)简单、易学;(5)高效可管理性;(6)自定义性和可扩展性。213ASPNET的运行原理当一个HTTP向服务器请求并被IIS接受后,首先,IIS检查客户端请求的页面类型,并为其加载相应的DLL文件,然后,在处理过程中将这条请求发送给能够处理这个请求的模块。在ASPNET中,这个模块叫作HTTPHANDLER(HTTP处理程序组件),之所以ASPX文件可以被服务器处理,就是因为在服务器端有默认的HTTPHAND
24、LER专门处理ASPX文件。IIS将这条请求发给能够处理这个请求的模块之前,还需要经过一些HTTPMODULE的处理,这些都是默认的MODULES用于获取当前应用程序的模块集合)。HTTP请求传到HTTPHANDLER之前不同的HTTPMODULE处理有4个好处,一是为了一些必需的过程;二是为了安全性;三是为了提高效率;山东科技大学学士学位论文系统的相关理论与技术8DLL四是为了用户能够在更多的环节上进行控制,增强了用户的控制能力。ASPNET4运行原理如图21所示。图21ASPNET运行原理小结由于ASPNET采用面向对象的方法创建动态网页,通过代码封装、HTTP按钮、数据绑定列表和网络,提
25、高调用效率等优点,本系统选择ASPNET技术实现。22ADONET技术ADONET的名称来源于ADOACTIVEXDATAOBJECTS,它是NETFRAMEWORK中的一套广泛的类组,是一组向NET程序员提供数据访问服务的类,用于在微软的技术中访问数据。ADONET访问数据的体系结构,其逻辑关系如图22所示。山东科技大学学士学位论文系统的相关理论与技术9图22ADONET层次结构ADONET访问数据的体系结构从上到下可以分为WEB应用层、数据层、数据提供者和数据存储区。数据存储区代表各种不同类型的数据源,包括关系型数据库、XML文档等。数据提供者PROVIDER在整个层次结构中起到了关键的作
26、用它相当于一个中介协调通用接口,不同类型的数据源通过使用不同的数据提供者进行数据连接。这些数据提供者起到一个容器的作用,即可以将相关的数据读入内存中,也可以利用内存中数据集的数据更新数据源。ADONET5对象模型包含五个核心组件,这些组件分为两种类型。第一种是NETFRAMEWORK数据提供者组件,包括CONNECTION对象、COMMAND对象、DATAADAPTER和DATAREADER对象,主要负责建立联机和数据操作。第二种是DATASET对象,它独立于任何外部数据源,可将它当作内存中一个数据暂存区,负责存储由数据库中处理过的结果,既可以管理本机数据也可以与外部不同的数据源相连接。DAT
27、ASET对象本身并不具备与数据源链接的能力,它是架构在DATAADAPTER对象之上的。ADONET对象模型如图23所示。山东科技大学学士学位论文系统的相关理论与技术10图23ADONET对象模型1CONNECTION对象CONNECTION对象主要是用于应用程序和数据库之间建立连结。通过指明数据库服务器、数据库名字、用户名、密码以及其它所需要的参数,建立与数据源之间的逻辑链接,它位于ADONET的最底层。2COMMAND对象COMMAND对象继承于NETFRAMEWORK的IDBCOMMAND接口,表示连接数据源时执行的SQL语句。主要用来执行对数据库的一些操作,如查询、新增、修改、删除数据
28、等指令,以及调用数据库中的存储过程等。3DATAADAPTER对象DATAADAPTER对象主要负责在数据源以及DATASET对象之间建立桥梁,用于检索和保存数据。它架构在COMMAND对象上,通过COMMAND对象下达命令,把从数据源中获取的数据填充到DATASET对象中的表中,并把对DATASET中数据的修改提交回数据源。4DATASET对象DATASET是支持ADONET的非连接模式数据访问方案的核心对象。山东科技大学学士学位论文系统的相关理论与技术11DATASET是数据的内存驻留表示形式,可以把它当作内存中的数据库。利用它可以使程序员在编程时,屏蔽数据源的差异,能够提供一致的编程模型
29、。DATASET可以包含任意数量的DATATAB数据表对象,每个DATATAB都对应数据库中的一个表或视图,透过DATAADAPTER对象可以获得数据库表中的主键、外键、约束等关系信息。5DATAREADER对象DATAREADER对象用于从数据库中获取仅向前的数据流,由于一次只能一笔向下循序的读取数据源中的数据,因此大幅度节省内存资源,并且有很高的效率。同时它是只读的操作,因此不用把数据全部传回,所以可以降低网络的负载,减轻网络的负担。23SQLSERVER技术231SQLSERVER概述后台数据库系统使用微软的MICROSOFTSQLSERVER2005,SQL6全称是“结构化查询语言ST
30、RUCTUREDQUERYLANGUAGE”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言。得到了广泛的应用。如今无论是像ORACLE,SYBASE,INFORMIX,SQLSERVER这些大型的数据库管理系统,还是像VISUALFOXPORO,POWERBUILDER这些微机上常用的数据库开发系统,都支持SQL作为查询语言。山东科技大学学士学位论文系统的相关理论与技术12232SQLSERVER存储过程存储过程8是存储在SQLSERV
31、ER服务器上的一组预编译的TRANSACTSQL语句,是一种封装重复任务操作的方法,支持用户提供的变量,具有强大的编程功能。用户可以把要完成某项任务的许多TRANSACTSQL语句编写在一起。组织成存储过程的形式,通过执行该存储过程就能够完成这项任务。1创建存储过程的方法在TRANSACTSQL语言中,创建存储过程可以使用CREATEPROCEDURE语句,其语法形式如下CREATEPROCEDUREPROCEDURE_NAMENUMBERPARAMETERDATA_TYPEVARYINGDEFAULTOUTPUT,NWITHRECOMPILE|ENCRYPTION|RECOMPILE,ENC
32、RYPTIONFORREPLICATIONASSQL_STATEMENTN在上面的CREATEPROCEDURE语法中,方括号“中的内容是可选的,花括号“中的内容是必选的,不能省略,N表示前面的参数样式,可以重复出现。竖线“|“表示两边的选项可以任选一个。2存储过程的优点本系统中,由于数据量大,尤其是学生在线考试抽题时,需要频繁访问数据库,为此,在系统中使用了很多存储过程,这与存储过程的下列优点是分不开的。1存储过程具有安全机制;2存储过程执行速度快,能够提高系统的性能;3使用存储过程能够减少网络传输时间;4存储过程能够与其他应用程序共享应用程序的逻辑,从而确保数山东科技大学学士学位论文系统的
33、相关理论与技术13据的一致访问和操纵。3存储的实现首先在执行相关的存储过程之前会将当前的执行状态压栈;其次到数据库的中间代码库中找到存储过程的语法树,把存储过程的语法树存放在整个TSQL语句块语法树的过程调用节点上,并提交解析器,然后解析器执行存储过程的中间代码,最后解析器在存储过程调用结束后回复保存的现场,弹出当前执行状态,回到上一层执行状态继续执行。其具体实现过程如图24所示。图24存储过程的调用过程小结目前有许多版本的数据库语言,如ACCESS、ORACLE等,但基于系统安全性、系统的运行平台、操作的难易程度来看,本系统选择SQL技术对数据库进行操作。山东科技大学学士学位论文系统的相关理
34、论与技术1424JAVASCRIPT技术JAVASCRIPT7是一种新的描述语言,此语言可以被嵌入HTML的文件之中。透过JAVASCRIPT可以做到回应使用者的需求事件如FORM的输入而不用任何的网络来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给服务端SERVER处理再传回来的过程,而直接可以被客户端CLIENT的应用的方程式所处理。你也可以想像成有一个可执行程式在你的客户端上执行一样。JAVASCRIPT是面向对象的。在JAVASCRIPT中,对象分为两种。一种可以称为“普通对象”,就是我们所普遍理解的那些数字、日期、用户自定义的对象(如)等等。还有一种,称为“方法对象”,就
35、是我们通常定义的FUNCTION。小结基于JAVASCRIPT与ASP相结合具有编写容易、安全、可以直接对用户或客户输入做出相应(如表单输入)等优点,本系统采用JAVASCRIPT与ASP相结合的技术实现。25B/S结构在浏览器/服务器结构也就是B/S结构中,操作者通过本机安装浏览器如IE等向在远程的服务器SERVER端发出请求,当服务器SERVER端获取请求后,对操作客户端的请求进行处理,并且将客户端操作者需要的信息返回。B/S结构模式大大简化了在客户端复杂的工作,只需要作少量的配置。而服务器端即SERVER承担了大量的工作,在服务器上完成对底层数据库及其中的各个表的访问及应用程序的执行。因
36、此,本质上山东科技大学学士学位论文系统的相关理论与技术15B/S体系结构就是把C/S结构的复杂的各类处理模块从客户端的任务中解脱出来,让配置高、性能强的WEB服务器独立出来,组成专门的一层来,从而形成三层体系结构,减轻客户端的压力,让操作者更方便、轻松的工作。体系结构如图25所示。图25基于B/S的三层架构B/S三层结构的优点1不论在哪种OS环境下,只要机器上安装有WWW浏览器软件,都可以作为客户机;2升级和维护方便,更不需专门开发客户端软件;3可以采用在网络环境下成熟的防火墙技术保证系统的安全性;4由于系统开放性,从而方便扩充系统性能;在这种B/S架构中,共采用了三层架构体系,让每一层与另外
37、一层之间相互独立,在对某一层进行改变时,都不会影响其另外层的功能。三层B/S结构将应用系统分为表示部分、应用逻辑部分、数据访问部分三个部分。这三个组成部分由于在逻辑上相互独立,因此可以在不同环境下分别予以实现,称之为客户端、应用服务器、数据库服务器。在实际操作环境中,由于数据库相对用户来说是透明的,所以在应用服务器SERVER上配置一个WEB服务,客户端配置一个浏览器(BROWSER),从而得到B/S结构BROWSER/SERVER。客户端使用IE浏览器时,就可以让IE浏览器成为能够远程处理数据的系统环境。在B/S模式下,因为提供一个可以在不同OS平台、简单的应用环境,并且实现应用系统与开山东
38、科技大学学士学位论文系统的相关理论与技术16发系统的分离,因此避免了同一个应用系统需要为多重不同的OS系统开发操作,大大简化了开化的复杂性,更有利于应用系统的管理、用户群的扩展和变化。小结B/S与C/S相比不需要安装客户端,能够满足全球网络开放、互连、信息随处可见和信息共享的新要求等优点,在本系统中采用了B/S构架模式。山东科技大学学士学位论文系统需求分析173系统需求分析31需求分析311需求分析的概念需求分析就是对用户的原始需求以及开发人员在需求调研过程中收集的资料进行挖掘和分析,提炼出系统的功能要点、开发对象以及预测系统规模,并进一步选定系统的软件开发和运行环境。本阶段虽处于软件开发的初
39、期阶段,但对于整个软件的开发过程及软件的产品质量却都是至关重要的,并且为下一阶段进行系统设计奠定了基础。312系统需求功能分析要实现在线考试系统,首先要进行需求分析,这样才能使设计出的在线考试系统满足用户的各项功能,并且该系统应该具有友好、简洁的界面,安全性要高,稳定性要强等。该系统是专门用于用户注册、登录、参加在线考试以及教师进行试题录入、修改、删除、成绩查询,管理员进行用户基本信息添加管理的ASP应用程序。它应该具有开放性,方便性和灵活性。教师可以轻松地向题库添加、修改和删除试题,管理员可以自动新增科目、专业、班级等并建立相应的数据它还允许学生根据自己的需求,选取考试科目、章节。下面就对在
40、线考试系统进行需求分析。本系统要求是一个基于WEB在线自测试考试系统,为了使管理者能够进行远程管理,系统设计必须满足以下要求1系统的安全性系统管理员进入系统时首先应进行登录,只有通过身份验证后才能操作,以防止无权限进入系统。山东科技大学学士学位论文系统需求分析182系统的合理性系统应能满足大部分中高等院校的要求。3系统的可靠性系统在运行时应极为可靠,在死机、断电等导常情况下,应能及时记录考生当前考试状态,当该考生重新进入系统后,能从及时备份点继续完成考试。在线自测考试系统应该具备的基本功能1用户信息的管理管理员可以增删用户,对题库、用户基本信息、科目信息等进行维护。2试题库管理教师分科目、章节
41、,对单选、多选、判断、简答多种题型试题库的管理。3试卷生成学生根据需求随机选择课程章节,由系统自动协助完成组卷。(4考试过程系统严格控制整个考试过程,按时间倒计时来限定考生,考生需要在限定的考试时间内交卷。5阅卷过程计算机自动阅客观题试题,主观题由教师阅卷,教师按其参考答案对比进行阅卷给分,然后将两部分内容相加得出学生总分数。6错题信息浏览教师通过按科目、章节、题目类型来查看学生考试成绩中的错题情况,来了解学生对课程的掌握程度,进一步来安排课程计划。7添加题库建表管理员能新建题库表,每张题库表可以是不同的科目,实现多种科目山东科技大学学士学位论文系统需求分析19在同一时间同时考试。8添加试题数
42、据教师能根据当前课程内容的更新,及时更新题库内的试题,以免试题陈旧。(9)试题库的查询教师根据不同题型进行试题的查询,并进行试题的修改、删除。313数据库需求分析根据系统功能设计的需求以及功能结构的划分,对于用户信息的数据,主要包括了如下的一些数据项和数据结构管理员信息表职工代码、姓名、密码等内容。教师信息表职工代码、姓名、密码等内容考生信息表学号、姓名、性别、班级等信息。题库信息表题目ID、题目类型、题目内容、试题答案等内容。答题信息表题目ID、试卷ID、简答答案、考生选项答案等内容。成绩信息表试卷ID、学生ID、各题型得分等内容。32可行性分析在设计和开发系统时需要注意下面几点数据安全性。
43、在本系统中由于学生、管理者、老师都可以操作,因此在设置各类用户的权限时一定要严格。特别是操作数据库,应该对配置了不同权限的用户在使用系统时,根据权限的大小,让他们进入的界面不一样,这样就可以避免数据被误删除等情况的出现,此外,应该让管理员授山东科技大学学士学位论文系统需求分析20权合法的用户进行相应数据的编辑,即使对于管理员也只能编辑自身可以管理的信息,无权做其它操作。内容的全面性。在线考试系统不只是对考试过程进行一些基本的管理,而且还需要管理试卷的生成、删除各方面,而且不同的权限可管理的内容也不相同,因此,本系统必须满足管理人员、老师以及学生的需要,使各类用户方便的使用该系统。性能可扩展性。
44、要求单个或全部功能模块进行调整时,系统的数据承载能力都能适应变化。本系统的可扩展性,主要体现在除可用于计算机基础这门课程外,还可以满足其它科目考试的需要,不同科目需要的数据题目类型也可以根据情况进行添加或修改。系统易维护性。本系统由于采用B/S架构,系统的升级在服务器端就可以完成,并且如果需要更新数据库,也只需要在服务器端操作即可。在维护系统时,只需在远程登录服务器系统,减少了系统的维护成本和周期。山东科技大学学士学位论文在线自测试试系统整体方案设计214在线自测试系统整体方案设计41总体概述本系统设计的基本目标是解决系统如何实现的问题,本系统主要任务是划分出系统的物理元素及设计软件的结构,完
45、成软件时期的任务之后就应该对系统进行总体设计,即根据系统分析产生的分析结果来确定这个系统有哪些系统和模块组成,这些系统和模块又如何有机的结合在一块,每个模块的功能如何实现。系统设计的目标是使系统实现拥有要求的功能。同时,力争达到高效率、高可靠、可修改性,并且容易掌握和使用。模块化的依据是把复杂的问题分解成许多容易解决的小问题。原来的问题也就变得容易解决。模块化的设计是把大型软件按照一定的原则划分成一个较小的相对功能独立又相关联的模块。每个模块完成一个特定的子功能。把这些模块结合起来组成一个整体。完成指定功能,满足问题需求。采用模块化原理的优点在于可以使软件结构清晰,容易测试和调节。从而提高软件
46、的可靠性、可修改性。有助于软件开发的组织管理。42系统功能设计421用户登录模块用户登录模块主要是将教师、管理员和学生登录分开,为了系统的安全,在登录时根据身份的设置判断登录用户类型,然后根据用户ID、密码和验证码进入不同登录界面,新用户通过注册控件进行注册。最高权限的管理员可以修改所有用户的登录信息,若用户忘记密码,可以通过管理员找到。山东科技大学学士学位论文在线自测试试系统整体方案设计22422管理员管理模块管理员登录到系统时,管理员主要有对基本信息的管理(如系别、专业、班级、课程、章节的添加修改功能)、用户信息的管理(如学生、教师、考试成绩的修改)。其中基本信息的管理中数据库的应用采用数
47、据库存储过程来实现。423教师管理模块教师进入系统,教师主要负责试题库的添加,试题库的管理功能,主观题判卷、学生成绩查询等功能。试题库添加中为实现公式、图片的插入,通过JMEDITOR编辑器实现,将考试试题添加到服务器中,并保存到数据库中,这种题库将永远用于以后的考试。试题库管理功能是通过查看试题对试题进行修改、删除,使考试题更加准确。主观题功能,教师可以在考生提交试卷后,对试卷的主观题部分进行手工阅卷并打分。在手工阅卷时,系统会提供相应试题的标准答案以加快教师的阅卷速度,提高效率。成绩查询功能,主要是让教师通过查看学生的成绩,通过课程章节、不同题目类型来了解学生对本课程本章节的掌握程度,以进
48、行课程计划安排。43构建开发环境为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端要求不是很高。此应用程序可广泛运行于国际互联网,也可适用于内部的局域网,其运行要求如下(1)网站的开发环境网站开发环境MICROSOFTVISUALSTUDIO2008集成开发环境;网站开发语言C;网站后台数据库SQLSERVERMANAGEMENTSTUDIOEXPRESS;(2)服务器端山东科技大学学士学位论文在线自测试试系统整体方案设计23操作系统WINDOW7WEB服务器INTERNET信息服务管理器;数据库服务器SQLSERVER2005;浏览器谷歌44系统功能结构在线考试系统包
49、括学生功能管理模块、教师管理模块和系统管理员模块构成。系统功能模块如图41所示。图41系统功能模块图45数据库设计山东科技大学学士学位论文在线自测试试系统整体方案设计24数据库(DATABASE)是按照数据结构组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术的发展,特别是二十世纪九十年代以后,数据管理不仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储各种数据的表格到能够进行海量数据存储的大型数据库系统,在社会的各个方面都得到了广泛的应用。数据库设计DATABASEDESIGN是指为了满足企业建模的需要,完成在具体应用条件下,构建数据库模型,包括创建关系、关系的属性以及各种对关系的约束条件。数据库设计是应用程序设计的基础,影响到应用程序设计的各个逻辑层面。数据库设计是一个循序渐进的过程,主要由六个步骤构成需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的建立和测试、数据库运行和维护。(1)需求分析阶段需要完整的刻画数据库用户的实际数据需求,需要领域专家和用户细致的沟通,收集各种基础数据来建立数据字典和数据流程图。(2)概念结构设计提供了对一个应用系统的详细描述,通过对上一阶段对数据字典和数据流程图的分析,来建立实体联系模型,定义数据库中各个实体、实体的属性以及实体