精品基于Delphi的题库系统和试卷生成系统论文-定

更新时间:2024-05-02 21:46:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

石河子大学

信息科学与技术学院毕业设计论文

课题名称: 基于Delphi的题库系统和试卷生成系统 学生姓名: 学 号: 学 院: 专业年级: 指导教师: 职 称: 完成日期:

刘静 陈广春 20054210 20054187 信息科学与技术学院 信息管理与信息系统05级

陈凤 李志刚 助教 副教授 二〇〇九年五月三十日

基于DELPHI的题库系统和试卷生成系统

学生:刘静 陈广春

指导老师:李志刚 陈凤

[摘 要]一般情况教师想出一份试卷,要到庞大的题库里一道一道的把题找出来,或是从几本相关的书里把题一道一道挑出来。这样即费时又费力,而且很难保证试题的覆盖面和把握好试卷的难度。为了能够帮助教师轻松的出一份高质量的试卷,所以我们开发了本系统。本系统能由教师根据教学资料的要求预先录入试题,试题根据“所属章”、“题型”、“难度”这三个条件进行分类。待需要考试时,设定一定的条件,系统就自动从题库中选取试题并生成试卷。该系统成卷模式分为手工出卷(教师自己选择题目)和自动出卷两种,成卷后可导出为Word格式的文档。本系统共分为五大模块:系统管理、题库管理、试卷管理、教师管理、帮助。 [关键词:系统管理;试卷管理;题库管理

Question base system and papers system on base

Delphi

Student: Liujing Chenguanchun Teacher: Lizhigang Chenfeng

[Abstract]:The general situation teacher thinks out a paper,reach huge exam pool each finds out the question, or shoulder the question together out from several relevant books. Time-consuming and also strenuous like this, and very difficult to guarantee coverage rate and paper degree of difficulty of examination question. In order to help teachers easily a high-quality papers, we developed the system. This system can be input the examination question in advance according to the request of teaching materials by the teacher, examination question according to \ \condition , automatic to choose the examination question and turn into the paper of the exam pool system have to need to wait. System this become rolls of mode divide into for produce roll (Mr. oneself choose the topic ) and produce two kinds of Vol.s automatically by hand, roll later lead not happenning to Word file of the forms. This system is divided for five major module altogether: System management , exam pool management , paper management , teacher are managed, helped. [Key Words]:system management; papers management; question base management

I

目 录

第一章 绪论 ............................................................ 1 1.1课题提出 ......................................................... 1

1.2研究背景及现状 ................................................... 1 1.3研究的目的和意义 ................................................. 1 1.4 论文的组织 ...................................................... 2 第二章 相关开发工具简介 ................................................ 3 2.1开发工具简介 ..................................................... 3

2.2程序运行环境 ..................................................... 4 第三章 需求分析 ........................................................ 5 3.1引言 ............................................................. 5

3.2任务概述 ......................................................... 5 3.3系统功能分析 ..................................................... 6 3.4可行性分析 ....................................................... 6 第四章 系统总体设计 .................................................... 8 4.1 概要设计 ........................................................ 8

4.2 详细设计 ........................................................ 9 第五章 试卷生成系统各模块的具体实现 ................................... 12

5.1 登录功能模块设计 ............................................... 12 5.2用户管理模块设计 ................................................ 12

5.3试卷功能模块设计 ................................................ 13 5.4题库功能模块设计 ................................................ 14 第六章 系统测试及其维护 ............................................... 16 6.1系统测试平台简介 ................................................ 16

6.2测试方法 ........................................................ 16 6.3具体测试过程 .................................................... 17 第七章 系统分析、总结与展望 ........................................... 19

7.1 系统分析 ....................................................... 19

7.2 展望 ........................................................... 19 7.3 总结 ........................................................... 20 参 考 文 献 ........................................................... 21 附录:系统主要代码 .................................................... 23

II

第一章 绪论

第一章 绪论

1.1课题提出

本设计课题系自行拟定并经指导老师同意和我院批准。

1.2研究背景及现状

在以往的教学中,老师出试卷大多由手工出卷,这样生成的试卷往往会有知识点分布太集中、难易程度不当、分值分布不均等一些缺点;这样,既增加了老师的负担,也没有达到很好考查学生学习的真实水平,造成教学上的失误。

基于以上的原因,有很多从事软件开发的人员,在试卷自动生成方面做了很大的研究。目前这一领域也以良好的发展姿态而不断进步,早期已经有了一些类似的系统,但经过软件开发人不断的完善,大致形成了具备如下功能的系统:删除试题、批量录入试题、试题交流、合并题库、自定义试题参数等一些功能,其中试题交流功能非常实用,主要用于同事间交流试题。系统“体积”非常小,压缩后只有几百K。平时只要将一些试题或从网络下载的试题,按“学科”、“章节”、“知识点”、“题型”、“难易程度”、“备注”六个参数进行归类,录入题库,需要用时,只要输入一些查询条件即可查出所要找的试题。生成试卷非常方便,只需几分钟就可以生成一份试卷,生成的试卷还配有答案,更重要的是软件能与Word的完美结合,试题、答案的编辑、试卷的排版打印全部由Word来完成,试卷和答案都可保存为*.doc格式。

1.3研究的目的和意义

1.3.1研究目的

随着科学技术不断提高和计算机科学日渐成熟,计算机强大的计算和记忆存储功能已为人们所深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。试卷生成系统,可以做为学校教学活动带来很大的便利。

开发此系统就是为了能让学校的教学评估环节变得更加的科学化、合理化与规范化,同时也可以节省人力。

1.3.2 研究意义

长期以来,学校出卷一般都还采用手工出卷,而手工出卷的弊端有:效率低、浪费时间、浪费人力、并且也不能保证试卷的规范化和合理化。

因此,本系统的成功开发对于学校的教学评估的科学化、合理化和规范化意义重大,同时该系统也为学校节省了时间与人力,提高工作效率。

1

第一章 绪论

1.4 论文的组织 第一章 绪论

第二章 相关开发工具简介 第三章 需求分析 第四章 系统总体设计

第五章 试卷生成系统各模块的具体实现 第六章 系统测试及维护 第七章 系统评价以及总结和展望

本论文在绪论部分对课题的提出、研究的背景和现状、研究的目的和意义以及论文的组织结构作了介绍;然后在第二章对系统相关概念进行了基本阐述;第三章,则从几个不同的方面进行了需求分析;在第四章,介绍了系统的总体设计,包括各系统的系统功能模块和数据库设计的逻辑结构等。第五章主要讲述了试卷各功能模块的具体实现情况,包括设计思想和具体实现;第六章,我们对本系统各个模块进行了测试。然后在第七章,针对系统实现的重点和难点,以及系统的优点和不足我们作了总结,并对本系统的未来发展作了一定的展望。

2

第二章 相关开发工具简介

第二章 相关开发工具简介

2.1开发工具简介

2.1.1 Delphi 7.0的特点

Delphi是Borland公司出品的开发工具,Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented Language),它是当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用Delphi开发应用软无疑会大大地提高编程效率。 在众多的开发工具中,我们选择Delphi具体原因如下:

