无纸化考试系统的设计与实现.doc_第1页
无纸化考试系统的设计与实现.doc_第2页
无纸化考试系统的设计与实现.doc_第3页
无纸化考试系统的设计与实现.doc_第4页
无纸化考试系统的设计与实现.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无纸化考试系统设计报告无纸化考试系统设计报告 I 无纸化考试系统无纸化考试系统设计报告设计报告 B11B11 计信班计信班 李广建、何锐李广建、何锐 主要内容: 针对传统考试系统容易引起考试误差等问题,在借鉴现有题库管 理和考试系统开发经验的基础上,开发实用的考试管理系统。系统以 Windows XP 平台为基础,采用 C/S 模式,依托 SQL Server 或其它数 据库。客户端应用程序主要实现信息显示,考生登录考试以及数据采 集;后台数据库服务器用于集中存放和管理业务数据。考试系统应具 有教师信息管理、考生信息管理、试题管理、考试管理、成绩处理等 功能。 基本要求: 1 必须立足学校实际情况,查阅相当数量的文献资料,独立完成. 2 系统具有一定的实用价值,能基本满足基础考试需要。 3 要求材料充实,思路清晰,语言流畅。 主要参考资料: VS.net 项目开发 Mysql 数据库技术 SQL Server 2000 数据库应用 无纸化考试系统设计报告无纸化考试系统设计报告 I 目目 录录 1 1 绪论绪论1 1.1 引言.1 1.2 研究背景.2 1.3 考试系统现状分析.3 1.4 论文概要.5 2 2 系统的需求分析系统的需求分析6 2.1 考试系统工作流程.6 2.1.1 系统流程分析.6 2.1.2 系统用例图.7 2.2 系统功能描述.7 2.3 系统设计目标.8 2.4 本章小结.8 3 3 系统开发环境及技术系统开发环境及技术9 3.1 系统硬件要求.9 3.2 系统开发工具.9 3.2.1 前台开发工具.9 3.2.2 后台数据库.10 3.2.3 前后台连接 ODBC.11 3.3 相关技术介绍.12 3.3.1 系统结构 C/S 模式.12 3.3.2 Winsock 编程13 3.3.3 ADO 技术.13 3.3.4 VB 连接 SQL 数据库.14 3.4 本章小结.15 4 4 系统总体设计系统总体设计16 4.1 服务器端.16 4.1.1 教师登录.16 4.1.2 教师用户管理.16 4.1.3 考生信息管理.17 4.1.4 题库管理.17 4.1.5 考试管理.17 4.1.6 成绩管理.17 4.2 客户端.17 4.2.1 考生登录.18 4.2.2 考试.18 4.2.3 试卷提交.18 4.3 服务器端与客户端的通信.18 4.3.1 局域网的通信.18 4.3.2 Winsock 控件19 无纸化考试系统设计报告无纸化考试系统设计报告 I 4.4 本章小结.20 5 5 系统详细设计系统详细设计20 5.1 服务器端功能设计.20 5.1.1 教师登录.20 5.1.2 教师用户管理.21 5.1.3 考生信息管理.21 5.1.4 试题管理.22 5.1.5 考试管理.23 5.2 客户端功能设计.23 5.2.1 考生登录.23 5.2.2 考试.24 5.2.4 试卷提交.24 5.3 系统数据库结构.25 5.3.1 用户登陆.25 5.3.2 考生信息管理.25 5.3.3 试题库管理.26 5.4 本章小结.27 6 6 系统功能实现系统功能实现28 6.1 考生模块.28 6.1.1 考生登录.28 6.1.2 考生考试答题.29 6.2 教师模块.32 6.2.1教师管理模块主界面.33 6.2.2考试设置子模块.34 6.2.3题库管理子模块.35 6.2.4考生信息管理子模块.35 6.2.5成绩管理子模块.36 6.3 本章小结.36 7 7 系统测试系统测试37 7.1 测试目的、方法与内容37 7.1.1 测试目的.37 7.1.2 测试方法.37 7.1.3 测试内容.38 7.2 测试结果.38 7.2.1 单元测试.38 7.2.2 集成测试.39 7.2.3 确认测试.40 7.2.4 测试结果分析.40 7.3 本章小结.40 结结 论论41 参考文献参考文献43 无纸化考试系统设计报告无纸化考试系统设计报告 I 无纸化考试系统的设计与实现 摘摘 要要 考试是教育教学的一个重要环节,传统的考试组织形式多是教师编写试卷,印 刷试卷,考生考试,教师批改试卷和成绩登记统计。随着计算机技术在现代化教学 系统中的广泛应用,以及各类考试的日益增多,改革传统的考试方法显得尤为重要。 本人在借鉴已有题库管理和考试系统开发经验的基础上,开发了一个客户端/服务器 模式的无纸化考试系统。 本考试系统在 Microsoft Windows XP 操作系统平台下开发,采用 C/S 模式,界 面使用 VB 编程技术,后台数据库采用 SQL Server 2000。客户端主要实现考生登录 考试及评分;服务器端主要用于考试相关数据的采集和管理,并对考试进行监控。 考试系统具有教师用户管理、考生信息管理、题库管理、考试管理、成绩处理等重 要功能。 系统已经经过初步测试,运行比较稳定、可靠,取得了较为理想的效果,基本 上达到了设计要求。 关键词关键词 客户/服务器模式/无纸化考试系统/VB/SQL Server 2000 无纸化考试系统的设计与实现 1 1 绪论绪论 1.1 引言引言 考试系统是依据现代考试理论,借助现代统计法和计算机技术,严格按科学程 序命题和实施考试,有效地控制各种误差,具有统一标准的考试。这种考试要求命 题科学化,管理手段规范化、现代化、制度化。考试系统应具备以下三个特征:可 靠性、有效性、实用性,即通常所说的信度、效度和区分度。优越性主要体现在三 个方面:(1)根据考试的程序,考前要预先公布考试范围、考试说明、考试方法,并 公布题样,这有利于考生作好精神准备,从而有助于考出考生的真实水平;(2)由于 试题编制标准化,使得试题难易程度相对稳定,再加之评分、计分的标准化,增加 了考生之间成绩的可比性;(3)由于采用计算机等科学工具和方法进行评分、计分, 最大程度地控制了误差,保证了考生成绩的真实性;(4)由于网络和互连网的普及, 使得通过考试系统可以顺利实施考试。以上几方面,对于高等学校改进教学工作, 提高人才培养质量水平无疑都是有益的。 目前,国内考试系统工作已起步,在高等院校每学期的考试中,采用考试系统 的科目相当少123,一是由于高等院校课程科目多,不易统一,再者人们已习惯于 过去的考试方式。为了提高考试的效率、效度、信度,实现对考试科学、规范、有 效管理,建立和完善标准化考试系统是非常必要的。 考试系统是按照系统的科学程序组织、具有统一的标准,并对误差作了严格控 制45。就是说,制定出客观而规范的标准,从命题到考试、阅卷、评分等各个环节, 努力减少或避免各种误差,从而测出考生比较真实的成绩,使测验、考试客观可信, 准确有效。考试系统一般由专门的考试机构编制试卷并组织实施。为了保证考试的 独立性和专业性,世界上许多国家和地区都有这种机构,如美国的教育测验中心、 英国的伦敦职业考试中心、日本的大学入学考试国家中心,以及香港考试局等。其 中美国教育测验中心是世界上最大的考试机构,成立于 1948 年,共有 2200 多名工 作人员,其中有人数众多的心理学、教育学、心理与教育测量学、统计学、计算机 科学以及各个学科的专家。目前在世界 170 多个国家和地区设有一万多个考点,每 年对国内外近千万名考生提供上百种不同的考试,著名的托福考试就是该中心举办 无纸化考试系统的设计与实现 2 的。 1.2 研究背景研究背景 现阶段,学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组 织一次考试至少要经过四个步骤,即人工出卷、考生考试、人工阅卷和成绩评估。 显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越 大,并且其工作将是一件十分烦琐和非常容易出错的事情,由此可能产生各种考试 误差。而考试是一个系统的过程,每个环节都可能带来误差,因此对考试的每个环 节,都要加以控制。凡是使考试结果不准确,便可认为是考试误差因素,考试中常 见的误差,来源于 3 个方面:试卷内部、考试过程、考生本身。 (1)试卷内部的误差:包括试题取样、试题数量、题型、命题技巧、试题科学性 等方面。当取样缺乏代表性,试题偏于某一方面时,不但不能对考生作出全面考察, 达不到测量目的,而且会把教学引向歧途;当试题数量太少,考生受机遇影响就较 大;试题题型如大多为论述性问答题,则评分误差就大等。其他如试题指导语不清; 用词模棱两可,题目过难,时限太短使考生仓促作答,试题科学性错误致使考生错 误作答等,都可成为误差的来源。 (2)考试过程的误差:与考试过程有关的误差因素主要是考场的环境,主考和监 考人员的态度,意外干扰如临时发现个别试卷印刷不清或装订错误等,都可导致考 试成绩的不准确。特别是考试后的评分记分,包括评分不客观,合成分数、登记分 数出差错等是常见的误差。像论述题,由于评分标准难以掌握,加之阅卷者的身份、 偏好、态度、情绪等因素的影响,评分误差几乎是不可避免的。 (3)考生本身的误差:来自考生本身的误差因素既有心理方面的,也有生理方面 的。考生对考试的动机不同,会影响其注意力、持久力、作答态度、反应速度等, 从而影响考试成绩;临考前或考试中,过度的紧张而不愉快的情绪会使考生注意力 分散;思维狭窄,适度的焦虑会使人兴奋性提高,注意力增强,对作答产生积极影 响;考生的应考经验的影响;生病、疲劳、失眠等生理因素的影响等。 传统的考试方式容易出现的这些误差在考试系统中都得到了有效控制。相比于 传统的考试方式,网上考试系统的的特点是试题取样范围大,题量多、效度高,难 度适中,区分度好,试题答法简单、明确,评分客观准确,从命题到考试、评分, 努力排除无关因素的影响。最主要的好处是一方面可以动态的管理各种考试信息; 无纸化考试系统的设计与实现 3 另一方面,计算机化考试阅卷能力快,系统可以在考试结束时当场给出考试结果, 并且计算机考试给了考生最大的公平感。 无纸化考试极大的提高了教学的灵活性,现在在许多领域已经有了广泛的应用。 最有影响的案例就是 ETS(美国教育考试中心)举办的 GRE(美国研究生入学考试) 的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会便为每个工作 日都可以参加考试。因此,采用无纸化考试方式将是以后考试发展的趋势,无纸化 考试必将会日益盛行。 课题的研究目的在于适应现代的现实情况,解决考试系统的关键技术问题,设 计具备较高实用性的系统,技术上综合运用 VB 编程技术、数据库技术等技术。该 系统集教师信息管理、考生信息管理、试题管理、考试管理和成绩处理等多项功能 于一体,力求以准确、高速信息技术为手段,实现题库管理、无纸化考试等环节的 高度自动化、科学化。通过提高测验考试的效率、增强测验考试的反馈效果,揭示 考生知识能力的局部缺陷,使教与学都更有针对性,从而提高教师的教学水平和考 生的学习效果。 1.3 考试系统现状分析考试系统现状分析 随着网络技术的发展,运行在单机上的考试系统基本上趋于淘汰趋势,主要原 因是单机运行的考试系统虽然没有网络需求,但缺乏数据共享、集中管理等功能, 这样反而给管理人员增加了较大的负担。目前,在一些硬件设施比较落后的地方, 还有这样的系统在使用;更多的是随着硬件设施的提高,选用这样系统自带的题库, 完成自测工作。 基于网络的考试系统是主流的发展方向,它大体分为适用于局域网和适用于广 域网两类8。市场上商业化的考试系统主要是前者,是针对局域网的;而后者则往 往被实现为 CGI 模式。 从实现方式上来看,适用于局域网的计算机考试系统可以分为客户/文件服务器 模式和客户/数据库服务器模式两类。 (1)客户/文件服务器模式 这种模式在早期的考试系统中运用的较多。早期的 PC 操作系统主流是 DOS, 局域网则以 Novell 网络系统为主1112。由于 Novell 网络操作系统提供了强大便利 的文件服务功能,易于被设计和开发人员接受,因此许多开发者将 Novell 网的这种 服务应用于网络考试系统中。 无纸化考试系统的设计与实现 4 在这种模式下,考试的试卷数据和考生的答卷数据都是以文件的方式存放在 Novell 网的文件服务器上;位于客户端的程序从指定的位置获取试卷文件,并将考 生的答案文件通过网络保存到文件服务器上。采用这种模式的考试系统,把整个业 务逻辑几乎完全放在客户端程序实现,服务器只是充当了一个保存文件的公共场所。 这样的系统只有很简单的管理功能,考生与其答案文件之间通常依赖事先约定好的 一种简单的对应关系,例如,以考生的考号为文件名保存考生答卷。所以,这样的 考试系统通常需要额外的人工整理工作。 (2)客户/数据库服务器模式 客户/数据库服务器模式是目前应用最为广泛的一种模式。这主要是由于 Wnidows 网络的普及应用,从而为基于客户/服务器模式的数据库应用提供了方便的 图形环境,并且为开发者提供了相当丰富的开发工具。在采用这种模式的考试系统 中,所有的数据都被保存在服务器上,并且大部分被保存在数据库中。客户端安装 有可以访问数据库的应用程序,完成几乎所有的业务逻辑,包括身份验证、显示试 题、接受答案和保存答案等。由于有数据库的支持,所有这样的系统通常拥有较为 完善的信息管理机制,它们可以很好地保存、管理有关考试的数据,例如考生的名 单信息等。因此这样的系统在很大程度上自动化了考试过程的管理工作,所以得到 了相当广泛的应用。 目前此类系统通常使用的数据库开发工具有:Visual Basic、Delphi 和 PowerBuilder 等。 Internet 的普及使得人们尝试创建可以运行于 Internet 的计算机考试系统16。从 目前的情况看,广泛采用的是通用网关接口(CGI)方式,其系统结构和工作流程也比 较明确。在这种方式下,提供给考生的是由 Web 服务器动态生成的 Web 页面,考 生在页面中填入答案后,直接将结果提交到 Web 服务器上。通常这样的系统还可以 实时改卷,并将结果反馈给考生。目前开发这样的系统除了用高级语言编写 CGI 程 序外,使用最为广泛的就是微软的 ASP (Active Server Page),还有 Perl 等。 使用其他的技术也可以创建运行在 Internet 上的考试系统1718,譬如使用 Java 技术,在 web 页面中嵌入 JavaApplet;另外一些系统是原有的局域网考试系统添加 了远程数据传输功能,采用分考场模式考试;还有的系统是采用业界提供的整套方 案,例如 Lotus Notes 群体系统。 无纸化考试系统的设计与实现 5 1.4 论文概要论文概要 第一章为绪论。 介绍了系统开发的背景和目前考试系统的现状分析; 第二章为系统需求分析。 分析了考试流程,提出了系统要实现的功能,系统的设计目标等; 第三章为系统开发环境与技术。 主要介绍了系统的开发工具与使用的技术等; 第四章为系统总体设计。 主要介绍考试系统的总体设计思路、设计原则; 第五章为系统详细设计。 主要介绍系统各主要功能的具体实现,系统的框架结构图及具体功能,数 据库结构等; 第六章为系统功能实现。 包括系统的界面、具体使用情况等; 第七章为系统测试。 主要采用了黑盒测试方法对系统进行了测试; 最后为结论,总结了论文所做的主要工作和下一步的工作计划。 无纸化考试系统的设计与实现 6 2 系统的需求分析系统的需求分析 本章将对考试系统进行需求分析,对其业务过程进行简单的描述,对系统要实 现的功能进行介绍,对系统设计目标进行简要的说明。 2.1 考试系统工作流程考试系统工作流程 2.1.1 系统流程分析系统流程分析 考试系统分为服务器端和客户端,服务器端为教师提供了一个组织考试、管理 考试的界面,客户端为考生提供一个参加考试的界面。通过身份认证后,教师可以 在服务器端进行教师信息管理、考生信息管理、试题管理、考试管理和成绩处理等 操作,而考生则可以在客户端使用登录、参加考试和交卷评分等功能。考试系统业 务流程的设计如图 2.1、2.2 所示。 图 2.1 服务器端业务流程设计 教师登录服务器端 教师信息管理 学生信息管理 试 题 管 理 考 试 管 理 成 绩 处 理 考 试 安 排 试 卷 设 置 考 试 监 控 考生登录客户端 考试信息 计 时 考 试 选择题 填空题 交卷评分 图 2.2 客户端业务流程设计 无纸化考试系统的设计与实现 7 2.1.2 系统用例图系统用例图 根据上述考试系统业务流程设计,可以得出系统用例图,如图 2.3 所示。其中 用例包括:用户登录、教师信息管理、考生信息管理、试题管理、考试管理、考生 参加考试、成绩管理等。参与者包括:教师和考生。 2.2 系统功能描述系统功能描述 考试系统的考试管理包括考试开考时间及考试时限的设置等。 在考试系统中,先由教师用户在考试系统题库管理模块中根据考生需要考试的 知识情况和相关考试项目来进行试题的添加。 然后,由教师用户在考试系统中考试设置模块中设置考试的开考时间、考试时 限以及考试的试题量等相关信息。 在考生参加在线考试时,先要正确输入准考证号,用于验证是否是有效用户, 然后才能正式参加考试。系统可以自动生成试卷(可以是一份或者是多份)。 在考试开考时间到达前,考生不可以进行答题。考生答题完毕,检查无误,可 以交卷。考试时间快结束时,系统给出提示,提醒考生尽快完成答题并交卷。到考 试时间结束时,所有考生自动强制结束答题,并自动完成试卷提交及评分等。 2.3 系统设计目标系统设计目标 考试系统考试功能的设计目标是希望通过对试卷出题,考试安排的起初设定, 考生 登录 考试 计时 教师 考生考试 考试管理 试题管理 教师信息管理 考生信息管理 试卷 题库生成 成绩管理 阅卷 图 2.3 系统用例图 评分 无纸化考试系统的设计与实现 8 考生信息的添加,取得相关信息保存到数据库表中。当考生参加考试时,必须保证 考生身份的正确,考试时间的正确,考生题目显示正确,考试结束后及时交卷的正 确以及答案比对的正确。避免在考试时考生混乱、考试没开始就答题和考试结束后 继续答题的问题。同时保证系统在同时进行多个考试和交卷时,不会相互产生干扰。 2.4 本章小结本章小结 本章在对考试系统的考试功能进行的需求分析基础上,明确了系统的主要功能: 教师信息管理、考生信息管理、试题管理、考试管理和成绩处理等。最后,提出了 系统拟达到的设计目标:考生身份正确,考试时间正确,考生题目显示正确,考试 结束后及时交卷的正确以及答案比对的正确。保证系统在同时进行的多个考试不会 相互影响。 无纸化考试系统的设计与实现 9 3 系统开发环境及技术系统开发环境及技术 3.1 系统硬件系统硬件要求要求 一台安装有数据库 (Microsoft SQL Server 2000)的机器 CPU:PIV 2.0GHZ 或更高频率的 CPU 内存:DDR333 256MB 或更多的内存 硬盘:至少 10G 以上或更多的硬盘空间 3.2 系统开发工具系统开发工具 3.2.1 前台开发工具前台开发工具 微软公司的 Visual Basic 6.0 是 Windows 应用程序开发工具,是目前最为广泛的、 易学易用的面向对象的开发工具。Visual Basic 提供了大量的控件,这些控件可用于 设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从 而有效的提高了应用程序的运行效率和可靠性 VB6.0 所具有的特点: 1.具有面向对象的可视化设计工具 OOP 在 VB 中,应用面向对象的程序设计方法(OOP) ,把程序和数据封装起视为一 个对象,每个对象都是可视的。程序员在设计时只需用现有工具根据界面设计的要 求,直接在屏幕上画出窗口、菜单、按钮、滚动条等不同类型的对象,并为每个对 象设置属性。程序员的编程工作仅限于编写相关对象要完成的功能的程序,因而程 序设计的效率可大大提高。 2.事件驱动的编程机制 事件驱动是非常适合图形用户界面的编程方式。传统的程序设计是一种面向过 程的方式,程序总是按事先设计的流程运行。但在图形用户界面的应用程序中,是 由用户的动作即事件掌握着程序运行的流向,每个事件都能驱动一段程序的运行。 程序员只需编写响应用户动作的代码,而各个动作之间不一定有联系。这样的应用 程序代码一般较短,所以程序既易于编写又易于维护。 3.提供了易学易用的应用程序集成开发环境 在 VB 集成开发环境中,用户可设计界面、编写代码、调试程序,直至把应用 无纸化考试系统的设计与实现 10 程序编译成可执行文件在 Windows 中运行,使用户在友好的开发环境中工作。 4.结构化的程序设计语言 VB 具有丰富的数据类型和结构化程序结构,而且简单易学。 5.支持多种数据库系统的访问 6支持动态数据交换(DDE) 、动态链接库(DLL)和对象的链接与嵌入技术 (OLE) 7联机帮助功能 VB 具有丰富的数据类型和结构化程序结构,而且简单易学。 由于 VB6.0 具有可视化设计截面,因此开发起来比较快。并且截面设计比较快。 并且也支持多数据库系统访问,因此今后在别的系统中继承起来也比较方便。由于 提供易学易用的程序集成开发环境,因此对于新手上手比较快。综合上面 VB6.0 的 一些优点所以我选择 VB6.0 来开发我的系统。 3.2.2 后台数据库后台数据库 用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。不同的数 据库管理系统提供不同的数据库语言。关系数据库管理系统几乎都提供关系数据库 标准语言SQL。SQL 的全称是 Structured Query Language,即结构化查询语言。 Microsoft SQL Server 2000 是一种功能强大的关系型数据库管理系统。下面将 对 Microsoft SQL Server 2000 的特点和性能进行介绍: Microsoft SQL Server 2000 具有高度的扩展性和高可靠性。Microsoft SQL Server 2000 使用了工业界最先进的数据结构,能够为要求最苛刻的企业应用提供高 度的可扩展性和高可靠性。Microsoft SQL Server 2000 在许多工业基准测试中的性能 都创立了新的世界纪录,包括事务处理性能委员会的 TPC-C 基准,它击败了运行 于任何硬件或操作系统环境下的同类数据库产品。Microsoft SQL Server 2000 的性 能还在 Windows 平台下为 SAP R/3 Sales and Distribution(SD) 标准应用程序据基准 创立了新的世界纪录。虽然 Microsoft SQL Server 2000 被设计用来充分利用最近和 将来的高端对称多处理器(SMP)技术,它还是可以把数据库的工作负荷分布到普 通的服务器集群上。这样可以实现高度的可扩展性,即只需要向数据库集群中增加 新的普通服务器即可,而不用把老系统替换为更大、更昂贵的新机器。Microsoft 无纸化考试系统的设计与实现 11 SQL Server 2000 引入了一个新的特性,被称为分布式数据库分区视图(Distributed Partitioned Views)它可以把工作负荷划分到多个独立的 SQL Server 服务器上去, 从而为实施电子商务的客户提供了无限制的可扩展性。Microsoft SQL Server 2000 直接支持最新的、高速的系统区域网络(SAN)技术。Microsoft SQL Server 2000 在它的管理控制台和安装向导中紧密集成了 4 节点故障恢复技术,从而保证了高度 的系统可用性。Microsoft SQL Server 2000 还引用了索引视图技术,运用该技术可 以为关系型数据库设计出功能的报表应用程序。 Microsoft SQL Server 2000 可以进行最快速的应用程序开发。微软提供了许多 技术和工具,作为数据库系统的标准集成组件。而且通过巧妙的设计以及自动调整、 自动管理特性, Microsoft SQL Server 2000 是客户可以更快、更容易的享受所有这 些最先进的分析技术所带来的好处,能够快书提交应用,从而赢得竞争上的优势。 微软在开发数据库服务器自动调整和自动管理技术方面一直在工业界处于领先地位。 这种技术使客户可以集中精力处理商业战略上的问题,而不是去细微调整数据库服 务器的各项参数。Microsoft SQL Server 2000 可以为最新的硬件进行优化,包括大 内存、超高速磁盘子系统以及 SAN 等,从而扩展了这项功能。 Microsoft SQL Server 2000 与 Windows 2000 的活动目录服务的紧密集成允许集中管理功能。 Microsoft SQL Server 2000 和其他企业资源,从而极大地简化了大型组织中的体统 管理任务。 3.2.3 前后台连接前后台连接 ODBC ODBC 的全称为 Open DataBase Connectivity,即开放式数据连接,是 Microsoft 公司在 1989 年推出的连接外部数据库的标准。ODBC 有以下优点: ODBC 提供了一个能访问大量数据库的单一接口。 ODBC 使客户应用程序的开发可以独立于后端服务器25。 开放式数据库连接 (ODBC) 技术为访问不同种类的 SQL 数据库提供了通用接 口。ODBC 是基于结构查询语言 (SQL) 的,以此作为访问数据的标准。此接口提 供了最大的互操作性:一个应用程序可以通过一组公用代码访问不同的 SQL 数据 库管理系统 (DBMS)。这使得开发人员能够在不以特定的 DBMS 为目标的情况下 构建和分发一个客户端/服务器应用程序。然后,会添加数据库驱动程序以将应用程 序链接到用户选择的 DBMS。 无纸化考试系统的设计与实现 12 以下特性说明了 ODBC 的灵活性: 应用程序没有绑定到专有供应商 API。 SQL 语句可以明确地包括在源代码中也可以在运行时即时构建。 应用程序可以忽略基础数据通信协议。 数据可以用方便于应用程序的格式进行发送和接收。 ODBC 是随新兴的国际 ISO Call-Level Interface 标准一起设计的。 目前提供了可用于 55 种最流行的数据库的 ODBC 数据库驱动程序。 3.3 相关技术介绍相关技术介绍 3.3.1 系统结构系统结构 C/S 模式模式 设计这个系统时,有个问题摆在我面前,那就是对于这个系统我是采用 c/s 模式 进行开发呢,还是 b/s?于是我把这两个的优缺点例举下来,进行了一个比较。 C/S 模式开发考试系统 优点:由于 C/S 模式是通过客户端直接与 服务器交互数据,因此其相应速度比 较快,不需要通过 IE 浏览器进行数据传输,因此数据比较安全。很适合适时提交数 据系统。 缺点:由于是直接用客户端直接与服务器交互,因此需要为每台电脑安装客户 端, 因此对电脑的配置要求比较高。并且对系统升级的话,就增加了升级的复杂性,因 为需要为每台电脑都更新客户端。 B/S 模式开发考试系统 优点:由于 B/S 模式是通过 IE 浏览器来访问,所以它适合分散性的考试系统, 并且用户只需要能访问 IE 就可以参加考试。由于只需要对服务器进行更新,所以更 新起来比较快。 缺点:由于采用 IE 浏览器经过网络传输,因此数据的安全性不高,很可能导致 数据的丢失,由它没有客户端因此客户端只能进行一些数据的查询,读写,都需要 跟远程服务器进行交互,因此增加了服务器的压力。并且不适合适时的数据进行交 互,这样会导致服务器压力会很大。 综合上面 B/S 与 C/S 的优缺点可知,由于我们考试系统适用于学校,并且对数 据 无纸化考试系统的设计与实现 13 交互比较频繁,对数据的安全性需要很高。因此采用 C/S 模式来开发该系统。 3.3.2 Winsock 编程编程 Windows 下网络编程的规范Windows Sockets 是 Windows 下得到广泛应用的、 开放的、支持多种协议的网络编程接口。从 1991 年的 1.0 版到 1995 年的 2.0.8 版, 经过不断完善并在 Intel、Microsoft、Sun、SGI、Informix、Novell 等公司的全力支 持下,已成为 Windows 网络编程的事实上的标准。 通信的基础是套接口(Socket) ,一个套接口是通讯的一端。在这一端上你可以 找到与其对应的一个名字。一个正在被使用的套接口都有它的类型和与其相关 的进 程。套接口存在于通讯域中。通讯域是为了处理一般的线程通过套接口通讯而引进 的一种抽象概念。套接口通常和同一个域中的套接口交换数据(数据交换也可 能穿 越域的界限,但这时一定要执行某种解释程序) 。 在一次网络通信/连接中有以下几个参数需要被设置:本地 IP 地址 - 本地端口 号 - 对方端口号 - 对方 IP 地址。左边两部分称为一个半关联,当与右边两部分建 立连接后就称为一个全关联。在这个全关联的套接口上可以双向的交换数据。如果 是使用无连接的通信则只需要建立 一个半关联,在发送和接收时指明另一半的参数 就可以了,所以可以说无连接的通信是将数据发送到另一台主机的指定端口。此外 不论是有连接还是无连接的通信都 不需要双方的端口号相同。 3.3.3 ADO 技术技术 VB 提供了多种多样的数据库访问技术来满足各种信息查询的要求,如 ADO,RDO,Data 控件,DAO 等。这些技术各有特点,它们提供了简单、灵活、 访问速度快、可扩展性好的开发技术。 其中,ADO 是 Microsoft 数据库应用程序开发的新接口,它具有较强的功能、 通用性好、效率高、占空间少等特点。它替代了原来的 DAO 和 RDO 两种数据访问 接口。另外还增加了一些用户以前没有接触到的特征。随着信息网络化的发展,对 数据库的访问宜采用 ADO 对象模型,以获得更好的性能,更大的灵活性28。在本 系统中就主要使用了 ADO 技术来进行数据库的访问。 使用 ADO 访问数据库的基本流程 (1) 在工具箱中添加 ADO Data 控件。操作为:“工程”“部件” “Microsoft ADO Data Control”。. 无纸化考试系统的设计与实现 14 (2) 在窗体上放置一个 ADO Data 控件,名称默认为 Adodc1。 (3) 设置 Adodc1.ConnectionString 属性值为“DSN=jxgldsn”。其中“jxgldsn”为 指向 jxgl.mdb 数据库的数据源名称,可通过控制面版预先设定。 (4) 设置 Adodc1.RecordSource 项,选择命令类型为“2-adCmdTable”,并在表名 项中选择“jsb”。 (5) 将 ADO Data 控件与 Text 文本框绑定。放置文本框控件于窗体,将其 DataSource 属性值设置 Adodc1,DataField 属性值设为表中一字段,如 gh。运行程 序,可用 ADO Data 控件的方向箭头来浏览。 除了应用上述引入一组数据绑定控件显示数据内容之外,还可以使用数据网格 控件 DataGrid 来显示多个字段内容。步骤为: (1) 先通过“工程” “部件” “Microsoft DataGrid Control”引入数据网格控件 并在窗体中绘制一个 DataGrid 控件。 (2) 把 DataGrid 绑定到 ADO 数据控件上。设置 DataSource 属性值为: Adodc1。 (3) 把数据库字段加入到 DataGrid 控件上。鼠标右击 DataGrid 控件,选择检 索字段,则当前数据表的字段全部导入到数据网格控件上。 3.3.4 VB 连接连接 SQL 数据库数据库 VB 连接 SQL 数据库的方式主要有以下两种: 1. 直接字符串连接: cnn.open “provider=SQLOLEDB;Persist Security Info=true;User Id=数据库用户名; PassWord=数据库密码; Initial Catalog=数据库名;Data Source= IP 地址“ 或 cnn.open “DRIVER=SQL Server; SERVER=计算机名;DATABASE=数据库名; USER=用户名;PASSWORD=密码” 2. ODBC 连接 cnn.open “provider=MSDASQL;Persist Security Info=true;User Id=数据库用户名; PassWord=数据库密码; Initial Catalog=数据库名;Data Source=ODBC 名“ 本系统主要采用了第二种方式。 3.4 本章小结本章小结 本章主要介绍了开发系统所用的工具,前台采用微软公司的 Visual Basic 6.0, 无纸化考试系统的设计与实现 15 后台数据库采用 Microsoft SQL Server 2000,前后台数据连接采用 ODBC 数据库驱 动程序,系统结构采用 C/S 模式,服务器端与客户端通信采用 Winsock 编程,数据库连 接采用 ADO 技术。 4 系统总体设计系统总体设计 考试系统分服务器端和客户器端,对应的操作对象分为教师和考生,角色不同, 操作的模块也不同。 4.1 服务器端服务器端 考试系统服务器端为教师管理功能模块,具有教师信息管理、考生信息管理、 试题管理、考试管理、成绩处理等功能,根据其实现的功能目标,总体结构框如图 4.1 所示。 4.1.1 教师登录教师登录 教师登录时,系统根据用户名和密码来判断用户的合法性。若用户名及密码正 确则登陆成功,若密码错误则给出密码出错信息要求用户重新输入密码。只有当用 户名和对应密码正确时才能通过系统验证进入到指定的主页面进行相应功能操作。 4.1.2 教师用户管理教师用户管理 教师基本信息包含教师用户名和密码。可以实现教师用户的添加、删除、修改 图 4.1 教师管理模块图 教师登录 考生信息管理 试 题 管 理 考 试 管 理 教师信息管理 成 绩 管 理 无纸化考试系统的设计与实现 16 及密码的更换等功能。 4.1.3 考生信息管理考生信息管理 考生信息是指参加考试考生的基本情况的集合。考生参加考试前必须将其基本 信息录入以便进行管理,同时也是考生登录考试系统进行考试的依据。考生基本信 息包含考生学号,姓名、所在系部和班级等。 考生信息管理包含考生信息添加、考生信息修改、考生信息删除几个模块。 考生基本信息录入后,可以对考生基本信息中数据进行修改,但所有操作需要 教师用户来完成。 4.1.4 题库管理题库管理 题库管理用来实现对试题库的管理。可以查看试题库中各题型试题量的多少, 提供试题的输入、修改和删除等功能。 4.1.5 考试管理考试管理 考试管理用来实现对考试的相关设置。并进行考试监控。 考试前应该对考试的开考时间和考试时限进行设定。 在每次考试时,每种题型必须都有一定的分数,各小题的分数总和为该大题得 分,各大题总分和为试卷总分,一般设试卷总分满分为 100 分。 4.1.6 成绩成绩管理管理 考生考试结束后教师可以按 4 种查询方式对学生考试成绩进行查询,以掌握学 生考试的情况。 4.2 客户端客户端 考试系统客户端为考生功能模块,用来实现考生考试功能。根据其实现的功能 目标,总体结构框如图 4.2 所示。 图 4.2 考生功能模块图 考生登录 选 择 题 填 空 题 交 卷 考 试 须 知 自 动 评 分 无纸化考试系统的设计与实现 17 4.2.1 考生登录考生登录 考生登录指考生验证进入考试系统。考生在客户端上输入准考证号码,提交后 和服务器上保存的数据进行对比,正确则进入考试系统,错误则给出错误信息返回 要求考生重新登陆。 4.2.2 考试考试 考生在登录后查看考试须知,考试须知详细介绍了本次考试的相关信息,如开 考时间,考试时限,考试题量及类型等等。考生可以对考试有一个全局的掌握。开 始考试后,系统自动生成随机题目,考生选择相应题型进入相应答题界面进行答题。 4.2.3 试卷提交试卷提交 如果考生完成考试要提前交卷,或者考生考试时间已到需强制收卷,则启动交 卷程序进行收卷。考试快结束时系统会提示考生尽快完成答题并进行交卷。交卷后 系统将考生答卷与正确答案进行比对并计算最后得分反馈给考生,同时将成绩保存 到数据库供教师查询。 4.3 服务器端与客户端的通信服务器端与客户端的通信 4.3.1 局域网的通信局域网的通信 在 TCP/IP 网络中两个进程间的相互作用的主机模式是客户机/服务器模式 (Client/Server model)。该模式的建立基于以下两点:1、非对等作用;2、通信完全 是异步的。 客户机/服务器模式在操作过程中采取的是主动请示方式: 首先服务器方要先启动,并根据请示提供相应服务:(过程如下) 1、打开一通信通道并告知本地主机,它愿意在某一个公认地址上接收客户请求。 无纸化考试系统的设计与实现 18 2、等待客户请求到达该端口。 3、接收到重复服务请求,处理该请求并发送应答信号。 4、返回第二步,等待另一客户请求 5、关闭服务器。 客户方: 1、打开一通信通道,并连接到服务器所在主机的特定端口。 2、向服务器发送服务请求报文,等待并接收应答;继续提出请求 3、请求结束后关闭通信通道并终止。 4.3.2 Winsock 控件控件 利用 Winsock 控件可以轻松地实现局域网通信。Winsock 控件封装了所有烦琐 的技术细节,提供了访问 TCP 和 UDP 网络服务的方便途径。只需通过设置控件的 属性并调用其方法就可轻易连接到一台远程计算机中,并且还可以双向交换数据, 而这一切都不需了解 TCP 的细节或调用低级的 Winsock APIs。 Winsock 控件可以使用两种协议:TCP 协议和 UDP 协议,本系统中使用了 TCP 协议。TCP 协议即数据传输协议,它允许创建和维护与远程计算机的连接,使 其彼此可以进行数据传输。利用 TCP 协议通讯必须分别建立客户应用程序和服务器 应用程序。 在创建客户应用程序时,必须知道服务器计算机名或其 IP 地址(存于 RemoteHost 属性)、及服务器计算机进行侦听的端口(存于 RemotePort 属性) ,然后 调用 Connect 方法。 创建服务器应用程序时,就应相应设置一个侦听端口(LocalPort 属性)并调用 listen 方法。当客户机需要连接时(connect),就会发生 ConnectionRequest 事件。为了 完成连接,你可以在 ConnectionRequest 事件中调用 Accept 方法。建立连接后,任 何一方计算机都可以发送、接收对方数据。如果你要发送数据,需调用 SendData 方 法。当接收到数据时,会发生 DataArrival 事件,调用 DataArrival 事件中的 GetData 方法就可以获得对方传送的数据。 4.4 本章小结本章小结 本章主要介绍了系统的总体流程,分析了系统各个模块的功能。教师登录主要 无纸化考试系统的设计与实现 19 用于教师用户身份验证,试题管理主要提供试题的查看、输入、修改和删除等题库 维护功能,考生信息管理用于管理要参加考试的考生的基础信息,考试管理功能完 成对考试相关参数的设定及考试监控等,教师信息管理主要管理教师用户信息,成 绩处理模块用于对考生成绩的查询等。 5 系统详细设计系统详细设计 5.1 服务器端功能服务器端功能设计设计 服务器端具有教师用户管理、考生信息管理、题库管理、考试管理、成绩处理 等功能。具体介绍如下。 5.1.1 教师登录教师登录 教师登录时,系统先检查用户名和密码,若密码正确则登陆成功,若密码错误 则给出密码出错信息要求用户重新输入密码。只有当用户名和密码均正确时才能通 过系统验证进入到指定的界面进行相应功能操作。 流程图如图 5.1 所示。 是 否 教师登录 验证通过 教师功能模块 图 5.1 教师登录流程 开始 结束 无纸化考试系统的设计与实现 20 5.1.2 教师用户管理教师用户管理 教师基本信息为用户名和密码。与考生基本信息类似,教师基本信息功能模块 包含教师信息增加、教师信息删除、教师信息修改等功能模块。 教师信息管理框图如图 5. 2 所示。 5.1.3 考生信息管理考生信息管理 考生基本信息包含考生信息输入、考生信息修改、考生信息删除几个模块。 考生基本信息录入后,可以对考生基本信息中数据进行修改。 考生信息管理框图如图 5.3 所示。 浏览考生信息 添加考生信息模块试题考生信息模块删除考生信息模块 输入考生信息 选择考试科目 提交信息并保存 显示考生信息 修改考生信息 修改数据库信息 显示删除信息 确认删除信息 删除记录 图 5.3 考生信息管理功能框图 教师信息管理 添加教师信息修改教师信息删除教师信息 提交信息并保存修改数据库信息删除信息 图 5.2 教师信息管理框图 输入教师信息 确认 显示教师信息 修改教师信息 显示删除信息 确认删除信息 无纸化考试系统的设计与实现 21 5.1.4 试题管理试题管理 考试试题题型分为选择题、填空题两种基本题型,每种题型都可以输入题目和 答案,输入后都可以进行相应的修改。 选择题包含有试题题面和试题选择的标准答案,在自动阅卷时将考生选择答案 与试题标准答案进行对比,若两者相同,则计分,否则不计分。 填空题型包含有试题题面和试题标准答案。 两种题型分别录入,保存到数据库中相应表中。 对于已经输入到试题库中的试题管理员可以调出进行修改,试卷输入后管理员 能够浏览以方便管理员输入和修改题目。 处理各种题型试题要求能够实现或达到能够输入、修改或浏览的目的。 试题管理功能框图如图 5.4 所示。 试题管理模块 试题输入功能模块试题修改功能模块试题删除功能模块 显示各字段 输入相应内容 教师提交 插入记录 显示现有内容 修改现有内容 教师提交 修改记录 提示删除信息 确认记录 删除记录 图 5.4 试题管理功能框图 无纸化考试系统的设计与实现 22 5.1.5 考试管理考试管理 试题题库建立好以后,为了可以从题库中按要求随机抽取题目,形成考生的考 试试卷,需要对考试试题的规则进行设定。考试规则主要包括设置考试时间和试题 量等内容。 (1)考试设置功能:主要用于教师用户对试卷题量的设定和考试时间的设定。 试题总量的控制,由教师用户填写试卷上试题的总数量,系统就根据其所填写 的数量生成试卷。 考生抽取题库中不同的试题组成完全不同的试卷。虽然试卷不一样,但是试卷 的分数都是一样的。 (2)考试控制功能:主要用于监控考生的考试,以及考试开始时间读取试卷、 考试结束试卷上缴试卷等功能的实现。 5.2 客户端功能设计客户端功能设计 5.2.1 考生登录考生登录 考生登录指考生验证进入考试系统。考生在客户端上输入准考证号后和服务器 上保存的数据进行对比,正确进入,错误则给出错误信息返回要求考生重新登陆。 考生登录框图如图 5.5 所示。 图 5.6 考生考试框图 考生登录 启动考试控件 考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论