试卷自动生成系统毕业论文.doc
《试卷自动生成系统毕业论文.doc》由会员分享,可在线阅读,更多相关《试卷自动生成系统毕业论文.doc(31页珍藏版)》请在三一办公上搜索。
1、山西信息职业技术学院毕业论文(设计)试卷自动生成系统论文指导教师 信息管理系 学生所在系部 信息管理系 专业名称 软件技术 论文提交日期 2013年3月20日 论文答辩日期 2014年03月25日 2014年03月25 日试卷自动生成系统 摘 要运用可视化Delphi开发出试题自动生成系统.利用其提供的各种面向对象的开发工具, 建立系统应用原型,然后进行需求迭代,不断修正和改进,直到形成满意的可行系统。该系统结构良好、使用方便,题库数据输入简单,系统能够实现人工选题和随机抽题两大功能. 包括后台数据库的建立、维护以及前端应用程序的开发两个方面。该系统有安全的用户登录模块、方便快捷的浏览界面、易
2、于操作的功能模块。本文的分析基于知识点的试题库结构基础上,阐述以知识点难度系数和题型为主要控制参数的组卷算法的建立与实现方法。该系统的运用不仅提高了教师的工作效率,而且可以实现真正意义上通用性。 【关键词】Delphi; SQL Server; 试题自动生成系统Title:Papers automatically generated systemMajor:Software TechnologyName: Signature: Supervisor: Signature: AbstractTh Using visual Delphi to develop the automatic gener
3、ation of test system. Its use of the various object-oriented development tools, the establishment system application prototype, then carries on the demand iteration, and constantly revised and improved, until the formation of a viable system satisfaction. The structure of the system is good, easy to
4、 use, simple data entry questions.Browse function module interface is easy to operate the system user login module, safe and convenient. This paper based on the analysis of the structure of examination database based on knowledge points, set forth the method and implementation of test paper generati
5、ng algorithm based on knowledge difficulty coefficient and the topic as the main control parameters. The appli. The application of this system can not only improve the teachers working efficiency, and can achieve the true sense of universal. 【Key words】Delphi; SQL Server目 录 1 概述12 数据库理论基础和开发工具12.1 数
6、据库理论基础12.1.1 数据库管系统22.1.2 数据库系统设计22.1.3 数据库设计范式分析32.2 数据库开发工具42.2.1 基本数据库组件42.2.2 Delphi 7.0 的一些控件52.3 SQL 语言在Delphi中的运用53 通用试卷生成系统的定义73.1 问题的定义73.2 可行性分析83.3 需求分析103.3.1 题库管理103.3.2 试卷管理103.4 系统总体结构设计123.5 试题设计流程图如下:124 前台用户部分模块设计134.1 用户登录窗口设计134.2 主界面设计134.3用户管理144.4权限管理144.5密码管理154.6数据备份和数据还原154
7、.8 数据库部分表的列举164.9 试卷生成175 主要功能的实现代码175.1用户登入功能的实现代码175.2 数据备份的实现代码205.3 试卷自动生成的实现代码( 部分)215.4 本章小结276 总结27参考文献28致 谢291 概述 随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。随着经济文化水平的显著提高,人们对生活质量及工作环境的要求也越来越高。在计算机飞速发展的今天,简化试卷的手工操作势必所然,。所以如何设计好仓库管理系统,尽可能地减少仓库管理的重复性和低效性就成为当前最为重要的问题。图书仓库管理的核心是
8、入库、库存和出库之间的联系,如何处理好三者之间的关系是系统最为关键的部分。另外,员工信息和供应商信息管理也是仓库管理中一个必不可少的部分,它提供着与入库和出库相关的地一些信息,使得整个系统更加完整,更加实用。通过对仓库管理日常工作的详细调查,搜集了大量的资料,从系统结构的组织,功能的实现,技术的要求以及可行性等多方面进行考虑,认为本课题是一个适应现今图书仓库管理需求的计算机信息管理系统,具有一定的实际开发价值和使用价值。2 数据库理论基础和开发工具2.1 数据库理论基础 数据库处理在信息系统的研究中一直是非常重要的主题,然而,近年来,随着World Wide Web(WWW)的猛增及Inter
9、net技术的迅速发展,使得数据库技术之时成为最热门技术之一。数据库技术能使Internet应用超越具有早期应用特点的简单的发布。同时,Internet技术提供了一种向用户发布数据库内容的标准化的访问方法。这些技术没有脱离经典数据库技术的要求。它们只是加重了数据库技术的重要性。 数据库的设计和开发及包括艺术有包括工程。理解用户的需求,然后,把它们转变为有效的数据库设计是一个艺术过程。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用,是一个工程过程。 数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及诸如订单、顾客、工作、员工、学生、电话之类的项,或其它数据量较大、需要密起关注
10、的事务。最近,由于数据库的普及,数据库技术已经被应用到了新的领域,诸如用于Internet的数据库或用于公司内联网的数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。2.1.1 数据库管系统 数据管理系统(DBMS)是用描述、管理和维护数据库的程序系统,是数据库系统的核心组成部分。它建立在操作系统的基础上,对数据库进行统一的管理和控制。其主要功能有:1) 描述数据库:描述数据库的逻辑结构、存储结构、语义信息和保密要求等。2) 管理数据库:控制整个数据库系统的运行,控制用户的并发性访问,检验数据的安全、保密与完整性,执行数据的检索、插入、删除、修改等操作。3) 维护数据库:控制数据库
11、初始数据的装入,记录日志,监视数据库性能,修改更新数据库,重新组织数据库,恢复出现故障的数据库。4) 数据通信:组织数据的传输。2.1.2 数据库系统设计在软件需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求。首先,我们需要描述的是系统的总的体系结构(1) 数据库模块设计:系统的概要设计中最重要的就是系统模块化设计。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求
12、的功能。将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。(2) 数据表设计: 数据表的设计是指设计数据库中表的结构,数据表的逻辑结构包括:属性名称,类型、表示形式、缺省值、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为了使效率高,规范化程度应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数
13、据的字段或临时数据表。(3) 存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。(4) 数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据完全。2.1.3 数据库设计范式分析建立起一个良好的数据指标体系,是建立数据结构和数据库的最重要的一环。一个良好的数据指标体系是建立DB的必要条件,但不是充分条件。我们完全可以认为所建指标体系中的一个指标类就是关系数据库中的一个基本表,而这个指标类下面的一个个具体指标就是这个基本表中的一个字段。但如果直接按照这种方式建库显然还不能算最佳。对于指标体系中数据的结构在建库前还
14、必须进行规范化的重新组织。 在数据的规范化表达中,一般将一组相互关联的数据称为一个关系(relation),而在这个关系下的每个数据指标项则被称为数据元素(data element),这种关系落实到具体数据库上就是基本表,而数据元素就是基本表中的一个字段(field)。规范化表达还规定在每一个基本表中必须定义一个数据元素为关键字(key),它可以唯一地标识出该表中其它相关的数据元素。在规范化理论中表是二维的,它有如下四个性质: 在表中的任意一列上,数据项应属于同一个属性(如图中每一列都存放着不同合同记录的同一属性数据)。 表中所有行都是不相同的,不允许有重复组项出现(如图中每一行都是一个不同的
15、合同记录)。 在表中,行的顺序无关紧要(如图中每行存的都是合同记录,至于先放哪一个合同都没关系)。 在表中,列的顺序无关紧要,但不能重复(如图中合同号和合同名谁先谁后都没关系,但二者不可重复或同名)。 在对表的形式进行了规范化定义后,数据结构还有五种规范化定义,定名为规范化模式,称为范式。在这五种范式中,一般只用前三种,对于常用系统就足够了。而且这五种范式是“向上兼容”的,即满足第五范式的数据结构自动满足一、二、三、四范式,满足第四范式的数据结构自动满足第一、二、三范式,依此类推。 第一范式(first normal form,简称1st NF)就是指在同一表中没有重复项出现,如果有则应将重复
16、项去掉。这个去掉重复项的过程就称之为规范化处理。在本文所讨论的开发方法里,1st NF实际上是没有什么意义的。因为我们按规范化建立的指标体系和表的过程都自动保证了所有表都满足1st NF。 第二范式(second normal form,简称 2nd NF)是指每个表必须有一个(而且仅一个)数据元素为主关键字(primary key),其它数据元素与主关键字一一对应。例如,在图l9.7中如果我们将合同号定义为主关键字(其它数据元素中的记录数据都有可能重名,故不能作为主关键字),故只要知道了一个合同记录的合同号,就可以唯一地在同一行中找到该合同的任何一项具体信息。通常我们称这种关系为函数依赖(f
17、unctional depEndence)关系。即表中其它数据元素都依赖于主关键字,或称该数据元素唯一地被主关键字所标识。 第三范式(third normal form,简称 3rd NF)就是指表中的所有数据元素不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。也就是说对于一个满足了 2nd NF的数据结构来说,表中有可能存在某些数据元素依赖于其它非关键宇数据元素的现象,必须加以消除。 为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。2.2 数据库开发工具 Delphi类可以粗略地分成两部分
18、:一部分是组件类,这些组件类通常以某种方式出现在组件面板上,当用户从组件面板上点取一个类的图标后,在程序中就自动生成了该类的对象(非可视组件除外);另一部分是功能类,这此功能类的对象通常出现在程序代码中,起着不可代替的作用,但是这些功能类在组件面板上是找不到的。在Delphi中,每一个类的祖先都是Tobject类,整个类的层次结构就像一棵倒挂的树,在最顶层的树根即为Tobject类。这样,按照面向对象编程的基本思想,就使得用户可用Tobject类这个类型代替任何其它类的数据类型。实际上在Delphi的类库中,Tobject类派生出了为数相当众多的子类,它们形成了一个庞大的体系,通常情况下,如果
19、不自行开发组件,就不必了解整个类的体系结构,只用到类层次树的叶结点就足够了。2.2.1 基本数据库组件用Delphi 7.0 开发数据库应用,重点是和各种数据库组件打交道,数据集是一组离散的数据记录的集合。在Delphi中,数据集有3种表现形式:表,查询,存储过程;3种形式的数据集分别用Ttable,Tquery,TStoredProc来操纵。而Ttable,Tquery,TStoredProc的直接上级是TDBDataSet,TDBDataSet而是从TDBEDataSet派生的,而TDBEDataSet又是从TDataSet派生的。这些数据集之间的继承关系如下图所示TDataSetTCli
20、entDataSetTBDEDataSetTCustomADODataSetTADODataSetTNestedTableTBDEDateSetTADOTableTQueryTADOQueryTStoredProcTADOStoredProc2.2.2 Delphi 7.0 的一些控件(1) 数据控制类DataControl (2) 数据访问类DataAccess2.3 SQL 语言在Delphi中的运用 在Delphi中使用SQL语言非常方便,一般来说,都是通过Tquery组件来使用SQL语言的。可以在TQuery组件的SQL属性中设置SQL语句。设计程序时,在该组件的属性对话框中选择SQL
21、属性,单击带省略号的按钮,就可以打开String List Editor对话框,然后我们就可以在对话框中添加SQL语句。还可以使用Delphi的SQL Builder来自动生成SQL语句,这样可以避免手工编写SQL而可能造成的语法错误。 静态SQL语句在程序设计时便已固定下来,它不包含任何参数和变量。 动态SQL语句,也被称作参数化的语句,在其中间包含着表示字段名或表名的参数,例如下面的语句是一条动态SQL语句: Select * From Students Where StudentCode =: StudentCode; 其中的变量StudentCode便是一个参数变量,它由一个冒号引导,
22、在程序运行过程中,必须要为该参数赋值,该条SQL语句才能正确执行,每次运行应用程序时可以为该参数变量赋予不同的值。为参数赋值有三种方法:根据参数在SQL语句中出现的顺序,设置TQuery部件的Params属性值为参数赋值。直接根据SQL语句中各参数的名字,调用ParamByName方法来为各参数赋值。将TQuery部件的DataSource属性设置为另一个数据源,这样将另一个数据源中与当前TQuery部件的SQL语句中的参数名相匹配的字段值赋给其对应的参数。利用这种方法也能实现所谓的连接查询,创建主要明细型数据库应用。 在程序运行过程中,要想设置TQuery部件的SQL属性,必须首先调用Clo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 试卷自动生成系统 毕业论文 试卷 自动 生成 系统

链接地址:https://www.31ppt.com/p-3993160.html