1、开发的高效 2、语言的高效 3、编译的高效 4、执行的高效 5、维护的高效 6、界面的友好

2.1.2数据库连接方式简介

在Delphi中,连接数据库的主要有两种方式:一是:BDE ,二是ADO 。现在我们来大致比较一下这两种技术的优缺点:

BDE(Borland Database Engine)是Delphi颇具特色的数据库连接管理技术。凭借窗体和报表,BDE可以访问诸如Paradox,dBASE,本地InterBase服务器的数据库,也可访问远程数据库服务器上的数据库,如Oracle,SyBase,Informix等C/S数据库中的数据库,也可访问经ODBC可访问的数据库管理系统中的数据库。

ADO(ActiveX Data Objects)是微软提供的一项技术。通过ADO,可以方便的访问各种类型的数据库,特别是OLEDB数据库。ADO已成为访问数据库的新的标准接口。从Delphi 6.0开始Delphi添加了对ADO的支持,以便让用户能迅速实现对终端用户用来做商业决策的数据库的一致性访问,结合Delphi本身的开发式数据组件结构,程序员可以很快地建立应用程序,用来把自己的商业数据库通过Internet发送给客户,最终用户以及整个销售环节。通过ADO,Delphi 7.0也能让用户快速访问关系或非关系数据库以及E-Mail和商务文件系统。

这两者提供了几乎相同的功能,在进行产品开发时,势必要做一个精心的比较。虽然ADO技术提出的时间不长,并被定位为工业标准的,而且其在性能上由于当前没有良好的数据库引擎支持,其性能还不够完美,但是,我们应该要注意到Borland公司已经宣布停止发展BDE了。并且在我们的前期的学习中,接触到得最多的也是ADO。因此,我们选择了ADO做为我们的数据库访问组件。

3

第二章 相关开发工具简介

2.1.3 OOP简介 软件开发人员都会经常听到,看到“面向对象”这个词,程序员也时常把它挂在嘴上。那么什么是真正的“面向对象”,什么是面向对象的编程。

面向对象是一种思维方式,一种方法论,面向对象的程序设计(Object-Oriented Programming,简记为OOP)也是一种编程方法,只不过它是从更接近真实世界的视角来分析问题,使用更接近人们理解真实世界的方法来抽象问题,这种方法称为“面向对象”(OO),它代表的是一种认识世界,分析问题,解决问题的方法,因此它是一种方法论。而面向对象编程则是将这种方法应用于程序设计的方法。当你会使用面向对象的方法去思考,用面向对象的模式去分析和解决问题的时候,才是真正的“面向对象”了。

OOP同时也是Delphi诞生的基础。OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进Windows编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。而Delphi是完全面向对象的,这就使得Delphi成为一种触手可及的促进软件重用的开发工具,从而具有强大的吸引力。OOP与Delphi的结合主要具有以下三个特性:

1、继承性。Delphi提供大量的可被二次开发的类,每个类都可被继承。 2、封装性。Delphi的封装性主要由类的私有域和保护域来实现的。 3、多态性。Delphi的多态性主要是通过虚拟方法和动态方法来实现的。

