摘 要
随着计算机技术的迅猛发展,学校教学和管理的信息化发展也有长足的进步,这就要求各个环节都均衡发展,从软硬件双方面把学校建设成一流的信息管理、教育教学的平台。本文设计开发的考试管理系统也是其中重要的一个方面。该系统本着减轻教师工作负担、提高工作效率、优化学生考试的流程,增强参加考试学生的身份识别,比传统的考试模式节省人力财力和时间。
系统分为三大模块:考试模块,系统管理模块和用户注册模块。其中系统管理模块是进行题目的添加、存储和删除,是系统运行的基础;查询子模块实现了对学生考试信息查询。考试模块是客户端学生或教师通过自己的姓名和学号以及密码登陆系统,进入界面时由系统按照出题教师预先设置好的试卷结构从题库中随机抽取适合的题目,形成试卷。第三部分是用户注册模块,这一模块的任务是完成师生的注册和删除。
系统选用的开发软件是VB,后台数据库为SQL Server。
本系统的开发采用结构化设计思想。系统说明书介绍了考试系统的开发初衷和背景,系统的开发工具,结构化开发的具体步骤,其中包括实体-联系模型,数据流图,功能结构图等必要的图形说明。
关键词:
上机考试;考试;系统;模块
Abstract
The system is composed of three parts: system management module, examination module, registration module. System management module is in charge of questions’ adding saving and deleting. The subjecting is the base of the system; the second part is examination module, students can log on the system by his name and number, and then turn into the examination's screen, the system will give random questions to the students. Finally come into an exam paper. The third part is users’ registration module. This module's task is to complete the students and teachers' registration and deleting.
The development software that the system chooses is VB, background database is SQL Server
The system’s development adopts ideas of construction designing. The system introduced the original intention and background of the examination system, the development tools of the system, the detail process of construction development is made up of the entity-model, the data stream chart, function and configuration chart, and other necessary chart explanations.
Keywords:
Online examination;Examination;System;Module
引 言
随着技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了教学,通过计算机实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平[1]。但是,教学软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到教学当中去,这就给软件设计人员提出了更高的设计要求。
教学包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是考试系统,同时它也是最难实现的环节。在我国,虽然教学已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析[2]。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。
考试系统是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限[3]。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!
目前,应用软件运行的模式主要有二类:Client/server模式,Browser/Web模式。后者虽然维护和升级起来比较简单,但应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。同时对安全以及访问速度的多重的考虑,建立是需要在更加优化的基础之上。比C/S有更高的要求。而C/S 程序注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑,基于上述考虑,用Client/server模式来做毕业设计的学生期末考试系统比较合适。
利用和数据库技术,应用VB可视化开发技术,我开发了基于C/S模式的学生考试考试系统这一程序。它运用方便、操作简单,效率很高。现阶段已经实现了用户注册、在线考试、随机出题、时间控制、自动判卷,试题录入、修改题库、用户管理、科目管理、管理员管理、等重要功能,也就是说实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题、出题和判卷等繁重的工作量。
1 涉及技术简介
1.1 数据库管理系统简介
数据管理指的是如何对数据进行分类、组织、存储、检索及维护。要注意,这里所说的数据,不仅是指数字,还包括文字、图形、图像、声音等。凡是计算机中用来描述事物的记灵,统称为数据。
数据库技术是计算机应用领域中非常重要的技术,随着计算机应用的不断深入,数据库的重要性日益被人们所认识,它已成为信息管理、办公自动、计算机辅助设计等方面的重要手段[4]。
对一个特定的数据库来说,它是集中、统一地保存、管理着某一个单位或某一领域内所有有用信息的系统,这个系统根据数据间的自然联系结构而成,数据较少冗余,且具有较高的数据独立性,能为多种应用服务。
因此可以看出,数据库系统是管理数据且为不同应用服务的工具。它所管理的数据是大量的有关某一方面的信息,需要较长时间的保存;它所提供的数据应该是正确的、可靠的、高效率的。
数据库管理系统简称DBMS(database management system)是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。DBMS不仅具有最基本的数据管理功能,还能保证数据的完整性、安全性,提供多用户的并发控制,当数据库出现故障时对系统进行恢复[5]。
1.2 开发工具Visual Basic 6.0
Visual Basic 6.0是面向对象程序设计的有利工具,它不仅秉承了BASIC的特点,而且为人们揭开了开发Windows应用程序的神秘面纱,有了它,您就能成为Windows环境下的编程高手。何谓Visual Basic?其中,“Visual”中文意义为“可视化”,它提供了一种创建图形用户接口(GUI)的方法。利用这种方法,用户不必书写复杂的描述接口元素外观和位置的程序代码,而只需将系统提供的对象放在屏幕上的适当位置,并通过属性窗口进行适当的设置,即可设计一个优秀的程序界面。“Basic”指的是BASIC(Beginners A11-Purpose Symbolit Instruction Code)语方,一种在计算技术发展历史上应用得最为广泛的语言[6]。Visual Basic在原有BASIC编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。
Visual Basic不仅是Visual Basic 编程系统和VBA都使用这一语言。Visual Basic Scripting Edition(VBScript)是广泛使用的脚本语言,它是Visual Basic语言的子集。这样,在学习Visual Basic 中得到的经验可应用到所有这些领域中。
此外,用户除了可以使用单独的Visual Basic程序设计环境进行程序设计外。
Visual Basic程序设计系统还被包括在Excel 、Access等众多的Windows应用软件中,以供用户进行二次开发。此外,目前使用较多的VBScript 脚本语言实际上是Visual Basic 语言的子集。因此,无论从哪方面讲,学习Visual Basic都是一件非常合算的投资。
Visual Basic语言的特点无论用户是编制一个小的实用程序,还是开发一个大型的专业系统,甚至是开发一个跨越Internet的分布式应用系统,Visual Basic都为用户提供了合适的工具。
利用Visual Basic的数据访问特性,用户可创建数据库、前端应用程序、适合于大多数流行数据库格式的服务端。
利用ActiveX技术允许用户使用其它的应用程序提供的功能,如Microsoft Word、Microsoft Excel,甚至可直接使用由Visual Basic专业版和企业版所创建的应用程序和对象[7]。
Visual Basic的Internet 功能允许用户通过程序方便的通过Internet或Intranet 访问文档和应用程序,甚至创建Internet 服务器程序。
用户最终创建的程序是一个真正的可执行文件,该文件可自由发布。
数据访问特性允许对包括Microsoft Access和其它企业数据库在内的大部分数据格式建立数据库和前端应用程序,以及可调整的服务器端部件。
分数据格式建立数据库和前端应用程序,以及可调整的服务器端部件。
Visual Basicmh 由于功能强大、简单易用而有着广泛的用户,尤其是在数据库、多媒体、商用系统的用户界面以及一般应用程序的设计等方面,Visual Basic更是有其他开发环境所不能取代的优越之处。升级到6.0之后,其功能和性能都得到了增强,汉化后的Visual Basic6.0中文版,由于有全新的中文界面,更是方便了用户的使用。
专业版为专业编程人员提供了一整套功能完备的开发工具。该版本包括学习版的全部功能以及ActiveA控件、Internet Information Sever Application Ddsigner、集成的Visual Database Tools和Data Environment Active Date Objects 和Dynamic HTML Page Designer.专业版提供的文档有Visual Studio professional Features 手册和包含全部联机文档的Microsoft Developer Network CD。
企业版使得专业编程人员能够开发功能强大的组内分布式应用程序。该版本包括专业版的全部功能以及Back Office 工具,SQL Sever 、Microsoft transaction sever、Visual Sourcesafe 、SNASever,以及其他。企业版包括的印刷文档包括Visual Studio Enterprise Features 手册以及包含全部联机文档的Microsoft Developer Network CD。
面向对象的程序设计Visual Basic6.0它提供了开发Microsoft Windows应用程序的最迅速、最简捷的方法。不论是Microsoft Windows 应用程序的资深专业开发人员还是初学者,Visual Basic6.0都为他们提供了整套工具,以方便开发应用程序。
尽管Visual Basic以非常快的速度成熟起来,但它也只有这些年间才作为实用的软件开发工具得到应用。这主要是因为在很长一段时间内忽略了数据访问这方面的功能,如果没有外部的数据库支持,不可能简单的拥有一个严格的开发工具。这个情况甚至在Visual Basic3.0中增加了对Microsoft JET数据库引擎的支持之后也没有得到改善,因为这些功能还不足以使Visual Basic像C++一样有完全的数据库访问能力[7]。随后在发布支持ODBC和RDO数据库访问方法的产品后,Visual Basic才真正加入了严格的开发工具领域。
最新发布的Visual Basic在数据库访问方面带来了一些变化,它增加了Active 数据对像(ADO)访问方法。ADO是DAO和RDO的继承者,它的目标是成为Windows开发上的唯一通用(ONE-SIZE-FITS-ALL)的数据访问方法。Visual Basic6.0在很大方面对尚未成熟的ADO提供支持,大约提供了六个使用ADO