SAP技術概述(三)

作者: 行云流水  發布時間: 2008-10-17 11:59  閱讀: 2834 次  推薦: 0   原文鏈接   [收藏]  
 
[1] ESA (Enterprise Service Architecture)
[2] ESI的組成

ESA (Enterprise Service Architecture)

簡單的說, ESA是SAP 基于SOA(Service Oriented Architecture)的概念。主要目的通過WebService, 進一步提高SAP各業務系統間的統一性, 可重用性, 建議更方便的業務流程開發模式。主要手段為:

建立以Service為中心的開發模式。 因為service相對于組建或者其他軟件封裝技術來說, 有耦合度低, 跨Internet, 范圍更廣, 跨平臺, 粒度更自由等優點。

在web service的基礎上, 建立統一的service infrastructure(就是后面說到的ESI)。

建立所謂“模式-驅動”的開發模式。 其實, 我的理解是, 在強大的Service Infrastructure基礎上, 有統一的數據類型來描述數據, 有Business Object來封裝邏輯, 有UI pattern來封裝UI, 有了這些, 就可以用一個簡單的設計工具, 就可以快速的描述數據, 拼裝業務邏輯, 建立UI, 這就是使所謂的“模式-驅動”的開發模式, 成為現實。這里指的開發, 不是簡單應用的開發, 而是業務流程的開發。這各設計工具, 就是Visual Composure。

先介紹幾個概念:

Service:

Service就是SOA中的service概念. 它提供了企業的某個業務功能。

ESA中有三種Service:

Core Service: 提供對Business Object的直接訪問, 如retrieve, access, action…

Compound Service: 由對多個core service的call組成。

Enterprise Service: 也是一種compound service, 但是它是組成Business Process的直接service. 它提供企業的關鍵業務功能。

Business Object:

BO可以看作是Service的實現. Service的定義和其實現無關. SAP在ESA中主要用BO實現 Service的功能。

BO是結構化的. 每個BO之間由Association連接.但是只有一個root node。

一個BO可以有多個service interface, 一個service interface由多個operation組成

BO定義了一組Attribute和Operation. 每個BO都由一個Business Object provider class 實現, 它實現了一組Generic Interface。

BO的attirbute的type必須是Global Data Types(GDT)

Global Data Type

要統一service interface的定義, 就必須統一數據類型。

Business Process:

LDU(Logical Deployment Unit)

一個LDU由一組語義相關的componenet組成, 為了可以簡單的activate/deactive一個業務功能。

Process Agent:

提供Message-Based的LDU之間的通信。

下圖是ESA實現:

ESI(Enterprise Service Infrastructure) 為ESA的實現提供了基于Web Service的統一的Service定義。使“模式驅動”的開發成為可能。這種設計由需求開始, 定義服務, 服務驅動實現.

下圖顯示了ESA的開發模式:

 

[第1頁][第2頁]
0
0
 
標簽:SAP 技術
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()