一些早期的具有OOP性能的程序语言如C++,Pascal,Smalltalk等,虽然具有面向对象的特征,但不能轻松地画出可视化对象,与用户交互能力较差,程序员仍然要编写大量的代码。Delphi的推出,填补了这项空白。您不必自己建立对象,只要在提供的程序框架中加入完成功能的代码,其余的都交给Delphi去做。欲生成漂亮的界面和结构良好的程序丝毫不必绞尽脑汁,Delphi将帮助您轻松地完成。它允许在一个具有真正OOP扩展的可视化编程环境中,使用它的Object Pascal语言。这种革命性的组合,使得可视化编程与面向对象的开发框架紧密地结合起来。

2.2程序运行环境

操作系统:Windows 2000/Windows XP 办公软件:Office XP/Office 2003

4

第三章 需求分析

第三章 需求分析

3.1引言

为了规范以及条理的进行本系统的设计,也为使得后续的开发和维护工作变得有趣而轻松,编写了本系统的需求分析说明书;旨在开发过程中进行参考,使该系统在需求的规范之内,避免重复劳动,加快开发进度以及提高开发效率;同时也是为后期系统的维护服务提供指南。

3.1.1编写目的

本软件需求说明书旨在分析、确定系统所要完成的功能,系统本身性能、操作使用、运行环境、与外界的数据接口、输入/输出等各相关方面的要求,用来给系统的开发人员和用户阅读,同时也作为开发过程中的开发标准,当双方确认之后,以供开发参考。

3.1.2开发背景

近年来,随着算计算机的发展和普及,在我们的日常生活中都已离不开了计算机,大到科学研究,小到网上购物。可以说计算机在现在的生活中起着无可替代的作用。同样,计算机在学校的管理也发挥着巨大的作用。教师管理、学生管理都离不开它,学校中另一项重要的工作就是教学评估,而试卷又是教学评估的一个重要手段,因此,一份好的试卷对学校的教学活动是非常重要的。

在以往,教师想要出一份试卷,往往要去庞大的题库中将题目一道道的挑选出来,或是从很多本的相关资料里选取题目,这样不尽浪费人力和时间,而且也不能很好的把握试卷的难易度和覆盖范围。为了节省人力和时间,并且保证试卷的合理性、科学性和规范性,开发此系统。

3.2任务概述

3.2.1用户需求

该系统的主要使用者是需要出卷的教师。首先需要系统能够正常运行,能够根据教师需要实现生成试卷的功能,并且输出方式要是.doc,这是最基本要求。好的系统第一要素就是正确与稳定;其次才是操作界面的简洁、易操作。

3.2.2功能需求

该系统主要要实现的功能有: 1、抽取现有试卷:为了方便用户能管理试卷,此模块可以有预览试卷、预览生成试卷答案、删除试卷的功能。

2、自动生成试卷:用户能选择生成试卷的题型,试题数量,试题难度,以及试卷分值便可生成试卷,且有预览试卷,预览答案,保存试卷和答案的功能。

5

第三章 需求分析

3、手动生成试卷:为了能按照用户的意愿组卷,用户可以按试题所涉及的知识点浏览各种题型,生成一份知识覆盖面广泛的试卷,并能保存试卷。

4、题目录入:根据“章节”、“难易度”、“题型”等信息,将题目信息录入后台数据库。 5、题目更新:可对题库中的题目进行修改和删除。

3.2.3 非功能需求

系统界面需求:简洁、易用、美观、大方、标准。

系统质量需求:易用、健壮、兼容性好、运行稳定、有一定安全保障。

系统可靠性需求:建立了各种相关规则,能确保数据在系统所需要的环境下,在用户正常的操作或误操作下运行不会产生数据丢失。系统可移植性,即系统能够在Windows 2000/NT/XP等不同操作系统中运行。

本系统易学易用,教师可以在短时间内学会并能进行管理。

3.3系统功能分析

模块功能的体现,主要是在试卷的生成上。

1、手动生成试卷时要不断的将用户选择的题目临时存储起来,由于记录一道题所包含的信息不是很多,再因为这些信息一会儿还要在“生成试卷”和“保存答案”里使用,所以我们设置了3个TStringList的全局变量,来分别记录先题目的题型、题目的编号和题目的难易度。

2、在自动生成试卷里最主要的一点就是如何生成一个覆盖知道点广且试题不重复的试卷。其中的关键算法在于如何生成一个不重复的随机数序列。在Delphi里随机数的产生函数是Random,然而如果用这个函数来生成一定范围内的随机数重复的机率太大了。然后采用不重复随机数的算法来实现该功能。

3.4可行性分析

任何一个系统的开发,都将受到时间和资源等客观因素的限制。因此,在项目开发任务之前,都有必要进行可行性分析,以减少项目开发风险和避免人、财、物等方面的浪费。可行性分析主要包括技术可行性和经济可行性等。

