RELATEED CONSULTING
相关咨询
选择相应客服马上在线沟通
服务时间:8:30-18:00
关闭右侧工具栏
关于软件系统数据集成具体讲解
  • 作者:大左软件
  • 发表时间:2015-07-21
  • 新闻资讯

现在社会项目越做越大,功能和技术要求也来越来越高,如何能达到满足市场、满足客户的需求呢?单独自己一家公司技术已经能难实现,必须依靠多家公司技术进行综合集成,才能有效达到目的,以后对如何怎么软件集成进行全面阐述:

一、软件集成的概述

1、软件集成的定义

软件集成就是用一种较好的方式,使多种软件的功能集成到一个软件里,或是把软件的各部分组合在一起。
软件集成是指将完成某项工作的一组相关的应用程序组织起来在一个统一的操作环境下以综合一致和整体连贯的形态来进行工作。

二、集成与耦合

1、耦合和耦合度的定义

耦合是指两个或两个以上的电路元件或电网络的输入与输出之间存在紧密配合与相互影响,并通过相互作用从一侧向另一侧传输能量的现象;概括的说耦合就是指两个或两个以上的实体相互依赖于对方的一个量度。
耦合度(coupling)衡量了两种组件之间的独立性以及其中一个的改变对另一个的影响度。
耦合定义了集成的程度。松耦合中,集成只依赖于几个离散的接口;但紧耦合中的软件执行时通常存在着相互依赖性。
 

2、集成与耦合

当把两种软件组件集成到一起时,有几个重要的因素会严重影响着集成的质量与可用
性。这些因素包括:

  • 所使用的集成模型;

  • 所使用的集成工具软件;

  • 设计者的选择。

在任何集成项目中,最重要的成果之一就是降低其中软件组件的耦合程度,紧密耦合型的集成可能会为维护工作带来严重负担。总的目标是使用松弛型耦合组件使它们之间的相互依赖性变得很少或不存在。

三、软件集成的方式

应用软件的集成可以在三个要点上实现——表示层、数据层、功能层。

1、集成模型的概述

集成模型:是一种用来集成软件的特定方法和结构。它为各种方法和结构以及各种要求和限制提供了一系列不同的选项,并将重点集中在以下的一个或两个特性上:
实现集成的简单性;
对于不同配置集成的可重用性;
可用集成方法的广泛性;
在执行集成的过程中要求的专门技术。
集成模型定义了集成的特性和机制,并由此决定如何将软件集成在一起。 

2、表示、数据、功能集成的区别

  • 表示层的集成容易实现但有很大局限性。

  • 数据集成比起表示层来说,提供了更加广泛的解决方法,但是可能要重写软件才能正确地处理各种数据。

  • 功能集成是最重要的模型,但是同时也是最复杂的。

功能集成分为三种:数据一致性、多步处理过程和即插即用组件。

四、表示集成

1、表示集成的概述

表示集成是最简单的方式之一。在这种模型中,一般使用软件用户界面来实现对多种软件的集成。典型情况下,集成的结果是形成一个新的、同意的显示界面。新的界面看起来好像是单一应用程序,但实际上却可能调用几个遗留应用程序。集成逻辑将现有的显示界面作为集成点来指导用户进行互动操作,并在用户操作与相应软件之间进行通信,然后再把不同的软件部件产生的结果综合起来。比如说,我们可以使用屏幕剪贴工具来调用一系列基于终端的界面,并可能向用户提供附加的性能、功能和工作流程。这样也可以为用户优化遗留程序之间的流程。
表示集成模型通过遗留软件的现有表示来集成新的软件。通常用来创建一个新的用户界面,也能用它来与其他软件进行集成。
表示集成模型建立在这样的基本设想上:使用现有的表示逻辑模块来访问遗留的应用软件,通过重绘来创建一个新的用户界面。但实际上为了实现集成,用户的每个交互动作最终都会被映射到旧的显示机制上。这种方法也可以用来集成其他软件,但只能提供局限于旧的用户界面上的操作。
下图显示了表示集成模型的结构。在其中已有的两个不同软件的显示界面上,建立了公共界面。屏幕截取技术是在此模型中常用的集成技术,编程者可用此技术来访问遗留的显示界面,并创建新的图形用户界面。

表示集成模型通过应用软件的用户界面集成
 

2、何时使用表示集成

如果你想实现以下目的,就应该使用表示集成模型:

  • 在现有的基于终端的应用软件上配置基于PC的用户界面,以便为终端用户提供更易于使用的软件。

  • 提供给一个看上去单一,但实际上由多个软件组件组成的应用软件。

  • 如果一个软件只有在显示界面集成中才有意义、才可行,那么集成时就应使用表示集成模型。

