【IT168 技术文档】不知不觉之中,又有一个新概念逐渐充斥在各个技术社区中。OBA,全称为 Office Business Applications,较早之前,Javed Sikander在MSDN中发表了一篇名为《Building Office Business Applications: A New Breed of Business Applications Built on the 2007 Microsoft Office System》的文章中定义它为“a new breed of easily customizable solutions that address real-world business problems through the 2007 Microsoft Office system”。但在我能看到的大多数介绍OBA文章中更接近Justin的定义——“Office Business Applications can be defined as a class of applications that connect Line of Business systems with the people who use them everyday”,简单理解就是,OBA 是用来连接用户生产力工具软件(比如MS Office)和 LOB 系统的一种应用类型。从定义看,就是业务用户从原来直接使用LOB转换到尽量通过用户日常使用的办公软件(可以是MS Office System,也可以是其它应用软件产品)来使用LOB。
对于OBA的桥梁作用有多少种实现模式呢?MS Office System的OBA应用给出了比较齐全的实现模式:

比如Direct integration Pattern,可以是Outlook直接调用远程LOB的WebService,也可以是MOSS Portal直接用HTML嵌入LOB System信息。

再比如,Embedded LOB Information Pattern,直接在Office文档中嵌入LOB数据元素,最终直接通过Office客户端与LOB System交互。

当然,也可以直接反过来从LOB System生成含LOB Data的Office文档,然后提交到MOSS文档库进行工作流流转等。这一系列模式之间的关键理念就是,把用户平常最常使用的MS Office客户端直接与公司中LOB System实现各种方式整合,并引入Office服务端(如MOSS)的各类应用和服务,为整个整合提供更全面的支持。
也许你会理解OBA为一个框架,但从我理解上,我更倾向理解OBA为一种桥梁性应用,通过OBA应用我们可以有相关解决方案框架。比如atanu的OBA Solution Framework系列是目前这方面比较全面的介绍说明了。
MS的OBA架构如下所示。