我们正走进一个信息时代,信息技术将从根本上改变人类社会的生产方式和生活方式,各行各业的业务管理现在都已经相继使用计算机来处理,可以说用计算机进行信息管理是一个总趋势。本系统主要是针对事先存放好的题目来生成符合要求的试卷。通过本系统,教师可以更快、更方便地出一份自己想要的试卷。

开发该系统,涉及到的技术问题主要是数据库和一门可视化开发的编程语言。在这方面,数据库主要是用来存放数据,就目前主流的数据库来看,可以考虑采用Microsoft SQL Server,Oracle或Microsoft Office套件中的Access数据库。Oracle是一个安全、可靠的并且支持面向对象设计的数据库系统。Oracle的RDBMS产品在全球数据库市场中已占有很大的份额,同时Oracle又有海量存储的特点。相对于Microsoft SQL Server而言ACCESS的易用性和可维护性相对差一点,但Oracle的成本相对较高,不适合于学校使用。而由于ACCESS在与SQL的比

6

第三章 需求分析

较中,考虑ACCESS使用方便以及设计工具强大,我们选择了ACCESS。在前台开发工具方面,我们使用Delphi 7.0作为开发工具,以更好地利用其对数据库开发方面的强大支持功能的特点。综上,开发一个学生宿舍管理系统在技术上是完全可行的。

经济可行性也就是要考虑开发系统的成本和收益的比较。学校的信息化管理建设,主要目的在于使学校在目前的环境下,能够系统化、全面化和快速化地进行学校各方面的管理工作。在信息社会,只有快速准确地充分利用有用的社会信息,提高决策速度和质量,才可以为学校带来高效的工作效益和丰厚的经济效益,并且开发本系统也不需要什么太大的资金,安装也不需要资金。综上,在经济上具有完全的可行性。

7

石河子大学学士学位论文 第四章 系统总体设计

第四章 系统总体设计

4.1 概要设计

4.1.1系统数据库设计

在比较了Sql和Access的优缺点之后,由于本系统不需要太大的数据库作为后台,功能也不需要太复杂,由Access可以完全实现,所以选择了Access 来做的后台数据库,根据需求说明和在开发中遇到的实际情况,对数据表单进行了设计。有用户名、权限、题型、难易度、章节等九章表,在系统的运行过程中,还会产生两张表,分别为试卷(Sj)和试卷题目(Sjt),分别用于存储在系统运行过程中生成的试卷,主要的几张表如下:

表4-1用户名(用户)表

字段中文名 姓名 密码 权限 权限

字段英文名 UserName Password QXID QXID

字段类型 文本 文本 数字 数字

字段长度

20 18 长整型 长整型

主键 是

表4-2 题型表(Type)

字段中文名 编号 名称

字段英文名 TypeID Password

字段类型 自动编号 文本

字段长度

20

主键 是

表4-3 难易度(NYD)

字段中文名 编号 名称 字段中文名 题号 题型 题目 选项A 选项B 选项C 选项D 正确答案 难易度 出自章节

字段英文名 BH 难易度 字段英文名 BH Type

TM A B C D DA NY CZ

字段类型 自动编号 文本 字段类型 自动编号 数字 备注 文本 文本 文本 文本 文本 文本 数字

8

字段长度

8 字段长度 长整型 255 255 255 255 255

1 长整型

主键 是 主键 是

表4-4选择题(XuanZeTi)

石河子大学学士学位论文 第四章 系统总体设计

表4-5填空题(TianKong)

字段中文名 题号 题型 题目 空1 空2 空3 空4 空5 应填数 难易度 出自章节 字段中文名 题号 题型 题目 答案 难易度 出自章节 字段中文名 题号 题型 题目 答案 难易度 出自章节

字段英文名 BH TypeID

TM K1 K2 K3 K4 K5 YTS NY CZ

字段类型 自动编号 数字 备注 文本 文本 文本 文本 文本 数字 数字 文本 字段类型 自动编号 数字 备注 备注 数字 文本 字段类型 自动编号 数字 备注 备注 数字 文本

字段长度 长整型 100 100 100 100 100 长整型 长整型 50 字段长度

长整型

长整型 50 字段长度

长整型

长整型 50

主键 是

主键 是 主键 是

表4-6 简答题(JianDaTi)

字段英文名 BH TypeID TM DA NY CZ 字段英文名 BH TypeID TM DA NY CZ

表4-7 综合题(ZongHeTi)

4.2 详细设计

4.2.1系统功能设计

总的来说,本系统其实是一个有机的整体。而本系统的整体性决定整个系统的各个部分必须紧密结合而又要完成各自的功能。根据实际需要,在功能设计中,我们将系统分为四大功能: 系统管理功能,主要用来完成用户管理和退出系统;试卷功能,主要能够完成抽取现有试卷、自动生成试卷、手动生成试卷等三大功能;数据库管理,主要完成题库录和题库维护两大功能。

9

石河子大学学士学位论文 第四章 系统总体设计

以下是总体框架图:

加用 户用户管理 试卷生成系统 系统管理试卷功能理数据库管帮助 退出 抽取现有试卷 手动生成试卷 自动生成试卷 题库录入 题库维护 关于 添息修改用户信删除用户 图4—1 系统功能图

