论文部分内容阅读
摘要:在研究软构件理论的基础上,将构件技术引入MIS系统的开发,提出了一种基于软构件的MIS系统开发模型,采用PowerBuilder实现了该模型,并在多个MIS系统中得到有效应用。
关键词:软构件;MIS;PowerBuilder
中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)05-11187-02
1 引言
在管理信息系统MIS的开发过程中,经常遇到这样的问题,如开发出来的系统不符合用户要求,需要做大量修改;工作进程难以控制;对数据库的依赖性强等。这些问题的产生,一方面是由于MIS系统开发过程本身的复杂性,另一方面也与开发时所采用的技术有关。软件复用被广泛地认为是解决这一问题的关键。目前,被认为有前途的并正被研究使用的软件复用方法主要有:复用代码、复用分析、复用处理过程等。加之面向对象的方法引入解决软件复用性的问题,它的封装和继承机制为软件模块的复用提供强有力的支持。将软件复用技术尤其是软构件技术引入MIS系统设计的各个阶段,对提高MIS系统软件的生产率,增强软件的可靠性和可维护性都有着重大意义。
国际上出现了CORBA,COM/DCOM/COM+ 等软构件的标准和技术,也出现了支持构件软件的开发工具,如Delphi,PowerBuilder等。在基于构件的MIS系统中,最重要的技术便是如何把诸多构件有机地组织起来,减少系统的复杂性。为了控制系统的复杂性,提高软件重用的层次,本文给出了PowerBuilder构建的MIS系统开发模型,对基于软构件开发MIS系统进行了一些探索。
2 软构件的开发方法及其特点
集软件复用、分布式对象计算、CASE和企业级应用程序开发(EAD)等技术于一体的基于构件的软件开发(CBD ,Component Based Software Development)是以软件构架为组装蓝图,以可复用软件构件为组装模块,支持组装式复用,是提高软件生产效率和软件产品质量的有效途径。它包含了系统分析、构造、维护和扩展的各个方面,并以构件方法为核心。当今软件开发技术的主流已是基于构件的技术,构件技术是面向对象技术的发展。只要遵循构件技术的规范,就可以用自己方便的语言去实现可被复用的构件。用户可以在这些构件的基础上,根据需要编制自己的应用程序。与传统的软件复用方法比较,CBD 有以下特点:
(1) 软构件是基于面向对象技术的,软构件是实体对象及相关数据的封装,体现了实体的抽象性,也更加符合客观世界的事物描述方式;
(2) 构件化的思想使开发者能更专注于自己编写的构件的内容:如,实现业务逻辑构件的程序员可以专心于业务过程的实现,而不用分太多的精力考虑和用户的交互;而编写各种界面构件的程序员可以更专注于界面的实现;
(3) 构件封装隐藏了内部数据,操作细节,只是按照标准接口向外提供功能,构件之间也按照标准的规范通过接口进行连接,便于软件的升级和扩充,重用度高。可以实现独立地替换或升级,而不影响系统的其他模块。能快速地适应业务需求的变化,随时替换不适应新情况的功能模块,而不用重新开发新系统;
(4) 构件设计和实现中要注意功能要相对单纯、结构要相对完整,减少与其他构件的祸合度,便于测试、维护。
CBD 技术是一种社会化的软件开发方法,它使得开发者可将不同语言、不同供应商开发的构件组合在一起构造新的软件系统。
3 软构件技术与MIS系统开发方法
传统的MIS开发方法主要有:①面向数据流的SD方法,即结构化设计方法,包括自底向上法和自顶向下法;②快速原型法(面向对象方法),其核心是原型,即模型,是系统的早期可运行版本。这些方法各有优缺点:“自底向上”法只重局部而忽视了对整体的把握;“自顶向下”法开发周期长、见效慢、缺乏灵活性和适应性;快速原型法虽然具有很明显的优越性,但因其依赖于快速开发工具的支持,又不能不令许多系统开发者望而却步。
基于这些问题的出现,应用软构件技术开发MIS系统成为现在新的研究方向。采用软构件技术开发MIS系统的过程与搭积木的过程很类似,一般是先构筑系统的总体框架,然后构造各个构件,并依次把构件安装到系统中去。这种方法克服了快速原型法需要快速工具支持的不足,取而代之以软件构件化技术来构造系统。大部分MIS 系统在功能上有类似之处,因而利用软件的重用技术就可以把开发过程大大简化。
根据MIS系统的一般结构,完整的MIS系统的功能是对信息(数据)进行采集、存储、处理、管理、检索和传输,在需要时能够向使用者提供有用的信息。MIS系统基本上是以数据为中心的,其主要功能都是围绕着数据进行的,如数据定义、数据录入、数据处理、查询检索、统计分析、报表、数据传输等。 根据以上特点,MIS系统中的相应的应用领域构件分为数据类构件和控制类构件,它们是MIS系统领域构件的主要组成部分,它们的集合构成MIS系统的构件库的重要组成部分。在开发MIS系统之初就应着手建立相应的构件库,并在开发过程中不断完善。
MIS系统采用CBD设计方法,把应用系统划分为若干个构件,把程序生成问题转化为软构件的设计、处理问题。 对于不同的应用系统,根据系统的实际需要,对构件库中软构件进行选择,根据一定的集成算法将软构件连接成完整的应用系统。
4 基于软构件的MIS系统的开发模型
构成MIS系统的基本结构见图1:
图1 MIS系统的基本结构
由图1发现,通用的信息系统包括三大模块:信息输入模块、查询统计模块及报表生成模块。另外,为了协调整个系统的工作,还必须提供模块之间协同交互的功能模块,即控制模块,该模块为诸模块提供统一的控制。
根据MIS系统的共同特点,采用软构件技术建立一种基于软构件的MIS系统开发模型,如图2:
图2 MIS系统的构件化开发模型
系统基础构件是指支撑集成环境和运行环境的构件,如控件、按钮等。在此基础上构建大粒度的软构件,根据不同的功能和结构,可以分为以下几类:
(1) 输入类构件:此类构件专门负责提供数据增、删、改操作功能。有单表维护构件、主从双表构件和一主多从表构件,每种构件还可以有分为单记录,多记录等维护风格;
(2) 查询统计构件:专门负责数据的查询统计功能。只要有查询条件和查询结果两大部分。查询结果有明细、统计及图表等表现形式;
(3) 报表类构件:报表类构件专门实现报表的生成、预览与打印输出;
(4) 系统控制类构件:是指系统组装集成后的程序总控构件,为用户达到整个MIS系统的可操作功能提供了入口和全局管理,其实质是一种框架构件;
(5) 辅助系统构件:辅助系统构件是指完成用户管理、角色划分、操作注册、权限设置等功能的构件。它们在组装环境用它们来设置系统用户及系统功能。
5 模型实现
PowerBuilder(以下简称PB)是面向客户器/服务器应用领域的前端开发工具,它支持面向对象的软件开发方法。在PB中,一方面,派生对象可重用父对象的所有属性、变量、函数、结构和响应事件的脚本程序;另一方面,对派生窗口、菜单和用户对象,进行修改和扩充。另外,创建自定义的用户对象,用户可根据应用系统功能的需要,放置控件,定义用户事件和用户对象函数,由此构造出可重用的用户定义的软部件。
系统基础构件包括,数据窗口构件ue_dw,是访问后台数据库的构件,另一种是进行数据处理的按钮构件ue_cb,第三种是画面的基础构件w_1。这三种构件构成了MIS系统的基础构件层。
以这三种基础构件为基础,通过层次展开的方式,分别形成输入维护类构件,查询统计类构件,报表类构件等等。下面简单介绍画面类构件和报表类构件。
(1)画面类构件(输入类构件和查询统计类构件)
图3 画面类构件
对MIS系统的画面进行分析,提供条件数据窗口控件、结果数据窗口控件,所有的处理按钮,如:查询、上一条记录、下一条记录、下画面、增加、更新、画面跳转、删除、帮助、画面硬拷贝、退出等。在实际的开发过程中,根据每个画面的具体需要,把相应地按钮或者数据窗口控件设置成可见或者不可见。如:输入类控件,就把条件数据窗口控件是不可见的;而查询统计类控件,更新和删除等按纽是不可见的。
(2)报表类构件
图4 报表类构件
报表类控件主要提供打印预览窗口、页面设置、打印机控制、数据过滤以及打印输出到文件或者打印机等功能。利用丰富的数据窗口控件的属性,对数据窗口进行控制,允许用户调整相应属性,满足用户的各种需求。
6 实际应用
在开发作业成本管理系统COMPASS的实践中,使用了上述构件库,2个月左右完成了系统的开发工作。这些软构件的主要特点是:(1) 它们都是基于PB 用户对象构造的软构件;(2) 系统通过软构件的对象函数与软构件发生联系;(3) 软构件通过数据窗口控件与系统数据库进行数据交换。
其后在生产管理系统、物流管理系统开发过程中,因系统的画面风格、按钮位置,数量的不同,只需要对上述构件表现形式上进行修改,就可以使用。使软件开发工作变得相当容易、简单。
以上主要介绍了目前一种新的软件开发方法,即以面向对象为基础的基于软构件的开发方法。 构件技术是一种非常有前途的软件开发新技术,MIS系统又是当前最广泛的计算机应用领域之一,将两者结合起来必将进一步推动MIS系统的发展并为其软件的产业化提供相应的解决方案。
参考文献:
[1] Johannes Sametinger. Software Engineering with Resuable Components[M]. NewYork: Spring-Verlag Berlin Heidelbery. 1997.
[2] 杨芙清. 软件复用及相关技术[J]. 计算机科学, 1999,26(5).
[3] 王少锋, 何志均, 王克宏. 软件重用技术研究[J]. 计算机工程与设计, 2000,21(5):10-15.
[4] 李相枢. MIS系统的组成和构件模型[J]. 计算机工程与应用, 1999,35(1):27-30.
[5] 朱江,彭容修. 在PB环境利用面向对象技术改善软件复用性[J]. 计算机系统应用,2002,3:65-67.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
关键词:软构件;MIS;PowerBuilder
中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)05-11187-02
1 引言
在管理信息系统MIS的开发过程中,经常遇到这样的问题,如开发出来的系统不符合用户要求,需要做大量修改;工作进程难以控制;对数据库的依赖性强等。这些问题的产生,一方面是由于MIS系统开发过程本身的复杂性,另一方面也与开发时所采用的技术有关。软件复用被广泛地认为是解决这一问题的关键。目前,被认为有前途的并正被研究使用的软件复用方法主要有:复用代码、复用分析、复用处理过程等。加之面向对象的方法引入解决软件复用性的问题,它的封装和继承机制为软件模块的复用提供强有力的支持。将软件复用技术尤其是软构件技术引入MIS系统设计的各个阶段,对提高MIS系统软件的生产率,增强软件的可靠性和可维护性都有着重大意义。
国际上出现了CORBA,COM/DCOM/COM+ 等软构件的标准和技术,也出现了支持构件软件的开发工具,如Delphi,PowerBuilder等。在基于构件的MIS系统中,最重要的技术便是如何把诸多构件有机地组织起来,减少系统的复杂性。为了控制系统的复杂性,提高软件重用的层次,本文给出了PowerBuilder构建的MIS系统开发模型,对基于软构件开发MIS系统进行了一些探索。
2 软构件的开发方法及其特点
集软件复用、分布式对象计算、CASE和企业级应用程序开发(EAD)等技术于一体的基于构件的软件开发(CBD ,Component Based Software Development)是以软件构架为组装蓝图,以可复用软件构件为组装模块,支持组装式复用,是提高软件生产效率和软件产品质量的有效途径。它包含了系统分析、构造、维护和扩展的各个方面,并以构件方法为核心。当今软件开发技术的主流已是基于构件的技术,构件技术是面向对象技术的发展。只要遵循构件技术的规范,就可以用自己方便的语言去实现可被复用的构件。用户可以在这些构件的基础上,根据需要编制自己的应用程序。与传统的软件复用方法比较,CBD 有以下特点:
(1) 软构件是基于面向对象技术的,软构件是实体对象及相关数据的封装,体现了实体的抽象性,也更加符合客观世界的事物描述方式;
(2) 构件化的思想使开发者能更专注于自己编写的构件的内容:如,实现业务逻辑构件的程序员可以专心于业务过程的实现,而不用分太多的精力考虑和用户的交互;而编写各种界面构件的程序员可以更专注于界面的实现;
(3) 构件封装隐藏了内部数据,操作细节,只是按照标准接口向外提供功能,构件之间也按照标准的规范通过接口进行连接,便于软件的升级和扩充,重用度高。可以实现独立地替换或升级,而不影响系统的其他模块。能快速地适应业务需求的变化,随时替换不适应新情况的功能模块,而不用重新开发新系统;
(4) 构件设计和实现中要注意功能要相对单纯、结构要相对完整,减少与其他构件的祸合度,便于测试、维护。
CBD 技术是一种社会化的软件开发方法,它使得开发者可将不同语言、不同供应商开发的构件组合在一起构造新的软件系统。
3 软构件技术与MIS系统开发方法
传统的MIS开发方法主要有:①面向数据流的SD方法,即结构化设计方法,包括自底向上法和自顶向下法;②快速原型法(面向对象方法),其核心是原型,即模型,是系统的早期可运行版本。这些方法各有优缺点:“自底向上”法只重局部而忽视了对整体的把握;“自顶向下”法开发周期长、见效慢、缺乏灵活性和适应性;快速原型法虽然具有很明显的优越性,但因其依赖于快速开发工具的支持,又不能不令许多系统开发者望而却步。
基于这些问题的出现,应用软构件技术开发MIS系统成为现在新的研究方向。采用软构件技术开发MIS系统的过程与搭积木的过程很类似,一般是先构筑系统的总体框架,然后构造各个构件,并依次把构件安装到系统中去。这种方法克服了快速原型法需要快速工具支持的不足,取而代之以软件构件化技术来构造系统。大部分MIS 系统在功能上有类似之处,因而利用软件的重用技术就可以把开发过程大大简化。
根据MIS系统的一般结构,完整的MIS系统的功能是对信息(数据)进行采集、存储、处理、管理、检索和传输,在需要时能够向使用者提供有用的信息。MIS系统基本上是以数据为中心的,其主要功能都是围绕着数据进行的,如数据定义、数据录入、数据处理、查询检索、统计分析、报表、数据传输等。 根据以上特点,MIS系统中的相应的应用领域构件分为数据类构件和控制类构件,它们是MIS系统领域构件的主要组成部分,它们的集合构成MIS系统的构件库的重要组成部分。在开发MIS系统之初就应着手建立相应的构件库,并在开发过程中不断完善。
MIS系统采用CBD设计方法,把应用系统划分为若干个构件,把程序生成问题转化为软构件的设计、处理问题。 对于不同的应用系统,根据系统的实际需要,对构件库中软构件进行选择,根据一定的集成算法将软构件连接成完整的应用系统。
4 基于软构件的MIS系统的开发模型
构成MIS系统的基本结构见图1:
图1 MIS系统的基本结构
由图1发现,通用的信息系统包括三大模块:信息输入模块、查询统计模块及报表生成模块。另外,为了协调整个系统的工作,还必须提供模块之间协同交互的功能模块,即控制模块,该模块为诸模块提供统一的控制。
根据MIS系统的共同特点,采用软构件技术建立一种基于软构件的MIS系统开发模型,如图2:
图2 MIS系统的构件化开发模型
系统基础构件是指支撑集成环境和运行环境的构件,如控件、按钮等。在此基础上构建大粒度的软构件,根据不同的功能和结构,可以分为以下几类:
(1) 输入类构件:此类构件专门负责提供数据增、删、改操作功能。有单表维护构件、主从双表构件和一主多从表构件,每种构件还可以有分为单记录,多记录等维护风格;
(2) 查询统计构件:专门负责数据的查询统计功能。只要有查询条件和查询结果两大部分。查询结果有明细、统计及图表等表现形式;
(3) 报表类构件:报表类构件专门实现报表的生成、预览与打印输出;
(4) 系统控制类构件:是指系统组装集成后的程序总控构件,为用户达到整个MIS系统的可操作功能提供了入口和全局管理,其实质是一种框架构件;
(5) 辅助系统构件:辅助系统构件是指完成用户管理、角色划分、操作注册、权限设置等功能的构件。它们在组装环境用它们来设置系统用户及系统功能。
5 模型实现
PowerBuilder(以下简称PB)是面向客户器/服务器应用领域的前端开发工具,它支持面向对象的软件开发方法。在PB中,一方面,派生对象可重用父对象的所有属性、变量、函数、结构和响应事件的脚本程序;另一方面,对派生窗口、菜单和用户对象,进行修改和扩充。另外,创建自定义的用户对象,用户可根据应用系统功能的需要,放置控件,定义用户事件和用户对象函数,由此构造出可重用的用户定义的软部件。
系统基础构件包括,数据窗口构件ue_dw,是访问后台数据库的构件,另一种是进行数据处理的按钮构件ue_cb,第三种是画面的基础构件w_1。这三种构件构成了MIS系统的基础构件层。
以这三种基础构件为基础,通过层次展开的方式,分别形成输入维护类构件,查询统计类构件,报表类构件等等。下面简单介绍画面类构件和报表类构件。
(1)画面类构件(输入类构件和查询统计类构件)
图3 画面类构件
对MIS系统的画面进行分析,提供条件数据窗口控件、结果数据窗口控件,所有的处理按钮,如:查询、上一条记录、下一条记录、下画面、增加、更新、画面跳转、删除、帮助、画面硬拷贝、退出等。在实际的开发过程中,根据每个画面的具体需要,把相应地按钮或者数据窗口控件设置成可见或者不可见。如:输入类控件,就把条件数据窗口控件是不可见的;而查询统计类控件,更新和删除等按纽是不可见的。
(2)报表类构件
图4 报表类构件
报表类控件主要提供打印预览窗口、页面设置、打印机控制、数据过滤以及打印输出到文件或者打印机等功能。利用丰富的数据窗口控件的属性,对数据窗口进行控制,允许用户调整相应属性,满足用户的各种需求。
6 实际应用
在开发作业成本管理系统COMPASS的实践中,使用了上述构件库,2个月左右完成了系统的开发工作。这些软构件的主要特点是:(1) 它们都是基于PB 用户对象构造的软构件;(2) 系统通过软构件的对象函数与软构件发生联系;(3) 软构件通过数据窗口控件与系统数据库进行数据交换。
其后在生产管理系统、物流管理系统开发过程中,因系统的画面风格、按钮位置,数量的不同,只需要对上述构件表现形式上进行修改,就可以使用。使软件开发工作变得相当容易、简单。
以上主要介绍了目前一种新的软件开发方法,即以面向对象为基础的基于软构件的开发方法。 构件技术是一种非常有前途的软件开发新技术,MIS系统又是当前最广泛的计算机应用领域之一,将两者结合起来必将进一步推动MIS系统的发展并为其软件的产业化提供相应的解决方案。
参考文献:
[1] Johannes Sametinger. Software Engineering with Resuable Components[M]. NewYork: Spring-Verlag Berlin Heidelbery. 1997.
[2] 杨芙清. 软件复用及相关技术[J]. 计算机科学, 1999,26(5).
[3] 王少锋, 何志均, 王克宏. 软件重用技术研究[J]. 计算机工程与设计, 2000,21(5):10-15.
[4] 李相枢. MIS系统的组成和构件模型[J]. 计算机工程与应用, 1999,35(1):27-30.
[5] 朱江,彭容修. 在PB环境利用面向对象技术改善软件复用性[J]. 计算机系统应用,2002,3:65-67.
本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。