1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。摘 要论文从计算机基础教育情况的实际情况出发, 经过详细的系统调查而开发了一个较为实用的计算机模拟考试系统。本文从系统的开发意义及其必要性和可行性, 系统的设计思想, 系统的分析过程, 组题的实现, 系统的功能作用以及开发总结等方面介绍了计算机模拟考试系统的分析和开发的过程。本系统模拟人工出卷, 采用一定的算法从试题库中抽取符合要求的试题组成试卷。而且还具有系统管理、 修改删除、 添加题目知识点等功能。本系统的前端开发工具是Visual Basic6.0程序语言设计, 后台数据采用的是Microsoft Access。开发方法采用面
2、向对象法和原型法结合, 在实现功能, 满足需要的前提下, 尽量做到操作简便、 界面简单、 使用方便。 关键字: 驾驶员考试系统 VB ACCESSAbstractThe paper embarked from the computer elementary education situations actual situation, undergoes the detailed system investigation to develop a more practical computer simulation test system, This article from systems d
3、evelopment significance and the necessity and the feasibility, systems design concept, systems parsing process, group topics realization, aspects and so on systems foundation as well as development summary introduced the computer network foundation simulated test systems analysis and the development
4、 proccss. The full text is divided ten parts, specially regarding pulled out the topic the design and realizes has carried on the detailed introduction. This system simulation is artificial the volume, use certain algorithm from to try in the question bank to extract conforms to the request test que
5、stion composition examination paper. And also has the system administration, the inquiry, the revisiondeletion, the input and so on functions. This systems front end development kit is object-oriented programming language Visual Basic6.0 , what the backstage database uses is Microsoft Access. The me
6、thod of exploitation uses object-oriented method and the prototype law unifies, in realizes the function, meets the needs under the premise, dose the operation to be simple as far as possible, the contact surfack is friendly, easy to operate.Key words: Test system for dirver; VB; ACCESS目 录第一章 引 言11.
7、1选题背景11.2 国内外现状研究21.3设计目标21.4课题研究意义21.5 关键技术介绍31.5.1 VB编程语言31.5.2 ACCESS简介3第二章 可行性分析52.1 可行性研究52.2 系统的需求5第三章 系统设计与实现73.1 处理流程设计73.2主界面设计83.3 主要模块的设计与设计93.3.1 登陆模块93.3.2用户管理模块123.3.3 试卷设置模块14第四章 系统调试与测试174.1 程序调试174.2 程序测试174.3 系统测试结果18第五章 结束语19致谢20参考文献21第一章 引 言随着计算机时代的到来, 各行各业都大量的使用计算机来处理各种各样的数据, 进行
8、烦琐的数据统计、 数据处理等工作。在驾驶学校日常有着诸多的操作: 查询某学员理论学习情况, 查看她学习的次数, 学习的时间数, 查看她是否能经过理论考试等。可是, 随着驾驶学校学员的增多, 交警部门采用计算机进行理论考试, 学员的文化素质参差不齐, 学校的日常工作就越来越多, 不但仅要教学员的驾驶理论知识, 考察学员的学习情况, 还要教会驾驶学员学会基本的电脑操作。传统的教学弊端日趋突出: 学员一般都有自己的工作, 不能与全日制一样开课, 学员一般要求随到随学, 学习之后进行学习情况检查, 马上知道自己的学习效果。而传统的教学因为采用试卷进行学习情况的检查, 不但驾驶学校要出卷, 还要给学员改
9、卷, 最后还要给学员评卷。学员一来就得给她上课, 各学员的进度又不一样, 很多时候基本上是一对一的教学。这样的学习不但浪费学校的财力、 人力, 还不能取得令学员满意的学习效果。大量的人力财力就白白浪费在传统教学上, 同时还要给学员多开设一门电脑基础课来保障学员能顺利进行交警部门的理论考试。不但教学效率低, 而且教学成本大幅度上升, 不利于市场的竞争。因此, 为适应发展, 驾驶学校需要一个适用于其特殊性的软件, 以方便其日常教学工作所用, 提高学员的学习效率, 减轻教学人员的劳动强度, 提高其劳动效率, 真正做到解放生产力, 创造更多的劳动价值; 给驾驶学校更好的宣传, 扩大学校的知名度。使学校
10、更规范、 科学、 高效、 有更大的发展潜力。我在指导老师的指导下, 结合怀化职业技术学院驾驶学校的实际情况, 决定单独开发一款适用于驾驶学校使用的驾驶理论考试系统的单机版本。1.1 选题背景在当今信息飞速发展的时代, 计算机已经越来越深如每个人的学习、 生活当中, 掌握计算机知识已经成为每个人必须的生存技能。考试是对我们学习效果检验的最直接, 也是最传统的一种方式。而随着社会时代的不断发展, 中国计算机和网络的不断发展和普及, 传统的纸屑考试完全能够被计算机辅助考试系统所取代。传统的纸面考试不但费时、 费力, 费纸, 而且批改起来也十分费力。计算机模拟考试相对于纸面而言具有: 省时, 省力,
11、存储方便等优点。因此已经被越来越多的应用到各种考试当中。比如: 计算机等级考试、 驾照考试等。传统的人工出卷方式, 考试方需要花大量的人力、 物力和财力去组织考试人员考卷, 而且科学性、 合理性、 公平性和保密性都不能达到要求, 而且造成经费的重复投入。人工出卷已不适应当前社会快速发展需要。这种情况下, 如何利用计算机管理试题的数据信息及自动代替教师传统的手工出卷从而减少人力、 物力及财力上的消耗已成为急需解决的问题。1.2 国内外现状研究虽然现在处在网络时代, 互联网上也有很多用来进行驾驶理论模拟考试的软件, 比如”统一驾照模拟考试系统”,程序设计的相当不错, 但驾驶学员反映模拟考试后不能够
12、查看自己做错了的题目, 不知道哪些题目做错了, 不能够将自己做错了的题目有针对性地再练习一次, 因此学习效果不是很好; 进行出题时速度慢, 有时还有重复出题的现象; 再有软件虽然提供了很多的功能, 但对驾驶学校来说根本用不上, 或是有了那些功能反而不好, 比如”统一驾照模拟考试系统”中的”有的放矢”因为有的对本软件熟悉的学员在用了之后将她所选的保存了, 结果是后面上机的学员因为直接进了前一个考生的练习环境, 有很多考试题库没有练习到, 影响了学习进度。当然, 网上还有其它的驾驶考试软件, 但都存在这样或那样的不足, 或都是针对大众的, 没有一款完全适用于我们当地的情况; 或是有某些较好的软件,
13、但因为不能修改软件, 使用的同时又在给别人做宣传。这对学校的宣传, 品牌效应有一定的影响。如果有一款为驾驶学校量身定做的驾驶理论教学的软件, 将会给驾驶学校带来巨大的经济效益, 同时还会带来很大宣传效应。1.3 设计目标因为以上原因, 我决定对驾校进行调研, 参照交警部门驾驶员理论考试系统, 设计一款出题快速准确, 无出题重题现象, 能按考试题库进行顺序出题, 随机出题, 能对选定题库进行针对练习, 练习时能马上提示学员所选答案是否正确, 模拟考试后能对考试中做错题进行重点练习, 练习或考试中能进行计时等功能, 适合于本地学员学习的运行在WINDOWS下的驾驶理论考试软件。1.4 课题研究意义
14、 本世纪以来, 由于社会生产力的迅速发展和科学技术的突飞猛进, 人们进行信息交流的深度和广度不断增加, 管理所需要的信息量急剧增长, 同时对信息的处理要求及时、 准确, 这导致了传统的信息处理方法和手段已不能适应现代管理的需要; 电子计算机的诞生和在信息处理中的应用, 标志着一个崭新时代”信息时代”的开始, 它使管理现代化成为可能。一定意义上说, 管理信息系统的生产和发展是建立在电子计算机基础之上的。硬件方面, 从1946年第一台计算机到如今第四代的语言, 过程的设备形态万千, 速度突飞猛进。总的来说, 计算机技术的发展, 其性价比大幅的下降, 使得其被大量广泛的使用。针对现实中的各种应用需求
15、, 相应的产生很多技术体系、 技术标准, 这又大大的推动了信息化进程。现在中国的驾驶员模拟考试的管理水平还停留在半自动化的基础上, 这样的机制已经不能适应时代的发展, 因为它浪费了许多人力和物力, 在信息时代这种传统的管理方法必然被计算机所取代。软件作为一项有力的工具, 只能当此种工具, 与我们的实践相结合起来的时候, 才具有重大的社会价值。因此根据当前实际的情况, 开发一套驾驶员模拟考试系统是十分必要的。1.5 关键技术介绍1.5.1 VB编程语言 Microsoft Visual Basic(简称VB)是在原有的BASIC语言的基础上进一步发展, 至今已包含了数百条语句、 函数关键词。无论
16、对专业人员还是初学者, VISUAL Basic 都提供了整套开发工具, 能够说她是开发Windows应用程序最迅速、 最简捷的方法。VB其实就是一个可视化的编程语言, 在VB中还引进了控件概念, 在Windows中控件的身影无处不在, 各种各样的按钮、 文本框等都是控件种类, 因此在VB编程语言前是要经过复杂的工作的。VB最大的特点就是”可视化”和”事件驱动”。”可视化”是指开发图形用户界面的一种方法, 而”事件驱动”是指windows应用程序的运行是经过事件来驱动的, 用户或系统触发了一个事件, 就执行程序员在此事件中编写一段代码。1.5.2 ACCESS简介ACCESS 是微软公司推出的
17、基于Windows的桌面关系数据库管理系统( RDBMS) , 是Office系统应用软件之一。它提供了表、 查询、 窗体、 报表、 页、 宏、 模块7种用来建立数据库系统的对象; 提供了多种向导、 生成器、 模板, 把数据存储、 数据查询、 界面设计、 报表生成等操作规范化; 为建立功能完善的数据库管理系统提供了方便, 也使得普通用户不必编写代码, 就能够完成大部分数据管理的任务。第二章 可行性分析2.1 可行性研究该阶段经过对系统目标的初步调研和分析, 提出可行性方案并进行论证。我们这里主要从技术可行性、 经济可行性和操作可行等方面进行分析。( 1) 经济可行性开发该系统所需的相关资料能够
18、经过已存在的相关系统进行调查采集, 所需的其它应用软件、 硬件系统也易于获得, 因此 , 开发成本较低。使用本系统后, 与传统方式相比, 具有比较好的效率, 能够节省人力、 物力和财力, 因此, 从经济的角度来看, 该系统是可行的。( 2) 技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作, 软硬件配置是否满足开发的需求等。本系统用的是VB开发语言, 调试相对简单, 当前的计算机硬件配置也完全能满足开发的需求, 因此在技术上是绝对可行的。软件方面: 由于当前单机模式相对发展成熟, 故软件的开发平台成熟可行, 它们速度快、 容量大、 可靠性能高、 价格低, 完全能满足系统的需求。
19、本系统的开发, 是典型的Mis开发。采用VB编程语言, 已无技术上的问题。( 3) 运行可行性运行可行性是对组织结构的影响, 现有人员、 机构和环境对系统的适应及人员培训补充计划的可行性。当前信息化技术已经相当普及, 各类操作人员水平都有相当的高度, 因此在运行上是可行性的。( 4) 时间可行性从时间上看, 在两个月的时间里学习相关知识, 并开发系统, 时间上是有点紧, 可是不是不能够能实现, 经过一段时间的努力功能基本实现。2.2 系统的需求本阶段对系统管理系统的应用情况做全面调查, 以确定系统目标。用户对系统的需求我们从一下几方面进行分析。( 1) 系统开发模式用VB开发系统管理系统基于C
20、S模式, 系统软件和数据集中存放于服务器中, 软件的安装与升级在服务器上进行。所有的工作基于浏览器, 安装、 使用、 维护、 升级十分简单。( 2) 系统性能需求为了保证系统能够长期、 安全、 稳定、 可靠、 高效的运行。系统处理的准确性和及时性是系统的必要性能。由于本系统的添加功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源, 其准确性和及时性很大程度上决定了系统的成败。在系统开发过程中, 必须采用一定的方法保证系统的准确性和及时性。( 3) 系统运行环境系统的性能要求一般指系统需要的存储容量以及后援存储, 重新启动和安全性, 运行效率等方面的考虑。硬件系统环境一般是: C6
21、00、 1GMB( RAM) 、 500MB( HD) 。系统运行时对数据的保密性要求不高, 对一般的数据不要求进行加密。另外, 对其它软件几乎没有依赖性, 程序健壮性较好。硬件条件: 酷睿2 CPU、 1G RAM、 10G硬盘以上的PC机。软件条件: Windows XP第三章 系统设计与实现对于开发驾驶模拟系统而言, VB 6.0是一个非常有用的开发工具。一般来说, 任何一个管理系统都会具有一个基本的结构, 如图控制反馈处理输入输出 这个基本的结构由五个基本要素组成: 输入、 输出、 处理、 反馈和控制。在这个模式中, 一部份输出反馈给控制机制, 并与所需求的限制作比较, 然后输出相应的
22、信息去进行调整或输入, 对上图的基本定义如下: 输入是进入系统所需处理的原始资料。输出是送出处理所得的结果。处理是根据条件对输入的资料进行处理的过程。反馈是指当输出结果不令人满意或希望得到更好的结果时, 再重新回到输入。控制主要监视步骤是否正常运行。3.1 处理流程设计系统处理流程主要包括数据增加、 删除、 修改流程。添加信息资料时, 要先进入管理员系统, 进入后点击添加按钮, 在弹出来的对话框进行数据输入。如要删除, 点击删除按钮。修改则点击修改按钮。流程如下: 添加信息资料修改题目题库输入数据登录管理员系统administrator 删除题目结束3.2 主界面设计在主界面的窗体是由相关的菜
23、单组成,双击运行该系统, 弹出用户登录界面窗体, 进入管理员系统, 弹出主界面。经过运行界面, 出现一下界面: 这就是关于机动车驾驶员模拟考试系统的主界面, 由菜单与工具按钮组成。具体有: 系统菜单、 视图菜单、 题库菜单、 帮助菜单以及相关的按钮。( 1) 系统菜单包含的以下子菜单: 用户管理: 管理用户信息; 学员考试: 直接登录学员考试界面; 系统参数: 试题的比例; 选项: 背景设置; 退出: 退出系统。( 2) 视图菜单包含的以下三个子菜单, 分别是显示工具条、 显示标签文字、 显示大图标。( 3) 题库菜单包含以下的子菜单, 分别是添加题目类别、 修改题目类别、 删除题目类别。(
24、4) 帮助菜单。3.3 主要模块的设计与设计3.3.1 登陆模块为了保证系统安全, 保证管理员权限的用户才能正常使用和操作系统, 登录过程的设计是必不可少的。在系统登录界面中使用了相应的控件设置管理员权限, 运行时只要输入管理员用户名(administrator), 和密码, 就能够登录到系统。代码: Command( 确定) 控件: Private Sub OKButton_Click() On Error GoTo ErrHandler Dim rs As ADODB.Recordset Dim szSQL As String 是否选择了用户名 If txtZh.Text = Then I
25、f txtPwd.Text = Then 为防止万一, 设置一个超级密码 密码正确 msZh = administrator msMC = miLx = 0 msSjbh = mbIsCancelled = False unload Unload Me Else MsgBox 请输入帐号! , vbOKOnly + vbInformation, Me.Caption End If Exit Sub End If create the rs szSQL = SELECT zh,mc,pwd,lx,sjbh FROM tbUser WHERE Lcase(zh)= & LCase(txtZh.Te
26、xt) & Set rs = New ADODB.Recordset rs.Open szSQL, madoCONN, adOpenKeyset, adLockPessimistic, adCmdText If Not rs.EOF Then rs.MoveLast 如果没有记录, 则退出过程 If rs.RecordCount 0 Then Zh = & Adodc1.Recordset(zh) 系统管理员不能删除 If Zh = administrator Then MsgBox 系统管理员帐号administrator不能删除! , vbOKOnly + vbInformation, M
27、e.Caption Exit Sub End If 缺省用户不能删除 If Zh = student Then MsgBox 缺省用户帐号student不能删除! , vbOKOnly + vbInformation, Me.Caption Exit Sub End If - If MsgBox(真的要删除当前记录吗? , vbQuestion + vbYesNo, 提示) = vbYes Then Adodc1.Recordset.Delete adAffectCurrent save the data Adodc1.Recordset.Update End If End IfEnd Sub
28、修改: Private Sub cmdEdit_Click() Dim frm As New frmUserAddEdit On Error Resume Next frm.UserADORecordset = Adodc1.Recordset Load frm frm.Show vbModalEnd Sub关闭: Private Sub CancelButton_Click() Unload MeEnd SubDataGrid控件代码: Private Sub DataGrid1_DblClick() Call cmdEdit_ClickEnd Sub3.3.3 试卷设置模块”试卷设置”系统
29、由菜单栏与相应的控件组成。主要功能是”题库”菜单的命令: ”添加题目类别、 修改题目类别及删除题目类别”。添加题目类别: 能够在题库中添加相应的知识点。代码: Private Sub mnuTmlb_Click() Dim frm As New frmTmlb Dim rs As ADODB.Recordset Dim MaxID As Integer Dim szSQL As String On Error GoTo ErrHandler frm.Show vbModal If frm.IsCancelled = True Then Exit Sub End If - Set rs = ga
30、doCONN.Execute(SELECT Max(id) as MaxID FROM tbTmlb) If Not rs.EOF Then rs.MoveLast If Not rs.BOF Then rs.MoveFirst If rs.RecordCount = 1 Then MaxID = ToInteger(rs(MaxID) + 1 Else MaxID = 1 End If Set rs = Nothing szSQL = INSERT INTO tbTmlb(id,name) VALUES( & CStr(MaxID) & , & frm.TmlbMC & ) 添加到数据中 g
31、adoCONN.Execute szSQL 添加到树形控件中 Call AddTmlbNode(MaxID, frm.TmlbMC) Exit SubErrHandler: Set rs = Nothing ErrMessageBox 添加题目类别mnuTmlb_Click(), 提示End Sub修改题目类别: 即修改题库中的信息内容。代码: Private Sub mnuTmEdit_Click() On Error Resume Next 修改题目 Dim frm As New frmTmEdit Dim nodeCur As Node On Error Resume Next If A
32、dodc1.Recordset.RecordCount 0 Then - If MsgBox(真的要删除当前记录吗? , vbQuestion + vbYesNo, 提示) = vbYes Then mrsTK.Delete adAffectCurrent save the data mrsTK.Update End If End IfEnd Sub第四章 系统调试与测试4.1 程序调试在设计系统的过程中, 存在一些错误是必然的。对于语句的语法错误, 在程序运行时自动提示, 并请求立即纠正, 因此, 这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的
33、逻辑错误导致的错误结果。这类错误隐蔽性强, 有时会出现, 有时又不出现, 因此, 对这类动态发生的错误排查是耗时费力的。4.2 程序测试软件的测试在软件生命周期中占据重要的地位, 在传统的瀑布模型中, 软件测试学仅处于运行维护阶段之前, 是软件产品交付用户使用之前保证软件质量的重要手段。近来, 软件工厂界趋向于一种新的观点, 即认为软件生命周期每一阶段中都应包含测试, 从而检验本阶段的成果是否接近预期的目标, 尽可能早的发现错误并加以修正, 如果不在早期阶段进行测试, 错误的延时扩散常常会导致最后成品测试的巨大困难。事实上, 对于软件来讲, 不论采用什么技术和什么方法, 软件中仍会有错误存在。
34、测试的目的事为了尽可能多的找出错误, 应该直接针对软件比较复杂的部分或是以前比较多的位置。软件测试是为了发现错误而执行程序的过程, 便于及时改正。为了保证测试的质量, 将测试过程分成几个阶段, 即代码审查、 单元测试、 集成测试、 确认测试和系统测试。( 1) 单元测试单元测试集中在检查软件设计的最小单位一模块上, 经过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况, 以及编码错误。( 2) 集成测试集成测试是将模块按照设计要求组装起来同时进行测试, 抓哟目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响; 全程数据结构可能有错误等。( 3)
35、确认测试确认测试目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后, 已经按照设计吧所有的模块组成一个完整的软件系统, 接口错误也已经基本排除了, 接着就应该进一步验证软件的有效性, 这就是确认测试的任务, 即软件的功能和性能如同用户所合理期待的那样。( 4) 系统测试软件开发完成后, 最终还要与系统中其它部分配套运行, 进行系统测试。包括恢复测试、 安全测试、 强度测试和性能测试等。4.3 系统测试结果经过测试, 系统完全能够实现最初的设计目的。系统界面友好: 本系统主程序由于采用VB6.0语言开发, 系统运行在中文windows环境中, 系统设计是采用了大量图标按钮, 具有界面
36、友好, 简单, 直观, 易用的特性, 使学员及管理人员易于使用本系统。由于整个系统用户界面简单易用, 既使系统设计人员减少培训用户的工作量, 又使各终端用户使用系统方便。有良好的容错性: 本系统应用程序设计是充分考虑用户在使用本系统时可能产生的误操作, 对一些输入数据进行了校验, 对可能引起出错的操作给出人性化的提示, 尽量减少一般性用户误操作导致的系统出错。具有一定的通用性: 系统用户界面的设计简洁, 易用, 系统实现的内部信息和不必要的操作均不在用户界面出现, 系统均为中文提示操作。这就使系统开发人员几乎无需培训用户, 也减少用户学习使用本系统的顾虑。检索速度快: 采用的算法与题数是线性关
37、系, 使用中七百道题目全部抽完仅需几秒钟。安全性: 不同的用户(管理员和驾驶学员)拥有不同的权限, 用户根据自已权限使用本系统。第五章 结束语本系统经过计划, 需求分析, 系统设计, 编写代码及测试阶段。经过”驾驶理论模拟考试系统”这个课题的开发, 我既提高了系统设计和软件编码的能力, 自身各方面素质也得到了提高。特别是在出题算法没有现成能够借鉴的情况下, 自己设计多种可行算法进行比较, 从中选出最佳算法的过程, 使自己对计算机编程有了新的认识。首先, 这样的一个系统开发, 就要在整个开发过程中贯穿一种系统工程的概念, 强调的是系统的统一和协调。其中, 最主要的是开发使用讲究合理, 指导老师的
38、协作, 经常互相交流经验和知识, 使整个系统得到顺利开发。其次, 在开发过程中, 由于工作的需要, 我更加熟悉了VB编程, 熟悉可视化编成技术使用, 对此种编成方式有了更深一层的理解, 但由于时间的关系和本人的编写能力有限, 再所难免的存在着一些问题, 敬请各位评委的批评与指正! 经过本课题的实训, 使自己熟练掌握了VB进行数据库的编程及硬件维护, 把书本的理论融合于实际的运用当中, 根据用户需求搜集资料, 了解她们的需求, 而编写文档, 选择工具进行程序开发, 再有经过测试, 这一系列的软件开发工作, 使我在软件设计得到了较高层次的锻炼, 这次实训为我以后的进行项目开发工作奠定了基础。致 谢 本次毕业设计中, 陈一魁指导老师为我的毕业设计和论文提出了良好的