题目修改题目删除4.2.2程序流程图

1、抽取现有试卷的流程图:

程序开始

输出试卷 预览试卷 确认删除 保存试卷 输出答案 程序退出 图4—2抽取现有试卷流程图 选择试卷 删除试卷 执行删除 10

石河子大学学士学位论文 第四章 系统总体设计

2、自动生成试卷的流程图:

程序退出 图4—3动生成试卷流程图 保存答案 预览试卷 保存试卷 自动选择试题 输入试卷信息 程序开始 3、手动生成试卷流程图

程序开始 题量 设置分数 选择试题 检查总分 保存试卷 程序结束 图4—4手动生成试卷

11

石河子大学学士学位论文 第五章 试卷生成系统各模块的具体实现

第五章 试卷生成系统各模块的具体实现

5.1 登录功能模块设计

5.1.1设计思想

登录管理关系到对用户权限的限制和整个系统的安全,所以对用户名和用户密码验证应严格控制,以增加系统的安全性。

5.1.2具体实现

利用DataModule中的用户级别判断、用户名存在判断、密码验证代码段,进行用户登录信息验证。如果登录的用户符合数据库中的信息,即用户名和密码都符合数据库中的信息,才能登录成功,否则无法正常进入系统。

5.1.3登录界面

5—1 用户登录界面

5.2用户管理模块设计

5.2.1用户管理设计思想

1、新增用户:当需要加入新用户时,具有使用该功能权限的系统管理员授予新用户以登录该系统的用户名,密码和用户级别权限;

2、用户信息修改:用户对自己的密码进行修改,并用确认信息来保证输入的信息以准确无误;

3、删除用户:具有该功能权限的系统管理员删除其他用户。

12

石河子大学学士学位论文 第五章 试卷生成系统各模块的具体实现

5.2.2具体实现 1、新增用户:在实现该功能时,需要用到用户表。我们利用DataModule中的用户级别判断、进行用户信息验证。

待验证完毕,确认当前用户具有该权限,对新增用户进行初始密码设置。为了保证密码无误,特别设置“确认密码”框,以保证所输入密码正确。当所有非空,且符合其他要求,则存入用户表中。

2、用户信息修改:本系统限定只允许修改当前登陆的密码,并且该功能仅限于系统管理员。需要编程实现确认判断是否是当前用户在执行修改信息,只有当前登录用户才能修改其密码。

3、删除用户:删除用户需要通过编码判断一下系统管理员所要删除的用户是否存在,如果该用户不存在,则系统拒绝删除,并且还要判断是否是删除当前登录用户,当前登录的用户不可被删除。

5.2.3用户管理界面

5—2 用户管理界面

5.3试卷功能模块设计

5.3.1试卷功能设计思想

1、抽取现有试卷:抽取已有试卷,可以以Word文本文档的方式查看,并且查看相应的答案。

2、自动生成试卷:根据需要设置题量、题型、分值,由系统自动生成试卷。 3、手动生成试卷:从显示的题目信息中,根据需要选择题目生成试卷。

13

石河子大学学士学位论文 第五章 试卷生成系统各模块的具体实现

5.3.2具体实现 根据Delphi自身提供的控件TWordApplication、TWordDocement、TWordFort来解决输出终端是Word文本形式的难题;在利用Delphi中提供的ADO组件来实现前台界面与后台数据库的连接,主要用的ADO组件有:TDBGrid、TADOQuery、TDataSource。其中TDBGrid通过其它两个组件与后台数据库相连,用来显示题目信息和已有试卷。TADOQuery通过TDataSourc可以完成一些查询功能。这也是本系统的特色所在,以Word形式输出。在抽取现有试卷、自动生成试卷和手动生成试卷中分别都有预览试卷按钮,通过改按钮就直接可以在Word文档中查看试卷。其中,在自动生成试卷和手动生成试卷中还用Delphi自带的TcheckTree,主要用来显示目录信息。

5.3.3试卷功能界面

5—3 试卷功能界面

5.4题库功能模块设计

5.4.1题库功能设计思想

题库功能主要包括两大块功能:题库的录入和题库的维护以及章节表的维护。其中题库的维护可以包括题目的修改、题目的删除。

5.4.2具体实现

14

石河子大学学士学位论文 第五章 试卷生成系统各模块的具体实现

利用TADOQuery控件实现此功能模块与数据库的关联,并通过相应的SQL语句实现相关的题型与后台数据库相应的表的联系。在题目录入时,选择要录入的题型,将所有的选框填满后便可以将题目录入数据库中相应的表。

5.4.3题库功能界面

5—4 题目录入界面

5—5 题目维护界面

15

石河子大学学士学位论文 第六章 系统测试及其维护

第六章 系统测试及其维护

6.1系统测试平台简介

表6-1

硬件平台 CPU 主板 内存 硬盘 显卡 显示器 Intel P4 1.5G Intel 850芯片组的GA-8TX-C 2×128M的三星Rambus内存 Seagate Barracuda 7200.7 80G Unika 小妖G9800 美格770PF,17寸纯平显示器 软件环境 操作系统 办公软件 显卡驱动 Microsoft WindowsXP简体中文专业版+SP1 Microsoft Office 2003 nVIDIA ForceWare驱动56.72版For Win2000/XP 6.2测试方法

