Username: Password:

Informix数据库软件研发方法和工具
来源:作者: 发布时间:2007-12-05 06:21:46

当前我国的电脑应用已深入到社会的各个领域,越来越多的单位建立了以数据库为核心的管理信息系统。关系型数据库系统以其理论基础严格、语言简洁、易学易用、高度非过程化等特点在市场上占据优势。现在流行的大多数数据库系统都是关系型数据库,其中Informix数据库已得到了比较广泛的应用。
Informix数据库系统是由美国Informix软件公司研发出来的关系型数据库产品。多年来经过不断地更新及升级,现在已形成了以数据库系统核心Informix-Online(或Informix-SE)为基础,以多种数据库软件研发工具相互配合而构成的综合数据库系列产品,具备很强大、丰富的研发及应用功能。
我们知道,应用软件系统的研发是一项复杂和艰苦的工作。用户需求越多,系统就越庞大,软件的研发周期就越长,软件研发的工作量也越大。怎样缩短软件的研发周期,减少软件研发的工作量,提高软件的内在质量和运行质量,是长期困扰软件研发人员的一个难题。笔者认为,通过对应用软件研发方法和软件研发工具进行深入地研究,分析这些研发工具的优缺点,在研发过程中扬长避短、灵活运用,便能够解决上述问题。
一、研发方法
根据软件工程理论,研发一个应用软件系统需要经过系统需求分析、软件需求分析、概要设计、周详设计、编码、测试、运行和维护等七个阶段。软件研发工具主要应用在其中的周详设计、编码、测试、运行和维护等四个阶段。在应用软件的研发实践中,这四个阶段实际上能够归纳为数据库定义和设计、软件编程和调试、系统维护等三个阶段。软件研发者根据用户需求确定好数据字典,建立起具体的数据库和数据表,安装相应的基础数据,为下一步的软件编程奠定基础,这一过程称为数据库定义和设计。软件编程和调试就是利用研发工具,实现输入数据经过各种应用流程产生相应的输出数据的过程。系统维护就是指应用软件投入运行后对数据库数据的管理维护及对软件的升级完善。
针对软件研发工具实际应用的特点,在下面的分析中,我们所说的应用软件研发过程就是指软件研发的数据库定义和设计、软件编程和调试、系统维护等三个阶段。这三个阶段是应用软件实际形成的关键阶段,打个比喻,研发一个应用软件如同建造一幢大厦,数据库的定义和设计就相当于打造坚实的地基,一砖一瓦建造大厦的过程就是软件的编程和调试,大厦建成投入使用后的管理和维修就相当于软件系统的维护。
一个应用软件系统一般由数据输入模块、数据处理模块和数据输出模块构成。数据输入模块包括数据的录入、查询、修改和删除等,这些处理都是应用软件系统中最基本和必不可少的。在数据处理模块里,根据用户的应用需求,确定相应的算法和数据流程,对输入数据做进一步处理,生成最终输出数据。最终的输出数据通常以报表打印、屏幕显示和介质(磁盘或磁带等)拷贝等方式输出。
二、研发工具
Informix数据库的软件研发工具(环境)主要有Informix-SQL、Informix-ESQL、Informix-4GL等。他们具备不同的功能和特点,既能单独使用,也可根据实际需要相互配合使用。现在,这些软件研发工具在Informix数据库应用软件系统的研发过程中扮演着很重要的角色。
1.Informix-SQL
Informix数据库最早期的软件研发工具是INFORMIX-SQL,他也是Informix重要的数据库维护工具。
SQL(Structured Query Language)语言是1974年由Boyce和Chamberlin提出的。由于他具备功能丰富、使用方式灵活、语言简洁易学等突出长处,被众多电脑公司和软件公司所采用,经过多年的发展,SQL语言已成为关系数据库的标准语言,具备数据一体化、高度非过程化、面向集合的操作方式等特点。
Informix以SQL语言为基础加以扩充,形成了一个综合应用研发工具(环境)Informix-SQL。Informix-SQL的软件研发工具主要由五个强有力的研发工具组成,即屏幕表格(Form)生成工具、用户菜单(User Menu)生成工具、报表(Report)书写工具、模式定义工具和查询语言SQL。屏幕表格是Informix-SQL最主要的功能模块。他通过研发者自己设计的和Informix数据库紧密相连的屏幕表格来操纵数据库,实现数据的输入、查询、修改和删除等操作。Informix-SQL提供了比较丰富的数据操纵功能,能够进行各种有条件查询和无条件任意查询,能够前后查找、修改及删除数据。报表控制能够完成简单的报表统计生成和输出。通过用户菜单能够生成各种功能菜单,将各种屏幕表格和报表控制连接组合在一起,构成一个完整的应用系统。
Informix-SQL通过数据库管理软件Isql对Informix数据库(DataBase)和数据表(Table)进行管理和维护。Isql提供了屏幕表格、SQL交互数据操纵、数据库控制、数据表控制、报表控制等功能机制。数据库管理员能够利用屏幕表格完成数据的查询、修改和删除,也能够使用标准SQL语言实现数据定义、数据操纵。对于数据库的建立和删除能够通过数据库控制来实现。对于数据表和索引的建立、修改及删除则可通过数据表控制来完成。
作为软件研发工具,Informix-SQL的长处在于他的简单、易学连同程式的通用性(即不需编译,可在各种UNIX操作系统下直接运行),而且程式所占的存储空间和运行空间较小,但他的用户界面只能处理比较简单的数据流程,无法适应各种复杂的应用系统。利用Informix-SQL进行应用软件研发的过程如下:
首先,根据用户需求,确定相应的应用系统的数据字典,利用Informix-SQL数据库模式定义工具建立起相关的数据库及数据表,完成应用软件研发的数据库定义和设计过程。建立数据库及数据表,既能够使用Isql软件通过系统菜单提示实现,也能够通过建立Shell文档的方式实现。由于Shell文档本身是文本文档,无需编译就能执行,修改起来很方便,所以使用Shell文档成为建立数据库及数据表的常用方法。
其次,在软件的编程和调试过程中,能够充分利用Informix-SQL的各种研发工具进行研发。我们能够利用用户菜单创建起应用系统的各级功能菜单,利用屏幕表格构造出应用系统的数据输入模块,使用SQL 语言实现数据的处理,利用报表输出工具实现数据的输出。这样,通过用户菜单、屏幕表格、SQL 语言和报表输出的有机结合,构成了一个完整的应用软件系统。
2.Informix-ESQL
Informix-ESQL称为嵌入式SQL研发工具,即将符合ANSI标准的SQL语句嵌入到宿主语言中。主语言能够是C、COBOL、ADA和FORTRAN等语言,因此Informix-ESQL可细分为Informix-ESQL/C、Informix-ESQL/COBOL、Informix-ESQL/ADA和Informix-ESQL/FORTRAN等。Informix-ESQL是在Informix-SQL基础上发展起来的第三代程式语言研发工具(环境)。
由于C语言具备灵活、运行效率高、和UNIX系统连接方便、紧密等特点,所以Informix-ESQL/C便成为Informix-ESQL研发工具系列中的最好选择。下面以Informix-ESQL/C为例对Informix-ESQL进行分析。
   Informix-ESQL/C包括预处理程式、C语言的库函数连同前导文档等。利用这些软件,能够方便地完成下述工作:
