选择应用程序架构

发表于:2008-02-22来源:作者:点击数: 标签:架构
将软件应用集成到企业现有的IT环境的重要性和复杂性正逐步增长。企业的信息系统(IS)部门及向企业出售 解决方案 的应用程序供应商都面临着架构解决方案方面的艰巨任务,因为架构解决方案既要满足当前的 需求 ,还要满足将来的需求。 本文探究了用于将数据驱
将软件应用集成到企业现有的IT环境的重要性和复杂性正逐步增长。企业的信息系统(IS)部门及向企业出售解决方案的应用程序供应商都面临着架构解决方案方面的艰巨任务,因为架构解决方案既要满足当前的需求,还要满足将来的需求。

  本文探究了用于将数据驱动的应用程序与企业集成的常见数据交换模型,并讨论了所选的数据管理解决方案将如何影响集成的难易程度。您还将了解数据库同步、企业消息传递、Web services,以及作为应用程序集成的一般模型的XML。

  没有别的办法。大型企业的IS部门和应用程序供应商面对的的IT环境非常复杂。他们通常必须处理企业内的各种架构模型,以及实现每种模型的多种技术。例如,对于大型企业来说,部署来自多个供应商的数据库并不罕见,同样,使用企业消息传递来集成Web应用程序与ERP系统也是常见的。

  架构师面临的两难问题是,设计的解决方案要与当前的某个系统集成,但是以后可能还要与其他的架构或系统集成。由于IT产业有许多不同的发展趋势,因此这是显然会发生的——客户/服务器应用程序以前是合并到带有基于Web的应用程序的数据中心的,而现在移动解决方案则促使智能客户应用程序被部署到最终用户,而其数据则同步到数据中心。

  这种形势对面临如下情况的应用程序供应商将更具挑战性:不仅仅是同一个客户的架构不断发展,不同客户的IT配置也往往不同,或者他们用不同的技术来实现该配置。

    进一步的要求

  应用程序架构师总是必须设计与当前的IT系统集成的解决方案,而且还要将成本降到最低。然而,IT环境固有的易变性意味着架构师必须设计足够灵活的系统,以便与其他IT架构集成。

由于企业使用了许多不同的系统,并且从方案评审到方案的全面部署之间的时间跨度也在不断延长,这就意味着,在能够与之集成的系统方面,应用程序要更加灵活。新的应用程序不仅必须与当前的IT环境集成,也必须能够与将来的IT环境集成。

  考虑到人们要求IT部门使用更少的成本来完成更多的任务,尽量提高集成的灵活性这个需求将变得更加强烈。据估计,集成几乎占用了新应用程序总成本的三分之一。选择一个能够广范地进行企业集成的应用程序架构是一个行之有效的方法,它有助于将集成工作当前和以后所面临的挑战降到最低。

    数据管理如何影响集成

  数据管理与应用程序集成密切相关。应用程序中数据的管理方式会影响与各种系统集成的难易程度。怎么强调这个观点都不为过:您所选择用来管理应用程序数据的模型决定了企业集成的难易程度、灵活性和成本。

  不同的数据管理格式具有不同的数据存储和通信的结构层次。从某个角度讲,存储在数据库中的数据位于表、行和列中。每段数据都有特定的类型,而且所取的值也可能有一定的限制。与之相反的是平面文件(flat file),文件中的数据所代表的内容没有任何规则。尽管存在大家都认可的指导原则,即基于文件的扩展名判断文件中包含的内容,但是开发人员必须给文件中的数据加上结构。在各种数据管理和集成方法中,都有相对的结构层次(参见图1)。  


图1.各种数据管理和交换模型的结构层次

  XML提供了一种高度结构化的方法来将数据编码,但是现在还没有控制XML内容如何管理和存储的标准。此外,XML没有预定义的数据模式;它仅仅指定如何定义数据模式。创建XML模式以将应用程序数据编码是开发人员的责任。这就是说,任何两个给定的系统使用的XML模式都可能不同,这往往导致不同的系统之间难以通信。结果是,XML数据的编码是高度结构化的,然而XML数据的总体管理却不是高度结构化的。

  通常,新部署到企业的的应用程序需要与已经处于生产中的现有系统集成。因为修改生产中的系统的配置不是明智的办法,所以我们通常选择更容易的方法来实现集成,即修改应用程序的配置。

  因此,从结构层次较高的应用程序中获取数据,并与使用较低的数据结构层次的企业系统交换,这是很容易的。而从应用程序的数据上去移除不必要的结构要比在它上面另外加上结构容易得多。考虑如下两种场景:

原文转自:http://www.ltesting.net