测试在软件开发过程中一直都是备受关注的,即使在传统的软件工程中,也有一个明确、独立的测试阶段。随着软件危机的频频出现以及人们对于软件本质的进一步认识,测试的地位得到了前所未有的提高。测试已经不仅仅局限于软件开发中的一个阶段,它已经开始贯穿于整个软件开发过程,人们已经开始认识到:测试开始的时间越早,测试执行的越频繁,所带来的整个软件开发成本的下降就会越多。Extreme Programming更是把测试推到了极限的位置,一切软件开发活动都要从首先编写测试代码开始。

为了使本软件运行更加稳定,我对它进行了全面的测试,测试分为二部分来进行,一是:界面测试;二是功能测试。

首先是界面测试,为了使软件在不同的的操作系统平台上运行界面能保持原来的风格。我们的开发平台如上介绍。我们将完整程序另一台计算机,相关配置如下:Windows2000+15寸显示器;程序运行界面正常,但由于测试的计算机的显示器是15寸,显示的范围比较小外,界面上的字体等设置都保持得相当好。没有出现类似字体变形的情况。第二个平台:Windows Me +17显示器,测试结果:字体有些不正常了。后来在网查找了很多相关的资料,得出这是由于Window Me或Windows 98和我们的开发平台的操作系统Window XP的字体集不一样造成的。解决方案是:把软件的字体设置成:宋体+9号,字符集使用:CHINASE_GB2312。至此软件

16

石河子大学学士学位论文 第六章 系统测试及其维护

的界面测试顺利完成。

二是进行功能的测试。我的功能模块主要是试卷生成。而试卷生成后都是输出到Microsoft Office Word里。而Office的版本又非常多,因此,一直担心在不同的Office平台下软件会有不同的运行结果。实际测试结果如下:在Windows 2000+Microsoft Office 2000的平台下,试卷功能里的预览功能不能用了。界面停留在“正在链接Microsoft Office Word ......”这里,一看就知道没有办法和Microsoft Office Word链接了。换平台测试,这回是在Windows 2000+Office XP,程序正常运行了包括试卷预览等功能都正常运行。再换平台:Windows XP+Office 2003程序同样完全正常运行,由此可以总结出在低于Office XP的平台下程序无法和办公软件交互。只有在 Office2003以上的版本使用。

6.3具体测试过程

6.3.1用户登录测试

打开试卷生成系统,登录界面进行如下测试:

1、空用户名或者空密码情况下,点击确定,拒绝进入系统,提示“用户名不能为空,请输入或选择用户名”;

2、错误用户名情况下,点击确定,拒绝进入系统;

3、正确用户名,错误密码情况下,拒绝进入系统,提示“密码错误”;

6.3.2用户管理

点击“添加新用户”,填写所需信息,进行如下测试:

1、用户名写为“刘静”(此为本系统默认的管理员用户名),系统拒绝添加,并提示“用户已存在”;

2、密码确认时,使与上一输入框不一致,系统拒绝添加,提示“两次密码输入不一致,请重新输入”;

填写尚未存在的用户名,设置密码,确认密码,设置级别,添加成功。 本模块的其余功能类似测试。测试成功。

6.3.3数据库管理

选择数据库管理。进入界面后选择执行的操作,是“备份数据库”还是“还原数据库”。然后点击“执行”,可执行相应的操作。但备份的文件只是数据库信息,是以.ini格式存在的。

6.3.4试卷功能

1、点击“抽取试卷”。进入相应的界面,根据时间可查看相应的试卷,点击“预览试卷”。即可查询试卷,还可以点击“预览答案”,查看试卷答案。

2、点击“手动生成试卷”。进入相应的界面,根据需要,选择题型,再点击左边的目录树,选择相应的章节,预览题目中的题目,然后选择所需要的题目,点击“加入试卷”,弹出“添加成功”,当选择完所有试卷所需题目时,设置相应的分值,然后点击“保存试卷”,弹出“试卷已经保存成功”的对话框,即测试成功。

3、点击“自动生成试卷”。进入相应的界面,根据需要,设置各个题型的题量和分值,点击“生成试卷”,弹出“恭喜你试卷按你的要求生成了”,测试成功。

17

石河子大学学士学位论文 第六章 系统测试及其维护

6.3.5题库功能

主要包括题库录入和题库修改、删除等功能的测试。

1、在主界面上点击“题库录入”,弹出题录入界面,选择所要录入的题型,按照要求填写各项信息,然后点击“录入”,看到界面上无任何提示并且界面为题号自动更新后的题号,测试成功。

2、在主界面上点击“题库维护”,弹出题库维护界面,选择要更新或删除的题型,可看到相应的题目,然后选择题目,对题目进行修改或删除,弹出“更新成功”或“删除成功”的对话框,测试成功。

18

石河子大学学士学位论文 第七章 系统、分析总结与展望