这张形式地集成只有在使用用户界面或是遗留软件的显示界面层就可完成集成的情况下才有用。它典型的用于文本界面比如IBM3270或VT100的集成中。最好的集成模型例子有:

  • 为大型机应用程序提供一个Microsoft Windows界面。

  • 为SAP R/3与大型机应用程序提供同意的HTML界面。

  • 为多个大型机应用程序提供统一的基于Java的界面。

第一个例子只是轻度集成,因为它只把大型机应用程序集成到Windows程序中;而第二、三例则需要其他的集成逻辑模块,因其中涉及了两个应用程序的数据和功能。这种形式的集成是成功的,因为它可用来迅速解决一些特定的集成问题。在集成工具中,这是一种不需要任何经验即可完成的简单集成方式,因而花费较少。但软件的重要性也很有限,而且整个集成的功能与特性也不多。通过降低访问多个应用软件的复杂性,增加了用户的适用经验。 

3、表示集成的特点

表示集成易于实现,并可以相对较快地完成。显示逻辑模块通常比数据和功能逻辑模块更为简单,因为它的内部结构可见,而且常有很好的记录与自述。良好的集成工具可以完成创建集成所需的大部分工作,而开发者只需致力于新显示界面的构造就可以了。
另一方面,显示界面的集成只发生在用户界面层上,因此只有旧显示界面定义的数据和操作才有效。而且表示集成可能会成为系统性能的瓶颈,因为在现有的应用软件上额外增加了一层软件。现有软件中内在的数据和逻辑会变得不可访问。
表示集成模型是三种模型中最有局限的,集成只发生在显示界面层而不是应用软件或数据的互联中。

五、数据集成

1、数据集成的概述

数据集成模型的基本思想史对各种软件组件的数据存取进行集成。这样,用户在存取数据时就可以绕过相应的应用软件,而直接获取该软件所创建并存储的相应信息。例如:我们可以利用数据库网关访问使用IBM DB2数据的客户订单系统和使用Oracle数据库的客户账单系统。网关负责将信息从各个数据库中抽出,存放到一个用来评估客户购物习惯的数据挖掘应用程序中。这样,在使用网关时,我们就可以绕过订单处理软件和账单软件而直接获取数据。
数据集成模型通过直接访问软件所创建、维护并存储的相应信息来实现软件集成,这样做通常是为了在应用软件之间实现数据的重用和同步。 

2、何时使用数据集成

如果你想要实现以下目标,就应该使用数据集成模型:

  • 从多个信息源综合数据来进行分析和决策。例如,从多个包含用户信息的数据源获取信息,并把它们送到统计软件包。

  • 向多个应用软件提供某公共信息源的只读访问权限。例如,创建一个有完整用户信息的数据库,并运行多个数据挖掘或统计软件访问该数据库的情况。

  • 从一个数据源提取信息并转换为合适的格式,以此来更新另一数据源的信息。例如,想要更新所有数据源的客户地址信息,使它们保持同步和一致。

 3、数据集成的特点

数据集成模型比表示模型更加灵活。它比后者能提供更广泛的数据访问,也允许用户访问完整的一套信息或是其中一部分。这取决于新软件的需要。
这种方法也简化了访问数据库的过程。当数据库使用接口很容易访问时,或是在使用中间件向新的应用程序提供多数据源集成时,数据集成模型就可加快集成速度。
每种集成都与一种数据模型相联系。如果数据模型发生改变,那么集成就会被破坏。这就使数据集成对变化非常敏感。由于系统通常是不断演变的,因此这样的改变将会导致为了维护集成而付出大量工作。

六、功能集成

1、功能集成的概述

功能集成模型在代码级上实现软件集成,这可能在对象或过程级别上实现。如果软件使用应用编程接口(API),那么也可以用API来实现集成。比如,我们可以通过访问订单和账单软件来更新从第三方软件传来的用户地址信息。如果提供给订单或账单软件的地址信息需要遗留软件的相应操作,而这种操作在数据被独处或存储之前,那么在这种情况下我们将使用功能集成而不是数据集成。比起在新应用程序中创建新逻辑来说,重用现有的逻辑则更加有效,也不容易产生错误。而且对每个应用软件的访问是定制的,其中包括应用软件的语义和行为特性。另一种进行功能集成的方法是使用连接器来屏蔽软件内部机制,而直接响应获取用户信息或改变用户地址的请求。所谓连接器是一种软件,向用户提供使用软件功能的方便途径,同时对外部隐藏了软件内建立实际连接的复杂性。它使整个软件看上去好像在开始设计时就考虑到提供简易访问与集成一样。
用功能集成模型来实现软件集成的目的在于从其他新的或现有的软件中调用现有功能,这种集成可以通过软件接口来实现。
功能集成模型是在业务逻辑层(使用编程语言来实现业务处理机制的方法)上完成集成,而不是在显示界面或数据层。该模型如下图所示。功能集成要求集成点存在于应用程序代码之内,集成处可能只需简单得使用公开的API就可以访问,也可能复杂得需要用附加代码段来创建新的访问点。

