模拟考试系统的设计和实现.docx
- 文档编号:13482595
- 上传时间:2023-06-14
- 格式:DOCX
- 页数:36
- 大小:269.83KB
模拟考试系统的设计和实现.docx
《模拟考试系统的设计和实现.docx》由会员分享,可在线阅读,更多相关《模拟考试系统的设计和实现.docx(36页珍藏版)》请在冰点文库上搜索。
模拟考试系统的设计和实现
模拟考试系统的设计和实现
摘要
随着计算机技术在现代化教学系统中的广泛应用,以及我国大专院校规模的不断扩大和上级考试的日趋繁琐,模拟考试系统已成为许多学校模拟考试过程中不可缺少的一部分。
面向校园公共机房的模拟考试系统,可以看作是教师、学生、机房等教学中不可缺少系统,它是计算机信息管理在学校教学活动中的又一个重要的应用。
是基于局域网,具有随机考试、成绩回收、考务管理等功能,适用于院校的无纸化考试系统。
我们将此系统与国内现有的原有的模拟考试系统进行了比较,分析了它的技术可行和经济可行性。
同时进行了市场调查,进行了必要的需求分析,最终确定有必要设计这个模拟考试系统。
本系统的开发主要包括后台数据库的建立和维护以及前端应用程序的设计两个方面。
对于数据库要求实现数据的一致性、完整性和安全性,而对于应用程序则要求功能完善、简洁易用。
经过分析,我们决定前台使用MicroSoft公司的代表性开发工具VisualBasic6.0。
后台使用SQLServer2000。
并且采用ODBC连接数据库。
众所周知,VB开发的应用程序(尤其是数据库应用程序)代码操作数据库效率高、具有组件丰富、语言简单、功能强大的优点。
利用VB6提供的面向对象开发思想和各种实用美观的数据库程序,我们能在最短的时间内完成系统开发满足模拟考试系统的需要。
关键字:
模拟系统;VB6;SQLServer;ODBC
Abstract
Withmoderncomputertechnologyintheteachingsysteminthebroadapplication,aswellasthescaleofChina'stertiaryinstitutionsarecontinuouslyexpandingandincreasinglycomplexhigher-levelexaminations,theexaminationsystemhasbeensimulatedinmanyschoolsintheprocessofmockexaminationsindispensablepart.Campusroomforthepublicexaminationsystemsimulationcanbeseenasteachers,students,teachingrooms,andotherindispensablesystem,whichiscomputerinformationmanagementintheteachingandlearningactivitiesinschoolsisanotherimportantapplication.IsbasedontheLAN,withrandomexaminations,resultsrecovery,ExaminationManagement,andotherfunctions,applicabletoinstitutionspaperlessexaminationsystem.
Weseethissystemandtheexistingdomesticoriginalmockexaminationssystemhasbeencomparedandanalyzeditstechnicalfeasibilityandeconomicfeasibility.Atthesametimecarriedoutamarketsurvey,carriedoutthenecessaryanalysisofrequirementsandtheneedtodeterminethefinaldesignofthemockexaminationssystem.Thedevelopmentofthesystemincludingthemainbackgroundoftheestablishmentandmaintenanceofdatabasefront-endapplications,aswellastwoaspectsofthedesign.Thedatabaserequirementsfordataconsistency,integrityandsecurity,andapplicationproceduresforthefunctionalrequirementsofperfectsimplicity.
Afteranalysis,wedecidedtouseMicroSoft'sfuturedevelopmenttoolsVisualBasic6.0representative.BackgroundusingSQLServer2000.AndusingODBCdatabaseconnectivity.Asweallknow,thedevelopmentofVBapplications(especiallydatabaseapplications)codedatabasehighefficiencyoperationwithcomponentsrichinlanguagesimple,powerfuladvantages.VB6providedbytheuseofobject-orientedthinkingandthedevelopmentofarangeofpracticalhandsomedatabaseprogram,wecanintheshortestperiodoftimeinthesystemdevelopmentsystemtomeettheneedsofmockexaminations.
Keywords:
SimulationSystem;VB6;SQLServer;ODBC
目录
1可行性研究4
1.1项目编写目的4
1.2项目背景5
1.3项目可行性评估5
1.3.1经济可行性6
1.3.2时间可行性6
1.3.3技术可行性6
1.3.4社会可行性6
2需求分析7
2.1市场需求7
2.2软件功能分析7
2.3软件的非功能性需求7
2.4软件其他方面的要求8
3环境与系统结构要求9
3.1硬件环境需求9
3.2编程环境9
3.2.1Vb6.09
3.2.2SQLServer200010
3.2.3ODBC10
3.3系统结构C/S模式11
4系统总体设计12
4.1系统体系结构12
4.2系统功能概述14
4.2.1题库管理14
4.2.2题库维护14
4.2.3试卷提交地址15
4.2.4卷号设置15
4.2.5考试时间设置15
4.2.6练习系统15
4.2.7考试系统15
4.2.8查看成绩15
4.2.9系统实现16
4.3数据库设计16
4.3.1数据库的概述(数据库连接方式)16
4.3.2数据库设计17
5详细设计及编码19
5.1用户登录19
5.2题库设计20
5.3模拟考试实现20
5.3.1练习或考试模式21
5.3.2选择题答题22
5.3.3设置试卷提交地址23
5.3.4卷号维护24
5.3.5题库维护26
5.3.6考试时间设置31
5.3.7查看成绩32
6总结34
7参考文献35
1可行性研究
1.1项目编写目的
随着社会的快速发展,计算机科学技术的日趋完善,人们传统的思想观念和生活方式开始改变,一切向着高效率发展,各个高校越来越注重对学生的实践动手能力,特别是计算机专业的学生,这样以来,增加了教师阅卷的负担,因此,开发一个完善的模拟考试系统,是非常有必要的,但是由于资源缺乏和交付时间限制的困扰,使得开发工作变得比较困难,可行性研究的目的就是为了解决这问题。
本系统的目标是在客户机/服务器上设计考试系统,所以首先要考虑的是系统的安全性,尽可能地减少考试中的数据流失。
因此,本系统的体系结构建立在C/S基础上,通过与C/S结构的数据库系统结合,真正实现了数据的安全由于本在线考试系统是实现将现有的纸张答题式考试向基于Internet的无纸张考试系统的转变,所以他必须实现整个考试流程的进行,实现对系统的帐户不同管理,以及完成阅卷、6评分这些环节的处理。
由于系统数据收集的实时性要求并不高,因此采用C/S结构来进行设计是合理可行的。
在根据现有的技术,采用VB6+SQLServer+ODBC技术完全可以高效、快速地开发出该系统。
由于采用VB6,开发方式能为我们尽可能的缩短开发周期,节约系统的开发费用,避免人力、物力的浪费。
参照其他考试系统,界面上完全可以实现与用户的良好交尽可能地减少让用户难以操作的交互方式。
1.2项目背景
随着计算机技术的发展及应用,使得现在的教育方式和方法面临着前所未有的挑战。
计算机教育作为一种新的重要的教学形式,呈现出广阔的发展前景。
模拟考试是计算机教育的一部分,是不可缺少的教学环节。
采用模拟考试或利用计算机进行考试可以提高教学效率,而且是以后考试发展的必然趋势。
模拟考试系统的大致思想是:
提供考生在计算机上考试功能,让考生即时答题,即时评分。
所谓模拟考试系统,就是一个在服务器上运行的程序,该程序从服务器数据库中读取考试题目的内容供考生测试,并把考生的答案与数据库中的正确答案比较,从而完成出题和评分的功能。
现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出卷、考生考试、人工阅卷、成绩评估和试卷分析。
显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。
相比于传统的考试方式,模拟考试系统的主要好处是一方面可以动态的管理各种考试信息,只要准备好足够大的题库,就可以按照要求自动生成各种试卷;另一方面,计算机化考试阅卷能力快,系统可以在考试结束时当场给出考试结果,并且计算机考试给了考生最大的公平感。
模拟考试极大的提高了教学的灵活性,现在在许多领域已经有了广泛的应用。
最有影响的案例就是ETS(美国教育考试中心)举办的GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会便为每个工作日都可以参加考试。
因此,采用模拟考试方式将是以后考试发展的趋势,模拟考试必将会日益盛行。
本系统讲述了一个模拟考试系统的实现过程,该系统基本上可以满足考生考试的需要。
希望能对考生有所帮助。
1.3项目可行性评估
任何一个系统或一项工程,在建立之前,必须首选进行可行性分析,可行性分析包括两层含义,一是可能性,二是必要性。
可能性指开发信息系统的条件是否具备,必要性是指客观上是否真正需要,通过可行性研究,可避免盲目投资,减少政治性要的损失。
下面从四方面来讨论:
1.3.1经济可行性
主要是只指算一个新的系统开发所需要的投资费用和运算费用,并与估计的新系统收益进行比较,看是否有利。
本系统所需的软硬件成本比较低,投资小,具有一定的通过性,因此,在经济上是可行的。
1.3.2时间可行性
主要包括系统在目前环境下能否正常运行,运行后所引起的各方面,以及这些变化对社会或人的因素所产生的影响。
本系统对人事的管理比较全面,可长期使用。
1.3.3技术可行性
利用现有的设备,软件及技术人员,新系统的目标能否达到,这也是可行性研究中需要考虑的一个问题。
关系型数据库的高速发展使管理信息系统具备了良好的开发环境。
本系统使用的vb普及性好,操作简单,用户可以很快掌握使用方法,因此,在技术上是完全可行的。
1.3.4社会可行性
人类社会文明的发展已进入信息化的高速发展时期,传统的手工方式支持下的管理模式,已经不能满足各方面的需要。
开发本系统的目标不仅是提高工作效率,减轻劳动强度,而且减少出错率,具有很好的社会意义。
2需求分析
2.1市场需求
为了满足市场的需求,软件的设计必须有一定的市场针对性。
考试系统软件是为了针对现在学校的考试的增加和规模的增大而造成的人工管理压力,和人力难以实现监控考试的情况,而设计的辅助教师进行考试的管理工作的一种小型考试软件。
它以其独特的功能和良好的适应性和兼容性来适应市场发展的需求,并且由于其尚处于继续改进的阶段,改进的考试系统软件将不断的涌向市场。
2.2软件功能分析
根据高校管理的实际要求,结合考试管理的实际过程,系统应该实现以下功能:
(1)掌握本考试系统范围内所有用户的基本情况,包括编号,姓名,登录口令等。
(2)基于考试系统的基本功能管理,本系统可以提供给管理员类用户及学生类用户使用。
不同的用户类型所能完成的功能不同。
教师类用户可以创建试题、删除过期试题、进行题库维护、创建试卷以及对本系统内人员信息进行维护和更新等;学生类用户主要是参与考试,完成试卷,查询成绩。
(3)适时的试题题库更新,试题题型包括判断题、选择题类型。
试题库的更新由管理员类用户完成。
学生类用户不允许对试题进行更新。
(4)试卷可由本系统自动生成,也可以由管理员类用户从题库中选择试题创建。
2.3软件的非功能性需求
作为一种软件产品,除了在功能方面必需达到用户的基本要求以外,还必需在意一些非功能方面的因素,诸如:
软件的用户操作界面的美观和简洁,以及界面图标的标准化和规范化。
软件要有一定的兼容性,应该兼容当前的主流操作系统平台,象WINDOWS98/NT/Me/2000/XP/2003等。
硬件方面应当要求配置低一点,象这样的小型开发软件应该适用于现大多数的计算机网络系统。
而且,最好是可以适应打印机等其它硬件设备,而本软件就很好地做到了这一点。
2.4软件其他方面的要求
(1)在软件程序设计过程中,依据国家《计算机软件产品开发文件编制指南》和《现代软件工程》两项理论与原则的要求,应当编制标准的软件技术文档。
如软件使用的编码必须符合C#编程的编码设计标准与规范,其使用的对象名、对象类型和命名约定应该一致并规范化。
软件编码时应注意代码清晰、可读性好,还要运用缩进、空行等必要的格式,结合大小写的区别等方法保持程序结构良好。
涉及多表操作的模块应运用“事务”处理,以保持数据完整性。
(2)软件的设计应该有一个完整的过程,各个步骤都必须做到。
一般一个完整的软件设计过程总体分为三个阶段:
1.软件的开发设计阶段。
这一阶段一开始要对所开发的软件项目先做一个市场调查,分析其市场需求的大小和需求度。
然后根据市场调查对软件做一个概念性的设计,确定软件的方向和重点。
接着就进行概要性的设计,将软件的基本框架进行整理和确定。
接下来就是详细的设计,这个过程是软件设计的重点。
详细的设计完成之后,软件的开发设计阶段也就结束了。
2.软件的操作和实现阶段。
这一阶段主要就是要将设计出来的软件进行各个功能的具体实现情况进行检验,看是否与开发设计的要求达到一致。
为软件的成功投放市场进行质量上的严格把关。
3.软件的市场检验和改进完善阶段。
软件经过市场的检验之后,要进行一系列的改进与升级换代。
要知道一个成功的软件产品往往能改进成好几代的产品,这主要是软件为了不断满足市场新的变化需求。
这也是促进计算机软件领域不断发展的原因之一。
3环境与系统结构要求
3.1硬件环境需求
CPU:
PIV2.0GHZ或更高频率的CPU
内存:
DDR333256MB或更多的内存
硬盘:
至少10G以上或更多的硬盘空间
3.2编程环境
需要运行该应用的VB6.0软件
能够存储该应用的所有数据所需的sqlserver2000数据库
3.2.1Vb6.0
VB6.0所具有的特点:
1.具有面向对象的可视化设计工具
2.事件驱动的编程机制
3.提供了易学易用的应用程序集成开发环境
4.结构化的程序设计语言
5.支持多种数据库系统的访问
由于VB6.0具有可视化设计截面,因此开发起来比较快。
并且截面设计比较快。
并且也支持多数据库系统访问,因此今后在别的系统中继承起来也比较方便。
由于提供易学易用的程序集成开发环境,因此对于新手上手比较快。
综合上面VB6.0的一些优点所以我选择VB6.0来开发我的系统。
3.2.2SQLServer2000
用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。
不同的数据库管理系统提供不同的数据库语言。
关系数据库管理系统几乎都提供关系数据库标准语言——SQL。
SQL的全称是StructuredQueryLanguage,即结构化查询语言。
SQL语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。
1986年ANSI采用SQL语言作为关系数据库系统的标准语言,后被国际化标准组织(ISO)采纳为国际标准。
SQL语言使用方便、功能丰富、简洁易学,是操作数据库的工业标准语言,得到广泛地应用。
同时,其它数据库产品厂家也纷纷推出各自的支持SQL的软件或者与SQL的接口软件。
这样SQL语言很快被整个计算机界认可。
SQL语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。
SQL语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。
SQL语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。
当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。
3.2.3ODBC
开放式数据库连接(ODBC)技术为访问不同种类的SQL数据库提供了通用接口。
ODBC是基于结构查询语言(SQL)的,以此作为访问数据的标准。
此接口提供了最大的互操作性:
一个应用程序可以通过一组公用代码访问不同的SQL数据库管理系统(DBMS)。
这使得开发人员能够在不以特定的DBMS为目标的情况下构建和分发一个客户端/服务器应用程序。
然后,会添加数据库驱动程序以将应用程序链接到用户选择的DBMS。
以下特性说明了ODBC的灵活性:
应用程序没有绑定到专有供应商API。
SQL语句可以明确地包括在源代码中也可以在运行时即时构建。
应用程序可以忽略基础数据通信协议。
数据可以用方便于应用程序的格式进行发送和接收。
ODBC是随新兴的国际ISOCall-LevelInterface标准一起设计的。
目前提供了可用于55种最流行的数据库的ODBC数据库驱动程序。
3.3系统结构C/S模式
设计这个系统时,有个问题摆在我面前,那就是对于这个系统我是采用c/s模式进行开发呢,还是b/s?
于是我把这两个的优缺点例举下来,进行了一个比较。
C/S模式开发考试系统
优点:
由于C/S模式是通过客户端直接与服务器交互数据,因此其相应速度比较快,不需要通过IE浏览器进行数据传输,因此数据比较安全。
很适合适时提交数据系统。
缺点:
由于是直接用客户端直接与服务器交互,因此需要为每台电脑安装客户端,因此对电脑的配置要求比较高。
并且对系统升级的话,就增加了升级的复杂性,因为需要为每台电脑都更新客户端。
B/S模式开发考试系统
优点:
由于B/S模式是通过IE浏览器来访问,所以它适合分散性的考试系统,并且用户只需要能访问IE就可以参加考试。
由于只需要对服务器进行更新,所以更新起来比较快。
缺点:
由于采用IE浏览器经过网络传输,因此数据的安全性不高,很可能导致数据的丢失,由它没有客户端因此客户端只能进行一些数据的查询,读写,都需要跟远程服务器进行交互,因此增加了服务器的压力。
并且不适合适时的数据进行交互,这样会导致服务器压力会很大。
综合上面B/S与C/S的优缺点可知,由于我们考试系统适用与学校,并且对数据交互比较频繁,对数据的安全性需要很高。
因此我们将采用C/S模式来开发该系统。
4系统总体设计
4.1系统体系结构
模拟考试系统的操作对象分为教师和考生,角色不同,操作的模块也不同,其系统逻辑模型,如图所示。
考试模块结构图
教师模块结构图:
模拟考试流程图:
系统模块划分图
4.2系统功能概述
4.2.1题库管理
试题类别管理,主要实现试卷类别的添加、删除、修改和排序功能;
考试试题管理,主要实现试题的添加、删除和修改功能;
试题答案管理,主要实现试题的答案的添加、删除和修改功能。
动态随机生成试卷使用随机函数动态地从题库中取得整张试卷的题目,每次生成的试卷是不相同的
4.2.2题库维护
教师负责维护题库和查看统计考生成绩,学生在考试机器上随机抽取题库题目进行练习或考试,考试后统计成绩进入后台成绩表。
此权限只有老师可以使用:
(1)增加题库:
增加选择题或填空题进入题库并存档;
(2)删除题库:
从题库中删除选择题或填空题;
4.2.3试卷提交地址
将考生考试后传递文件地址保存
4.2.4卷号设置
(1)增加卷号:
增加随机出卷的卷套;
(2)删除卷号:
删除随机出卷的卷套以及卷套下属的题目。
4.2.5考试时间设置
老师可以根据考试的内容设定考试的时间,并存档到数据库。
当学生考试时只能在老师设定的时间内进行答题。
4.2.6练习系统
考生选择进入练习系统后,考生如正常考试一样答卷。
答卷完毕后将其成绩进行存档。
这样让考生知道自己对自己掌握的不足点有所了解,并且可以加强这方面的复习。
以便考试时得到最好的发挥。
4.2.7考试系统
考生进入考试系统后,就开始考试。
答题时系统不能切换到别的界面。
考试结束时,电脑会自动保留你的答题内容并进行存档。
4.2.8查看成绩
老师可以查看班上所有学生的考试成绩,了解目前学生学习的状况,对以后的教学进行更好的规划。
学生只能通过准考证号去查询自己本人的成绩
4.2.9系统实现
系统通过排课过程算法实现及:
教师录入题库--设置考试相关参数--考生考试—教师查看考生成绩。
4.3数据库设计
4.3.1数据库的概述(数据库连接方式)
(1)减少数据的重复(Redundancycanbereduced)
当在一个非数据库系统当中,每一个应用程序都有属于他们自己的文件,由于无法有系统建立的数据,因此常常会造成存储数据的重复与浪费。
(2)避免数据的不一致(Inconsistencycanavoid)
本项特色,可以说是延伸前项的一个特点,记录同时被存放在数据库的两个地方,而数据库管理系统却没有对这样重要的情况加以控制,当其中一条数据库被修改时,便会造成数据的不一致,但是,对于一个健全的数据库管理系统而言,将会对这样的情况加以控制,但有时并不需要刻意消除这种情形,应当视该数据库的需求与效率来决定。
(3)数据共享(Datashared)
对于数据共享的意义,并不是只有针对数据库设计的应用程序,可以使用数据库中的数据,对于其他撰写好的应用程序,同样可以对相同数据库当中的数据进行处理,进而达到数据共享的目的。
(4)强化数据的标
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟考试 系统 设计 实现