第七章 系统分析、总结与展望

7.1 系统分析

7.1.1 系统的特点

本系统的特点主要有以下几个方面: 1、系统界面简洁、大方,用户友好性较强;

2、以文件菜单、树形菜单和常用图标按钮三种形式进行操作,方便用户操作等等; 3、通过用户身份权限的验证、题库的更新满足了系统安全性和实用性的要求。

7.1.2系统的难点

本系统实现的难点主要有以下几个方面:

1、实现数据库各表之间的关联,即对于相关的数据表,不能只是各自孤立地存在和变化; 2、题库录入有很大的工作量;

3、系统的用户操作安全性的实现,即对于用户的操作必须做相关的限定,对于可能的错误操作要进行相应的处理。

7.1.3系统的优点

本系统的优点主要有以下几个方面:

1、相对较全面地实现了试卷生成的需求。功能上较为全面;

2、对其他相关功能,比如题库录入,手动抽取试卷以及自动抽取试卷,使得系统更为完善。

7.1.4系统的局限性

本系统的局限性主要在以下几个方面:

1、对于题库录入处理得不理想,需要庞大的工作量; 2、某些模块,由于时间等原因,其设计不尽合理。

7.2 展望

本试卷生成系统功能相对完整和完善,但是随着学校计算机的广泛应用,我认为,在后续的开发和发展中,本项目课题可能在以下几方面得以发展:

1、与更多的题库系统实现连接,以方便资源共享交流; 2、实现更多的试卷方式如其他表格形式、文本形式; 3、呈现出其他更先进的特征:题库录入的简单化、智能化。 有理由相信,具有上述特征的系统将在不久的将来得以推广和普及。

19

石河子大学学士学位论文 第七章 系统、分析总结与展望

7.3 总结 本软件的设计目的是在题库建立管理维护和试卷生成方面为教学单位和人员提供方便和帮助。通过这几个月的毕业设计,我们到很多以前没有学到的Delphi开发技术,在信息系统开发实践上更是取得了很大的进步。经过大量的测试和试用,我们深信本系统达到了方便和实用的设计目的,并在软件界面和易用实用等方面有着独到之处。

另一方面,本系统的设计由于我们开发经验和水平所限,在一些逻辑设计、代码编写上还存在着漏洞。

本次毕业设计不仅仅是我们大四毕业生毕业前的最后一次能力检验,更是一次很好的学习和锻炼体验。从中,我们不仅学到了系统设计所涉及的相关知识,也学到了很多其他知识,比如时间管理、分工组织、团队合作等等

20

石河子大学学士学位论文 参考文献

参 考 文 献

[1] 陈明.软件工程学教程[M] .科技出版社,2002.

[2] 林志斌,刘德明.MIS管理信息系统[M].北京.清华大学出版社.2006. [3] 飞思科技产品研发中心. Delphi7数据库应用开发[M].电子工业出版社,2003. [4] 飞思科技产品研发中心.Delphi6开发者手册[M].电子工业出版社,2002 . [5] 申旻 .Delphi高手突破[M].清华大学出版社,2002,302.

[6] Steve Teixeira,Xaviver Pacheco著,龙劲松,王瑜,谢尚书译.Delphi6开发人员指南[M].机械工业出版社 .2003.

[7] 乔林 .参透Delphi/Kylix[M].中国铁道出版社,2003.

[8] 李维 .Inside深入核心VCL 架构剖析[M].电子工业出版社,2004.

[9] 《电脑编程技巧与维护》杂志社 编著.Delphi编程技巧[M].北京:中国电力出版社,2005. [10] 张立科编写组 .Windows API 函数参考手册[M].人民邮电出版社.2002. [11] 严蔚敏,吴伟民著.数据结构[M].第二版 .清华大学出版社.2001.

[12] 张岭,宋坤,梁冰.Delphi程序开发范例宝典[M].北京:人民邮电出版社,2006,50-69.

[13] 梁水,李方超,赛奎春著.Delphi程序开发技术大全[M].北京:人民邮电出版社,2007,120-160. [14] 姜仁武主编.Delphi企业资源管理项目开发实践[M].科学出版社,2005.

[15] 张春林,马勇,刘均编著.Delphi7数据库系统设计与开发[M].清华大学出版社,2003. [16] 王春红,张冬雯,朱研等著.Delphi7 程序设计.清华大学出版社/北京交通大学出版社,2004. [17] 周爱民著.Delphi源代码分析[M].电子工业出版社,2004.

[18] 储启明,周旭编著.Delphi7典型实例开发篇[M].清华大学出版社,2003. [19] 刘华编著.Delphi基础教程.北京:清华大学出版社,2004.

[20] 赵颖. Delphi数据库管理信息系统开发案例精选[M].北京.清华大学出版社.2006 [21] 张海藩编著.软件工程导论(第四版)[M].北京:清华大学出版社,2003.

21

石河子大学学士学位论文

致谢

四年的大学生活即将结束,而在我们的人生旅途中又是一个新的开始。四年的学习生涯中在师长、亲友的大力支持下,走得辛苦却也收获很多。