功能集成模型直接对应用软件的代码进行集成
 

2、功能集成的广度

功能集成比表示集成和数据集成更灵活,它可以应用于三种不同的方法,没一种都有不同的特性,并且可用来解决不同类型的集成问题。

  • 数据一致性:将从一个或多个信息源来的信息在整个集成应用软件中一起更新。

  • 多步处理:在整个集成软件中执行一系列协调操作。

  • 即插即用组件:在整个应用软件中创建可复用的接口,简化新应用软件的构造过程。

 

3、何时使用功能集成

功能集成模型的独特之处在于,它不仅能解决前两种方法可解决的问题,还能解决更多难题。其实现方法与表示集成、数据集成不同,它通过访问旧显示机制的代码或以前用来获取数据的代码来集成。 

七、软件集成测试

1、集成测试的概念

集成测试又称“组装测试”、“联合测试”。集成测试遵循特定的策略和步骤将已经通过单元测试的各个软件单元(或模块)逐步组合在一起进行测试,以期望通过测试发现各软件单元接口之间存在的问题。
 

2、集成测试对象

理论上凡是两个单元(如函数单元)的组合测试都可以叫做集成测试。实际操作中,通常集成测试的对象为模块级的集成和子系统间的集成,其中子系统集成测试称为组件测试。 

3、集成测试的原则

  • 集成测试是产品研发中的重要工作,需要为其分配足够的资源和时间。

  • 集成测试需要经过严密的计划,并严格按计划执行。

  • 应采取增量式的分步集成方式,逐步进行软件部件的集成和测试。

  • 应重视测试自动化技术的引入与应用,不断提高集成测试效率。

  • 应该注意测试用例的积累和管理,方便进行回归并进行测试用例补充。 

4、集中测试的内容

  • 穿越接口的数据是否会丢失

  • 一个模块的功能是否会对另一个模块的功能产生不利影响

  • 实现子功能的模块组合起来是否能够达到预期的总体功能

  • 全局数据结构的测试

  • 共享资源访问的测试

  • 单个模块的误差经过集成的累加效应

  • 集成功能测试

  • 接口测试

  • 全局数据结构测试

  • 资源测试

  • 任务优先级冲突测试

  • 性能和稳定性测试

八、软件集成的发展及应用

在过去的30年中,应用在信息系统中的集成概念已经引人注目的变化。最开始集成主要是将一套不同的硬件联系在一起支持从头开发的软件。但随着硬件的发展,使得构建更加复杂的软件成为可能,集成的特性发生的变化。集成越来越意味着耦合硬件和软件来形成一个系统。现代集成的概念是由软件主导的。企业越来越多地致力于将他们已有的软件与新软件进行集成来实现新的功能。互联网络的出现使我们可以通过网络在不同的硬件平台上使用这些软件,从而使集成工作比以往更加复杂。EAI代表了系统设计方法的技术的变革,其目的是减少现今系统集成工作的复杂程度。
随着集成特性的改变,集成方案选项的复杂度和广泛度都有了一定的提高。包括在应用程序间共享数据并保证其正确性和一致性,提供应用程序的集成前端访问,通过工作流程来联系各个应用程序,并以革新的方式从现有应用程序中提取信息来创建新的应用程序。
EAI的最终目标是使一个企业可以快速、方便地将不同应用程序集成到一起。
说明:EAI(Enterprise Application Integration),是企业应用集成。 EAI是将基于各种不同平台、用不同方案建立的异构应用集成的一种方法和技术。EAI通过建立底层结构,来联系横贯整个企业的异构系统、应用、数据源等,完成在企业内部的 ERP、CRM、SCM、数据库、数据仓库,以及其他重要的内部系统之间无缝地共享和交换数据的需要。有了 EAI,企业就可以将企业核心应用和新的Internet解决方案结合在一起。