(1)在C语言及其子程式中嵌入SQL语句。
(2)执行DECIMAL、DATE、DATETIME和INTERVAL等数据类型的转换和操作。
(3)使用C语言实用函数完成特定的操作。
(4)在ACE报表工具中调用C函数。
(5)在PERFORM屏幕表格工具中调用C函数。
Informix-ESQL/C 作为一个很优秀的应用软件研发工具,在第三代程式设计语言中占据着重要的地位。Informix-ESQL/C 充分继承了C 语言简练、灵活、表达能力丰富的特点,生成的目标程式精练、运行效率高。通过嵌入在C 语言中的SQL语句,Informix-ESQL/C 能够方便灵活地操纵Informix数据库。利用宿主变量,数据能够在C语句和SQL语句之间进行传递。通过分析指示变量,C语言能够对SQL语句的返回结果进行逻辑判断,确定数据的正确走向。为了处理多行数据,Informix-ESQL/C提供了一种游标机制,能够实现多行数据的查询和插入。Informix-ESQL/C还具备动态处理的功能,能够动态地处理各种SQL语句。
Informix-ESQL/C在应用软件的研发过程中发挥着重要的作用。在数据库定义和设计阶段,Informix-ESQL/C的表现形式和Informix-SQL相似,但其目标程式生成需要经过编译。在软件的编程和调试阶段,Informix-ESQL/C灵活、功能丰富的特点得到充分体现。在数据输入模块中,我们能够直接使用Informix提供的PERFORM屏幕表格工具实现数据的输入及查、删、改等功能。在数据处理模块,C语言灵活、强大的功能得到了充分的发挥。在数据输出模块,Informix提供的ACE报表工具能够方便地实现各种报表输出。此外,我们还能够编写C函数或使用UNIX系统的Lex工具等直接生成各式各样的报表,实现数据的各种输出。
利用Informix-ESQL/C研发软件,目标程式必须经过编译生成。其目标程式占用的存储空间较小,运行空间也较小,因此程式的运行效率很高。由于Informix-ESQL/C程式的主体是C语言,虽然灵活性很强,但程式的编写及调试比较复杂,相应的程式维护也比较困难。
3.Informix-4GL
Informix-4GL是第四代数据库研发语言,他的功能很强,能够用一条简单的语句实现若干条低级语言语句才能实现的功能。
Informix-4GL提供了研发基于Informix数据库的管理信息系统的全部工具,包括数据库语言、程式设计语言、屏幕建立程式、菜单建立程式、报表书写程式和窗口管理程式。通过数据库语言我们能够直接在4GL程式中对数据库进行定义、数据插入及查、删、改等操作。其程式设计语言既有第四代程式设计语言的简单性,又有通用程式设计语言的灵活性。4GL的非过程语句很紧凑,并能满足大量的应用需要。过程化语句能够实现4GL的设计者们未能预见的功能。Informix-4GL包括一个屏幕建立程式(FORM4GL),软件研发者能够用他来设计美观的屏幕格式作为应用程式的用户画面,并使用Informix-4GL的交互式语句实现数据的输入及显示。菜单建立程式使程式员只要描述出菜单的各选择项及相应动作,就能自动完成系统功能菜单的建立。报表书写程式提供了建立各种报表的语句及内部函数,使报表的生成很容易。利用窗口管理程式能够在应用程式中根据需要打开相应的窗口,并在窗口中执行相应的程式,使研发出的程式界面更友好和丰富,软件的功能更强。
使用Informix-4GL研发应用软件比较容易。使用数据库语言,我们能够在Informix-4GL程式中直接定义并建立所需的数据库及数据表。利用菜单建立程式,我们能够方便地建立起应用程式的各级功能菜单。通过屏幕建立程式和窗口建立程式,我们能够迅速构造起应用程式的数据输入模块。使用4GL的程式控制语句、内部函数及C语言函数接口,能够编写出各种复杂流程的数据处理程式。通过报表书写程式,能够快速生成各种输出报表。
使用Informix-4GL编写程式,他的目标程式也必须经过编译生成。其目标程式占用的存储空间较大,所需运行空间也较大。但是,4GL程式的研发及调试比较简单,程式维护也比较方便。
三、结束语
能够看到,Informix为程式设计者提供了功能强大、内容丰富、特点各异的多种软件研发工具。他们既有突出的长处,同时又都存在一些缺陷。
利用Informix-SQL研发程式简单方便,且无需编译,但面对复杂应用问题的束手无策及不友好的用户界面使其难以在应用软件的研发中占据重要地位。Informix-ESQL以功能强大、存储及运行空间小、运行效率高等特点在应用软件研发中发挥着重要的作用,但其研发及维护的复杂性无疑加大了软件的研发周期。简洁易懂、功能丰富的Informix-4GL研发软件快速、方便,但其较大的存储和运行空间使软件系统的维护费用较高。
根据这些软件研发工具各自不同的特点,在实际研发过程中,只有根据实际需要加以灵活、合理、综合地运用,才能够及时研发出令人满意的应用软件。在应用软件研发的数据库定义和设计阶段应该使用Informix-SQL,通过SQL的Shell文档来建立相应的数据库及数据表,这样根据需要能够方便地对数据库结构进行修改。在软件编程和调试阶段,应根据用户的应用需求和电脑设备的具体情况来确定采用何种软件研发工具:假如用户的应用需求很急切,而且使用的电脑设备性能配置比较高,那么Informix-4GL就是最好选择的研发工具;若用户有比较充裕的研发时间,则可选择Informix-ESQL;而在系统的维护阶段,Informix-SQL是必不可少的工具。

喜欢本文,那就收藏到:

    Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网
相关评论  我也要评论
还没有关于此文章的相关评论!
  • 昵称: (为空则显示guest)
  • 评论分数: ★ ★ ★★★ ★★★★ ★★★★★
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 导航
    赞助商
    文章类别
    订阅