在论文完成过程中,首先感谢我们的知道老师,从选题到开题文档的撰写,在到后期系统的知道和毕业论文的撰写,都给我们了很大的帮助。

同时也感谢学院为我们提供良好的做毕业设计的环境和所有关注我们的老师。 最后再一次感谢所有在毕业设计中曾经帮助过我们的良师益友和同学,以及在设计中被我们引用或参考的论著的作者。

22

石河子大学学士学位论文 附录

附录:系统主要代码

1.登录界面代码

procedure TEnter_Form.Enter_BtnClick(Sender: TObject); //登录系统 var

Password:string; begin

if XM_CB.Text='' then begin

MessageBox(handle,'用户名不能为空,请选择或输入用户名!','错误',MB_OK or MB_ICONERROR); exit; end;

DL_ADOQ.Close;

DL_ADOQ.SQL.Clear;

DL_ADOQ.SQL.Add('Select Password,QXID From 用户 Where UserName=(:Name)'); DL_ADOQ.Parameters.ParamByName('Name').Value:=XM_CB.Text; DL_ADOQ.Open;

if DL_ADOQ.FieldByName('Password').IsNull then Password:='' else Password:=DL_ADOQ.FieldValues['Password']; if Password=MM_E.Text then begin

YH:=XM_CB.Text;

QX:=DL_ADOQ.FieldValues['QXID']; self.Hide;

DL_ADOQ.Close;

FreeAndNil(DL_ADOQ); with TMain_F.Create(nil) do try

ShowModal; finally Free;

Application.Terminate; end; end else begin

MessageBox(0,'密码错误请重新输入!','密码错误',MB_OK or MB_ICONERROR); MM_E.Text:=''; end; end;

23

石河子大学学士学位论文 附录

2.试卷生成代码

procedure TMain_F.YLSJ_FBtnClick(Sender: TObject); //预览试卷 const

BF_Name: array[1..10] of string = ('一、', '二、', '三、', '四、', '五、', '六、', '七、', '八、', '九、', '十、'); JG: string = ' '; var

Template,NewTemplate,ItemIndex,Doc_Type,Doc_Visible:OleVariant; ItemIndex: OleVariant;

NewDocument: _Document;

FZ, TL, BF, STH, i, YTS: integer; temp, AppPath: string; begin

AppPath := ExtractFilePath(Application.ExeName); //取得本程序的路径 //显示进度窗口

RateProcess_F.Show;

RateProcess_F.CZ_P.Caption := '正在链接Microsoft Office Word......'; RateProcess_F.Rate_Gauge.MaxValue := SJT_ADOQ.RecordCount + 25; RateProcess_F.Repaint; //重绘窗口,否则显示不出新设置的控件属性 try

SJ_WA.Connect; except

MessageBox(handle, '无法连接,也许没有安装Word', '连接出错', MB_Ok or MB_ICONERROR);

RateProcess_F.Close; Abort; end;

RateProcess_F.Rate_Gauge.Progress := RateProcess_F.Rate_Gauge.Progress + 10; //SJ_WA.Visible := False;

//SJ_WA.Caption := '题库系统与试卷生成'; //建立一个新文档

{Template := EmptyParam; NewTemplate := false;} ItemIndex := 1;

NewDocument := SJ_WA.Documents.Add(EmptyParam, EmptyParam, EmptyParam, EmptyParam);

RateProcess_F.CZ_P.Caption := '正在新建Microsoft Office Word 文档......';

RateProcess_F.Rate_Gauge.Progress := RateProcess_F.Rate_Gauge.Progress + 5; RateProcess_F.Repaint;

//建立WordDocument连接, 用第二种方法不容易出错 //SJ_WD.ConnectTo(SJ_WA.Documents.Item(ItemIndex)); SJ_WD.ConnectTo(NewDocument);

24

石河子大学学士学位论文 附录

SJ_WD.Windows.Item(ItemIndex).Caption := '操作系统期末试卷'; //此文档的第一个窗口的标题

RateProcess_F.Rate_Gauge.Progress := RateProcess_F.Rate_Gauge.Progress + 5; RateProcess_F.Repaint;

//因为Word进行拼写检查需要很多时间,所以首先关闭检查 SJ_WA.Options.CheckSpellingAsYouType := False; SJ_WA.Options.CheckGrammarAsYouType := False; //设置Word的字体 SetFont(1, 0, 0, 22); //设置段落对齐方式

//SJ_WA.Documents.Item(ItemIndex).Paragraphs.Alignment :=wdAlignParagraphCenter; SJ_WD.Range.InsertAfter('操作系统期末试卷' + #13);

RateProcess_F.Rate_Gauge.Progress := RateProcess_F.Rate_Gauge.Progress + 5; RateProcess_F.Repaint;

SJ_WA.Documents.Item(ItemIndex).Paragraphs.Alignment:=wdAlignParagraphLeft;

SJ_WD.Range.InsertAfter('学校___________ 班级________ 姓名___________ 得分_____ ' + #13);

SetFont(0, 0, 0, 14);

25

本文来源:https://www.bwwdw.com/article/aymg.html

Top