- 0 -
第1章 论
1.1 课题背景
教材管理的范围广、工作量大、内容多,高校的教务管理工作一直以来采用手工操作为主的方式,耗时、耗力;虽然随着计算机在办公室的普及和应用,部分工作逐渐向使用计算机进行处理,但各部分相关管理仍然相互,没有一个完善的系统加以统一管理,造成数据堆积、工作重复。随着高校规模的扩大,原有的教务管理方式越来越不能适应高校的发展需求。
为使高校的教务管理从低效率的手工为主的方式中脱离出来,为了高校的进一步发展,急需要开发一个适合高校的教育特点的,对非计算机专业人员而言即快有好而且易于掌握的信息化管理系统,从而建立完整的计算机管理机制。使教务管理工作信息化、规范化,并使各项工作更加准确、方便、快捷和安全。
教材管理工作纷繁复杂,具有其自身的特殊性,而且操作种类繁多,是一个涉及面比较广的系统设计。
通过对教材的可行性分析、需求分析和设计,逐步将一个教材管理系统呈现出来可以分为四个方面:
1.算机来管理各类教材,包括分类编号、整理教材结构。
2.算机来查询教材的领取情况,来确定自己教材的领取发放情况,为准确发放教材做好准备
3.单位的领书情况能做好全面的掌握,及时得到每个单位当前的领书和历史领录。
4.领取发放进行管理。
国外状况:据统计目前英国在教务上占有90%的工作由计算机完成;教育管理中80-100%的信息处理由计算机完成;计划管理占80%;在计算机应用发展较快的国家中,计算机应用于教育管理的占30%;用于经济管理占 50%;用于科技计算的占8%,用于生产程控的占12%;由此可以看出,教育管理是计算机应用的主要领域之一。
国内状况:由于种种原因,我国的信息资源建设水平远远落后于信息基础设施的建设的水平。长期以来,我国信息资源的开发管理未能与信息资源的增长同步进行。我国有丰富的原始信息资源,但在此基础上再生的二次信息系统和数据库产业的规模和市场占有率、使用率相当低,大量的有价值的信息未能进一步加工成商品使其增值。我国的计算机应用要比西方国家落后十几年,图书管理等信息系统的开发应用是从1973年开始的,83年以后才开始了大量的实际的开发和研究工作。因此,信息资源的开发和利用已被确立为国民经济信息的核心内容,信息数字化,传输的网络化是缩小发展中国家与发达国家差距的快捷方式,世界信息化浪潮正以不可阻挡之势席卷全球时,我国要迎头赶
- 1 -
上,就必须利用现有的信息基础设施,重点开发和推广应用于各类科技经济等数据库和网络资源服务系统,以便取得巨大的社会效益和经济效益。由于物业管理在社会大生产中占用重要地位,其计算机化在发达国家已达到95%以上,而我国在全国范围内推广计算机在管理中的应用,是在80年代初开始的。起步虽晚,但发展快。特别是微型计算机的出现和普及,为信息处理提供了物美价廉的手段,对于推动我国管理信息处理现代化起到了重要作用。 教育管理系统是一个高校单位元不可缺少的部分,它的内容对于高校的决策者和管理者来说都至关重要,所以教务管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理图书,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对图书进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人对图书管理的效率,也是高校的科学化、正规化管理,与世界接轨的重要条件。 从微观上讲,建立一套人事管理信息系统能够加快物资的周转速度,提高工作效率,从而加强了管理的信息化手段,提高了本单位的经济效益。从宏观上讲,顺应了社会的信息化、社会化潮流,缩短了整个社会化大生产的周期。因此,开发这样一套管理软件成为很有必要的事情。
1.1.1系统特点
1.功能综合完善,系统包括系统管理、书费管理、出入库管理和综合查询等系统。系统现有功能都是从众多不同性质高校精心需求分析而成的,本系统的功能、操作方便性、稳定性等有很明显的优越性。
2.操作简单便捷,本系立于操作系统的跨平台系统。客户端MSWindows2000以上。能运行IE5.0以上的操作系统。采用友好、直观的接口,鼠标、键盘操作、方便快捷。系统绝大部分模块都提供、树形结构,方便用户对某部分进行操作。
3.强大的查询功能,系统大部分模块都提供自定义的查询功能,可以任意组合查询项目。
4.数据处理能力强,本系统采用最先进的大型数据库Delphi来作为后台的数据处理,数据存取速度快、网络负荷少、安全性强,即使数据量很大,亦不影响它的性能。
5.严格、灵活的权限控制,系统具有灵活、严格的权限设定功能,严格的登录机制与权限设定,可灵活设置不同用户的访问权限及所属群组的权限。
1.1.2 系统主要功能
根据系统需求,本系统结构采用当前流行的客户机/服务器结构,也就是C/S模式,这种模式的主要形式是系统的管理人员以及使用者在客户端对服务
- 2 -
器端的数据库进行各种操作,操作的结果又由服务器端的数据库发送给客户端显示出来,客户端和数据库服务器可以在同一台计算机上安装,也可以在处于联网状态的不同机器上安装,形式比较自由,安装比较方便。该模式同时具有开发时间短、成本较低,而且数据量的传输快等优点。
业务流程分析包括对信息的流动、传递、处理、储存等分析,其目的就是要发现和解决数据流通中的问题。这些问题有:数据流程不畅通,前后数据不匹配,数据处理不合理等。问题产生的原因有的是属于原系统管理混乱,数据流程本身有问题,有的也可能是调查了解的数据有错误或作图有错误,通过分析,这些问题应该尽可能地暴露并加以解决。
1.系统管理模块
工作人员通过系统管理来对班级、单位、操作人员进行管理,包括班级、单位的添加、操作人员权限的设置各种相关信息等。这里还有一个系统初始化,就是将系统中的内容清空。
2.书费管理模块
工作人员通过书费管理来实现书费的管理功能,如班级应该缴回的书费、班级应该退回的书费等。
3.出入库管理模块
工作人员通过出入库管理模块来实现教材的入库、教材出库以及教材入库出库的具体情况的功能。通过这些功能可以记录新入库的教材信息,并且加以对已经存在数据库中的教材信息对修改,同时可以对学生领书和教师领书进行管理。
4.综合查询模块
工作人员通过对此模块来实现教材书费查询、库存查询和领书查询等功能。通过对这些功能,可以通过不同的条件来对书库中的教材进行查询,同时也可以查询教材的一些信息。
1.2 研究目的与意义
教育是整个国民经济的基础,随着信息化产业逐渐进入各行各业,教育对实行信息化必须有一个明确的方向,这也是客不容缓的事。而教材作为教育中的重要资源,必须同信息化同步,实行网络管理,以促使整个国民经济和教育的发展。统的设计过程,以及系统功能的实现;最后介绍了系统的测试。
1.3 论文研究内容
作为校园信息化管理,已经成为评测校园教学质量的一个重要手段。在校园信息化管理中,学校的教材管理已是首要解决的问题,学校每学期开学都需要购买大量的教材,学校根据每学期所开设的各种课程,向书店或者出版社购进教科书,然后学生以班级为单位向学校领书交费。这项工作现在大部分学校还是手工操作,不仅工作效率很低,并且不能及时了解教材库存和领取的具体情况。针对上述情况,根据目前学校管理的模式和计算机管理中的优点,经过
- 3 -
多方面的分析,该系统实现班级信息管理、教材收费管理、领取的自动管理以及以往的教材信息的查询。本系统主要设计了4大功能模块,分别是系统管理、书费管理、出入库管理、综合查询。通过功能分析首先建立数据库结构,根据功能尽量完善和实用结合设计程序接口和功能代码。
- 4 -
第2章 数据库知识以及Delphi介绍
数据库在信息系统的中一直是非常重要的主题,近年来,随着 World Wide Web(WWW)的猛增及 Internet 技术的迅速发展,使得数据库技术一时成为最热门技术之一。数据库技术能使 Internet 超越具有早期应用特点的简单的发布。
同时,Internet 技术提供了一种面向用户发布数据库的标准化的访问。这些技术没有脱离经典数据库技术的要求。它们只是加重了数据库技术的重要性。 数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及数据量较大,需要密切关注的事务。最近,由于数据库的普及,数据库技术已经被应用到了新的领域,诸如用于 Internet 的数据库或用于公司内联网的数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。 在本章将要对数据库的知识,如何用 SQL 语言操纵数据以及本系统设计。
2.1 数据库的概括
数据库是依照某种数据模型组织起来并存放二级内存中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。
数据库的基本结构分三个层次,反映了观察数据库的三种不同角度:
1.物理资料层。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位元串、字符和字组成。
2.概念数据层。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。
3.逻辑数据层。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。数据库不同层次之间的联系是通过映射进行转换的。
数据库具有以下主要特点:
1.实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。
2.减少数据的冗余度。同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了资料的一致性。
3.数据的性。数据的性包括数据库中数据库的逻辑结构和应用程
- 5 -
序相互,也包括数据物理结构的变化不影响数据的逻辑结构。
4.实现集中控制。文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其檔之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。
5.数据一致性和可维护性,以确保数据的安全性和可靠性。主要包括: (1)安全性控制:以防止数据丢失、错误更新和越权使用; (2)完整性控制:保证数据的正确性、有效性和兼容性;
(3)并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用;
(4)故障的发现和恢复:由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。
数据库的发展历史:
萌芽阶段,先使用\"Data Base\"一词的是美国系统发展公司在为美国海军基地在 60 年代研制资料中引用。1963年,C·W·Bachman 设计开发的IDS(Integrate Data Store)系统开始投入运行,它可以为多个 COBOL 程序共享数据库。
1968年,网状数据库系统 TOTAL 等开始出现;1969 年,IBM 公司 Mc Gee 等人开发的层次式数据库系统的 IMS 系统发表,它可以让多个程序共享数据库。
1969年 10 月,CODASYL数据库研制者提出了网络模型数据库系统规范报告 DBTG,使数据库系统开始走向规范化和标准化。正因为如此,许多专家认为数据库技术起源于 20 世纪 60 年代末。数据库技术的产生来源于社会的实际需要,而数据技术的实现必须有理论作为指导,系统的开发和应用又不断地促进数据库理论的发展和完善。
发展阶段,20 世纪 80 年代大量商品化的关系数据库系统问世并被广泛的推广使用,既有适应大型计算机系统的,也有适用与中、小型和微型计算机系统的。这一时期分布式数据库系统也走向使用。 1970 年,IBM 公司 San Jose 研究所的 E·F·Code 发表了题为\"大型共享数据库的数据关系模型\"论文,开创了数据库的关系方法和关系规范化的理论研究。关系方法由于其理论上的完美和结构上的简单,对数据库技术的发展起了至关重要的作用,成功地奠定了关系数据理论的基石。
1971 年,美国数据系统语言协会在正式发表的 DBTG 报告中,提出了三级抽象模式,即对应用程序所需的那部分数据结构描述的外模式,对整个客体系统数据结构描述的概念模式,对数据存储结构描述的内模式,解决了数据性的问题。
1974年,IBM 公司San Jose 研究所研制成功了关系数据库管理系统 System R,并且投放到软件市场。
1976年,美籍华人陈平山提出了数据库逻辑设计的实际(体)联系方法。 1978 年,新奥尔良发表了 DBDWD 报告,他把数据库系统的设计过程划
- 6 -
分为四个阶段:需求分析、信息分析与定义、逻辑设计和物理设计。
1980年,J·D·U man 所著的《数据库系统原理》一书正式出版。 1981年,E·F· Code获得了计算机科学的最高奖ACM 图林奖。
1984年,David M 所著的《关系数据库理论》一书,标志着数据库在理论上的成熟。
成熟阶段,80年代至今,数据库理论和应用进入成熟发展时期。
2.2 SQL语言
用户对数据库的使用,是通过数据库管理系统提供的语言来实现的。不同的数据库管理系统提供不同的数据库语言。关系数据库管理系统几乎都提供关系数据库标准语言——SQL。SQL的全称是 Structured Query Language,即结构化查询语言。SQL语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。1986年 ANSI 采用 SQL 语言作为关系数据库系统的标准语言,后被国际化标准组织(ISO)采纳为国际标准。SQL 语言使用方便、功能丰富、简洁易学,是操作数据库的标准语言,得到广泛地应用。例如关系数据库产品 DB2、ORACLE 等都实现了 SQL 语言。同时,其它数据库产品厂家也纷纷推出各自的支持 SQL的软件或者与 SQL的接口软件。这样 SQL 语言很快被整个计算机界认可。SQL 语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。SQL 语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。SQL 语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。
Delphi语言是数据库开发的常用开发工具,同时为了实现查询的功能以及系统的一些相关功能,SQL语言的使用也是必不可少的,SQL语言即结构查询语句,SQL语言之所以能够为用户和业界所接受,成为国际标准,是因为它是一个综合的、通用的、功能极强,同时简洁易学。SQL语言集数据查询(data query)、数据操纵(data manipulation)、数据定义(data definition)和数据控制(data control)功能于一体,充分体现了关系数据语言的特点和优点。其主要特点包括:
1. 综合统一
主要功能是通过数据库支持的数据语言来实现的。
非关系模型(层次模型,网状模型)的数据语言一般都分为模式数据定义语言(schema data definition language,简称模式DDL),外模式数据定义语言(subschema data definition language,简称外模式DDL)与数据存储有关的描述语言(data storage de-scription language,简称DSDL)以及数据操纵语言(data manipualtion language,简称DML),分别于定义模式,外模式,内模式和进行数据的存取与处置。当用户数据库投入运行后,如果需要修改模式,必须停止现有数据库的运行,转储数据,修改模式并编译后再重装数据库,因此很麻烦。
- 7 -
2. 高度非过程化
非关系数据模型的数据操纵语言是面向过程的语言,有其完成某项请求,必须指定存取路径。而用SQL语言进行数据 操作,用户只需提出“做什么”,而不必指明“怎么做”,因此用户无需了解存取路径,存取路径的选择以及SQL语句的操作过程均由系统自动完成。这不但大大减轻了用户负担,而且有利于提高数据性。
3. 面向集合的操作方式
非关系数据模型采用的是面向记录的操作方式,任何一个操作其对象都是一条记录。例如,查询所有平均成绩在80分以上的学生姓名,用户必须说明完成该请示的具体处理过程,即如何用循环结构按照某条路径一条一条地把满足条件的学生记录读出来。而SQL语言采用集合操作方式,不仅查找结果可以是元组的集合,而且一次插入,删除,更新操作的对象也可以是元组的集合。
4.语言简洁,易学易用
SQL语言功能极强,但由于设计巧妙,语言十分简洁,完成数据定义,数据操纵,数据控制的核心功能只用了9个动词:CREATE、DROP、SELECT、ENSERT、UP-DATE、DELETE、GRANT、REVOKE、ALTER,而且SQL语言语法简单,接近英语口语,因此容易学习,容易使用。
2.3 Delphi 简介
Delphi是著名的Borland(现在已和Inspires合并)公司开发的可视化软件开发工具,是当今世界上最优秀的Windows开发工具之一。自Borland公司1995年3月推出Delphi1.0以来,它就以优秀的集成开发环境、可视化的面向对象编程、良好的数据库应用支持、功能强大的VCL组件及程序开发和运行的高效率,为用户提供了一种在Microsoft Windows操作系统下基于Object Pascal语言的视觉化开发平台上快速开发遵循Windows标准的应用程序的开发工具。
Delphi的出现打破了VB承可视化编程领域一统天下的局面。并且Delphi使用了本地编译器直接生成技术,使程序的执行性能远远高于其它产品生成的程序。它还是真正的面向对象的编程语言。PASCAL语言的严谨加上可视化的优势和强大的数据库功能使得它有充分的资本和微软的VB叫板。许多人当时都认为Pascal是最有前途的程序设计语言,并预测Delphi将会成为可视化编程的主流环境。
Delphi在你编好程序后自动转换成“.EXE”文件它运行时速度比VB快,而且编译后不需要其它的支持库就能运行。它的数据库功能也挺强的,是开发中型数据库软件理想的编程工具。Delphi适用于应用软件、数据库系统、系统软件等类型的开发。而且它拥有和VB差不多一样的功能,而且一样能应用API函数,这在控制Windows很有用。
Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户接口的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言
- 8 -
(Object-Oriented Language)、当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高编程效率。Delphi的基本形式:
Delphi实际上是Pascal语言的一种版本,但它与传统的Pascal语言有天壤之别。一个Delphi程序首先是应用程序框架,而这一框架正是应用程序的“骨架”。在骨架上即使没有附着任何东西,仍可以严格地按照设计运行。您的工作只是在“骨架”中加入您的程序。缺省的应用程序是一个空白的窗体(Form),您可以运行它,结果得到一个空白的窗口。这个窗口具有Windows窗口的全部性质:可以被放大缩小、移动、最大最小化等,但您却没有编写一行程序。因此,可以说应用程序框架通过提供所有应用程序共有的东西,为用户应用程序的开发打下了良好的基础。
Delphi已经做好了一切基础工作——程序框架就是一个已经完成的可运行应用程序,只是不处理任何事情。您所需要做的,只是在程序中加入完成您所需功能的代码而已。在空白窗口的背后,应用程序的框架正在等待用户的输入。由于您并未告诉它接收到用户输入后作何反应,窗口除了响应Windows的基本操作(移动、缩放等)外,它只是接受用户的输入,然后再忽略。Delphi把Windows编程的回调、句柄处理等繁复过程都放在一个不可见的Romulus覆盖物下面,这样您可以不为它们所困扰,轻松从容地对可视部件进行编程。
面向对象编程的概念:
面向对象的程序设计(Object-Oriented Programming,简记为OOP)是Delphi诞生的基础。OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进Windows编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。
Delphi是完全面向对象的。一些早期的具有OOP性能的程序语言如C++,Pascal,Smalltalk等,虽然具有面向对象的特征,但不能轻松地画出可视化对象,与用户交互能力较差,程序员仍然要编写大量的代码。Delphi的推出,填补了这项空白。您不必自己建立对象,只要在提供的程序框架中加入完成功能的代码,其余的都交给Delphi去做。欲生成漂亮的接口和结构良好的程序丝毫不必绞尽脑汁,Delphi将帮助您轻松地完成。它允许在一个具有真正OOP扩展的可视化编程环境中,使用它的Object Pascal语言。这种性的组合,使得可视化编程与面向对象的开发框架紧密地结合起来。
2.4 本章小结
本章主要介绍了我所设计内容主要运用的知识,包括数据库的发展历史,SQL语言的查询以及Delphi的介绍。让我充分的了解了我所运用的知识,这样能搞好的掌握设计内容,并且通过本章的学习,我能更好的运用以及学过的知识来完善自己。
- 9 -
第3章 可行性研究和系统分析
3.1 可行性分析
可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。
1.经济可行性:主要是对项目的经济效益进行评价,本系统作为一个毕业设计,不需要任何经费,对于我们学校在经济上完全没有问题的。而且本系统正式使用后,将会大大的提高教材科管理教材的效率。
2.技术可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。本系统主要采用了Delphi7.0和Access进行相关的开发,而Delphi是面向对象的可视化软件开发工具,其对编程平台对数据库的访问做了很好的封装,数据库接口的转换只需动态更改控件的相关属性即可;另考虑到SQL Server数据库服务器用户,亦提供SQL Server数据库接口,微软公司的SQL Server数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。
3.应用可行性:本系统主要是为了提高学校教材管理的效率而进行开发的,所以在各方面上得到了教材科和老师的支持,领导的认同。现有的管理制度和方法科学,规章制度齐全,原始数据正确等。规章制度和管理方法为系统的建设提供了制度保障。
3.2 系统需求分析
系统分析的任务是明确教材数据库管理系统开发的目的、系统应用的功能等(即用户需求),以及开发人员要解决的问题。分析主要有以下步骤:
软件结构分析:
1.对于大型系统的设计,通常分为两个阶段:结构设计和过程设计。 2.结构设计:确定系统由哪些模块组成,以及这些模块之间的相互关系。 3.过程设计:确定每个模块的处理过程。其中,结构设计是总体设计阶段的任务,而过程设计则是详细设计阶段的任务。这里只是一个小型的数据库管理系统,只分析构成它们最基本的成分,以及所有这些成分之间的相互关系。结构分析就是系统分析人员对完成任务的每一个工序进行分析的过程。如图3-1所示:
图3-1 业务流程图
- 10 -
系统开发的过程首先是要确定需要建立的表格及视图,即首先完成数据库的设计,这个过程主要是通过Access的使用完成的;其次,就是进行接口的设计,这个过程是在Delphi中完成的,它是系统开发中比较重要的一步,系统接口在用户对软件的评价中占有很大的比重,影响到本次开发的成功与否,所以在后面将有专门一部分论述接口设计。
数据库的特点:
1.设计全面:在设计数据库时,充分收集了用户在管理过程中和将来可能用到的内容,分类分项进行了设计。
2.数据库之间分工明确:数据库设计中,尽量减少数据库个数和多重数据库操作的机会。
3.字段明晰:每个字段名对应的字段明晰,类型和宽度与实际中完全相符。
4.设计时去掉了在不同关系中重复出现的属性名,而且字段名便于识别,又尽量简化。
为实现需求分析中所列的主要功能,设计了多个数据库。情况如下(几个重要的数据表)如表3-1书费记录表、3-2教材信息表、3-3操作员记录表、3-4班级记录表所示:
以上四个表是本系统建立数据库所要的数据表中最重要的四个表。记录了教材信息、费用、操作员、登陆时间、库存量等等。
3.3 ADO综述
本系统是通过对象模型ADO(Active Data Objects)来访问数据库的,ADO使我们能够编写应用程序,以通过OLE.DB提供者访问和操作数据服务器中的数据。ADO最主要的优点是易于使用、速度快、内存支出少和磁盘遗迹小。ADO支持建立客户端/服务器和基于Web的应用程序的关键功能。ADO的另一功能是“远程数据访问”,能够通过一个来回的传输将数据从服务器移动到客户端应用程序或Web页中,然后在客户端对数据进行操作,最后将更新数据返回服务器。
ADO对象模型是由8个对象组成的,它们中的大多数在功能上和RDO对象相似,只不过具有更强的功能性。下面介绍ADO的3个重要的对象:
1.Command对象。包含关于某个命令,例如查询字符串、参数定义等的信息。
2.Connection对象。包含关于某个数据提供程序的信息。
3.Recordset对象。Recordset对象包含某个查询返回的记录,以及那些记录中的游标。
- 11 -
ADO的目标是访问、编辑和更新数据源,而编程模型体现了为完成该目标所必须的系列动作的顺序。ADO提供类和对象以完成以下活动:
1.连接到数据源(Connection)。可选择开始一个事物。 2.可选择创建对象来表示SQL命令(Command)。
3.可选择在SQL命令中指定列、表和值作为变量参数(Parameter)。 4.执行命令(Command、Connection或Recordset)。 5.如果命令按行返回,则将行存储在缓存中(Recordset)。
6.可选择创建缓存视图,以便能对数据进行排序、筛选和定位(Recordset)。
7.通过添加、删除或更改行和列编辑数据(Recordset)。
8.在适当情况下,使用缓存中的更改内容来更新数据源(Recordset)。
9.在使用事物之后,可以接受或拒绝在事物期间所做的更改,结束事物(Connection)。
3.4 本章小结
本章主要介绍了我所设计内容的可行性分析和系统的分析,其中主要包含了可行性分析、系统需求分析和数据库的连接。让我充分的了解我以往学习中的很多不足,老师也给了我很多的帮助,让我学习到了更多的知识。
- 12 -
第4章 系统总体设计
4.1 系统简介
本系统是一个小型的学校教材管理系统,利用Delphi编写用户接口,以Access创建数据库而制作的桌面数据库管理系统,采用用户创建账号的形式提供多人共享的功能,通过用户名不同调用相应的数据库表信息,达到用户的效果。其中,用户名是经过最高权限的管理员进行指定委派的。由于本管理系统操作简单、接口明了,所以容易直观对相应的功能进行操作。设立超级管理员权限(即最高权限的管理员),能直接浏览数据库各个表项,并具有对各个用户和用户信息进行添加、删除、修改的权限。
4.2 系统实现的功能
4.2.1系统流程和操作方法设计
教材管理系统的工作流程建立在传统手工工作流程的基础上,但又不能完全等同于手工工作流程。因为教材管理系统毕竟不同于传统手工作业,从效率上来说,前者也高于后者,前者只需要少量的人工干预就能够实现教材信息的集中管理。
首先,在流程安排上应尽量避免数据的重复输入,实现从采购到发放一次输入的数据得到多次使用,以提高系统的工作效率。这一步很大程度依赖于数据库的设计。
其次,选择合适的操作方式。计算机系统操作方式有两种:一种是联机操作方式,即人机交互方式;另一种是脱机操作方式,它是将事先设计好的一套操作程序以作业的形式提交给计算机,由计算机依托几批处理的方式完成这套操作,并将处理结果通过系统打印输出。本次设计的教材管理系统属于第一种操作方式,需要用户输入信息完成操作。之所以采用这种方式,主要是考虑到此数据库管理系统的实时性需求,因为数据库随时可能都需要得到改变。
4.2.2 系统开发原则
为了设计出符合一般标准又具有特色的接口,系统开发时要遵循以下开发原则:
1.保证接口设计的风格具有一致性。
2.接口设计时,控件的摆放要协调和匀称。
3.常用操作(如教材管理、查询 、打印等操作)应建立快捷方式,方便管理员日常操作。
4.提供信息回馈,对一些不常见的操作和至关重要的操作,系统应该能回馈信息。
5.提供错误处理信息,在出现错误时,系统应该能检测出错误并提供错误
- 13 -
处理的能;错误出现后,系统的状态不发生变化,或者系统要提供错误恢复的向导。
6.为了方便管理员的管理应设置工具栏和状态区。
系统主要功能接口是最主要的,是设计的重点。该接口上包括了系统的功能查询以及触发其它单项功能接口的快捷方式,如系统管理、教材管理、财务管理、打印报表等。
4.2.3 系统结构
本系统是以教材管理业务为原型设计开发的,教材科的日常业务大体上有如下几项:
1.教材预订。教材的预订工作基本上是由系、部来完成。教材科将教材征订通知下发到各系、(轮流传阅),各系从中选订所开课程的教材,填写预订单,经系、部汇总报教材科。教材科汇总报教务处审批后,编制填写正式订单寄发到各出版社。
2.教材入库业务。出版社按订单如期如数发书,教材科查收入库。
3.教材发放。按预订数量发放专业和年级用书。通常是以系、班级为单位领进行领书。
4.查询,这项工作包括四项内容,其一是预订查询及时了解各系教材的订购情况;再就是入库查询及时掌握入库情况;第三是库存查询情况;第四是帐务查询,主要记录学生、班级、教师领教材的详细情况。
5.打印与报表,主要用于订书、购书、发书清单的打印。
6.系统管理主要包括用户、密码的更改,学生信息管理和数据库的维护。 7.帮助,选项和系统帮助能使用户快速得到帮助。 系统的主要结构是以下几个方面:
系统管理:主要对操作人员进行管理,院系管理和班级管理三类,其中登陆身份具有不同级别的权限,权限可由管理人员设置。还可以进行密码修改。
教材管理:主要对教材出入库管理,出库分为学生领书和院系领书。 操作员管理: 主要用于增减操作员及权限管理。 财务管理:主要对书费的结算进行处理。
综合查询:主要是书费查询、库存查询和领书查询。
日常业务:主要是把一些经常使用到的操作放在一起,以方便使用,提高效率。
报表打印:主要对一些库表的打印。(本功能暂时还没开发出来) 说明:主要对一些功能说明。以及软件说明。如图4-1所示:
- 14 -
后台数据库运行的方式工作,用户无须了解具体数据库的内容即能通过在前台操作接口的直观操作达到预期目标。如图4-2所示:
图4-2工作方式图
通过功能分析首先建立数据库结构,根据功能尽量完善和实用结合设计程序接口和功能代码。系统的简单ER图如图4-3所示:
图4-3系统ER图
通过对教材信息管理系统的实现,大大提高了管理员的工作效率,方便了学校对班级和教师教材信息的管理,实现了设计教材管理系统的目的。
4.3 本章小结
本章主要介绍了我设计中的系统的总体设计,其中包括了系统的简介和系统实现的功能。主要体现了教材管理系统整体的内容框架分别分为哪几个部分,为后面的功能模块的实现提供了有力的帮助。非常感谢我的老师在本章的学习中给我提供的帮助。
- 15 -
第5章 功能模块的实现
5.1 数据库的实现
本系统采用的数据库为Access,数据库共有27个表,其中属于系统的表有20个,属于用户的表有7个。操作员表主要是用来记录操作员的信息,包括用户名、密码及操作员的权限信息等等。超级管理员可以对普通用户进行相应的权限设置。Books数据表记录着教材的基本信息及相关的订录,主键是ISBN。
5.2 连接数据库
常用的数据库访问技术主要是开放式数据库连接(Active Data Objects)即ADO。
ADO技术为访问不同的SQL数据库提供了一个共同的接口。ADO使用SQL作为访问数据的标准。这一接口提供了最大限度的互操作性:一个应用程序可以通过共同的一组代码访问不同的SQL数据库管理系统(DBMS)。开发人员可以添加数据库驱动程序,将应用程序与用户所选的DBMS联系起来。驱动程序管理器提供应用程序与数据库之间的中间链接。ADO接口包含一系列功能,由每个DBMS的驱动程序实现。当应用程序改变它的DBMS时,开发人员只使用新的DBMS驱动程序替代旧的驱动程序,并且应用程序可以无需修改代码照常运行。
添加一个ADO Connection,然后选择它的属性里面的Connection String,进去之后选择生成(Build),根据需要连接的数据库选择相应的驱动,下一步之后选择数据库,确定保存。选择属性里面的Connect设置为True就已经建立与数据库之间的连接了。
然后选择一个数据集控件(ADO Table、ADO Query),设置好Connection属性为刚刚建立好的ADO Connection,设置Table或SQL属性之后就可以设置Active属性为True来取得表中的资料了。
再添加一个Data source控件,设置Data Set为刚刚添加的ADO Table或ADO Query最后可以添加数据显示控件了如DB Grid,只要设置它的Data Source为刚才建立的Data Source控件即可。
5.3 主要功能模块的实现
教材管理系统模块的设计主要包括应用程序登录模块、主窗口模块、操作员接口模块、教材管理模块。
5.3.1 登录模块
首先的登录模块的实现,它主要的功能是登录用户名和密码下图为系统登陆窗口图5-1所示:
- 16 -
图5-1 登陆窗口图
运行教材管理系统文件后,首先会弹出登陆的对话框,这时要求管理人员输入用户名和密码进行登陆操作。输入用户名和登陆密码后,点击确定,如果用户名和密码都对的话,就可以进入系统的主窗口接口进行相应的操作。反之,继续显示登陆的对话框。如果连续三次登陆不成功后,系统就会自动退出登陆接口。选择密码输入框旁边的“高级”按钮,便显示登陆窗口的最下面那部分,通过输入主机的IP/主机名和数据库名,可以远程访问主机端的数据库。如图5-2所示:
5.3.2 主窗口模块
1.购买者经过了缴纳书费,管理员就可以根据所需的课本进行书本的发放(教材出库)。
2.教材发放有两种方式,一是班级领书;另一是院系领书。暂时不支持个人领书。
3.发放教材后,可根据教材的打折情况,进行相应的书费退还。从退回书费那一项就可以得出该退回那个班级/院系多少钱。如果想要知道那个班级/院系已经领书或是还没领书,从领书查询这一项就可以知道具体情况了。有需要的话,可以打印出相应的报表出来(本系统暂时还没实现)。
假如还不怎么熟悉使用本系统的话,可当系统管理员想进入系统时,在登录窗口(图5-1)中输入用户名和密码,点击确定按钮,就可进入教材管理系统的主窗体接口(图5-3),管理员就可以进行如下的工作:
1.通过系统管理对部门、班级、院系进行管理。
2.操作教材管理,对已有的未登记的教材进入录入管理,更新库存数据库。
3.通过对库存的查询,可知道目前还剩下那些书,各科目的书本的数量。 4.以在开始进入系统的时候选择“帮助”这一项,这里简单介绍有系统的操作方法。如图5-3所示:
图5-3系统主窗体界面
5.3.3 操作员接口
系统管理中的操作员管理最重要的部分,它涉及到系统的安全问题。
操作员管理提供用户的账户管理,在其中可以设置用户的权限。对用户进行添加、修改和删除。如图5-4所示:
图5-4操作员管理图
- 17 -
5.3.4 密码修改模块
用户进入该对话框后,可进行密码修改。如图5-5所示:
图5-5密码修改图 主要的部分代码在附件1。
5.3.5 教材管理模块
教材入库登记窗口 如图5-6所示:
图5-6教材入库图
通过该窗口,管理员可进行教材的入库登记及相关信息的填写。教材出库登记窗口(只给出院系(老师)领书窗口)(部分代码在附件Ⅱ)如图5-7所示:
图5-7 老师领书登记图
5.3.6 帮助文件
更多的模块介绍、功能介绍及使用方法请参照“帮助”使用手册如图5-8所示:
图5-8 使用手册图
5.4 本章小结
本章主要介绍了我设计中模块的具体实现,其中包括登录模块、主窗口模块、操作员接口、密码修改模块、教材管理模块。完成了数据库的连接已经在Delphi模块中的具体实现。
- 18 -
第6章 系统测试
软件测试是保证软件质量,提高软件可靠性的最主要的活动之一。它实施对软件规格说明、设计规格说明和编码的最终审核。软件测试的目的是以最少的人力、物力和时间投入,尽可能多地找出软件中潜在的各种错误和缺陷。测试的结果为软件可靠性分析提供了依据。设计测试用例的方法一般有两种:黑盒法以及白盒法。本次测试采用的是黑盒测试,将大部分可能的值来检查系统程序的正确性,并通过测试得到的结果进行必要的调试和功能改进。
6.1 登录测试
输入不存在的用户名和密码登陆,便会提示登陆失败的错误。当连续三次登陆失败后,如图6-1所示:
图6-1 连续三次登陆失败图
此时,点击“OK”,系统就自动退出。如果登陆成功的话,系统就进入到系统主窗口接口。
6.2 书费查询测试
进入系统后,选择综合查询书费查询院系书费查询电子与计算机系确定,就可以看到如下图所以的对话框,如图6-2所示:
图6-2 书费查询窗口图
经过核对,该次的查询显示出来的信息和数据库中记录的完全一样。
6.3 教材入口模块测试
进入系统后,教材管理教材入库填写相关的信息,就可以看到如下图所以的对话框。如图6-3所示:
图6-3 教材入库图
点击确定便提示“请选择订书单位”,这是因为没选择订书单位。选择订书单位后,点击确定按钮,便出现以下提示,如图6-4所示,这说明教材入库成功。
图6-4 教材成功添加图
- 19 -
6.4 本章小结
通过测试结果,让了解到,教材管理系统开发的几个主要功能能够较好的实现,但是由于我对该系统的信息了解不够以及本身的知识缺陷,所以有好些方面没有考虑到,比如说没有对于帮助系统始终没有提供更强大的索引功能。
指正!
- 20 -
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- gamedaodao.com 版权所有 湘ICP备2022005869号-6
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务