Beruflich Dokumente
Kultur Dokumente
Architecture
Jochen Boeder
SAT Knowledge Transfer
ESA Service Composition & Orchestration
PEOPLE PRODUCTIVITY
ANALYTICS/REPORTING
SERVICE COMPOSITION
& ORCHESTRATION
SAP NetWeaver
Enterprise
SERVICE Services
ENABLEMENT Repository
Bus.
Legacy
Partner
LIFE-CYCLE MGMT
Design principles
Loosely coupled B2B and A2A processes
Message-based and
Event-driven process integration
Model driven
Separation of business logic from process logic
Error forward recovery
Key Goals
Transparency of the main process building blocks and their
interactions – incl. Processes and Services
Model driven development process
Models linked with software implementation
Model based scoping and implementation process
Define a unified methodology used in all SAP Solutions from
business level modeling to service modeling
Meta Model
Business-level
Models
Process Configuration
Models
Business Objects
Static, 1:1 A2A & B2B Services ESA Object & Object-Oriented
representation of Process Agents
repository content
Messages Services Catalog View
Enterprise
Services
Repository
Sales Order
Production Procurement Sales Delivery
Purchase Contract
Delivery Schedule Schedule
Sales Contract Service Contract Quotation
Processing Processing Processing
Management Management Processing
Delivery from
Production Sales Order Sales Order
RFQ Processing Service Request
Quotation RFQ Processing Quotation
Supply Planning at at Customer Processing
Processing ... Processing Purchase Order
Supplier Sales Order
A Supply Planning Processing at
A Processing
Customer
Sales Scheduling Procurement
Internal Requirement Sales Scheduling
Release Processing Scheduling Release Supply Planning
Processing Release Processing
at Supplier Processing A
Purchase
Project
Processing
Requirement Procurement Inbound Delivery
Processing Scheduling Release Outbound Delivery
at Customer Processing at
Processing
Customer
Personnel Times
Sales Order Purchase Order
Processing at
Purchase Order Sales Order
Processing at
Service Order Management A
Processing Processing Processing
Supplier Customer
A
A A
Supplier Invoice
Customer Invoice
Service Confirmation Goods and Service
Outbound Delivery
Inbound Delivery Outbound Delivery
Inbound Delivery
Service Confirmation
Goods and Service Processing at
Processing at Processing at Confirmation at Processing
at Supplier Confirmation
Supplier
Processing Processing
Customer
Processing
Customer Customer
A
A A A
A
Accounting
Payment processing Bank statement
A Document
A Payment Processing
Payment Processing at house bank creation at bank
at Business Partner Processing
Accounting
A Document
Processing
Payment processing Bank statement
at house bank creation at bank
Process
Supply Planning Interaction (drill
down in Accounting
detailed model) A Document
Processing
ESA Process
(drill down in Purchase
Requirement
detailed model) Processing
Sales Order
Purchase Order
A Processing at
Processing
Supplier
ESA Process
Outbound Delivery at B2B Partner
Inbound Delivery
Processing at
Processing
Supplier
Customer Invoice
Supplier Invoice
A Processing at
Processing
Supplier
BO centric view: Business Object, it’s A2A & B2B Services, Process Agents
as a single modeling entity (represents a reuse block for building business scenarios)
Process Process
Outbound Inbound
Interface Interface
* * Service
1..*
0..1 * *
0..1
ESA Process 0..1 Business Object
1
*
2 Root 1
Service Interface
Node 1 1..*
* 1..*
*
* 0..1 2 1
Process Interaction Business Object Node
Source 2 1..*
* * *
& Target
Node Operation
*
Some detail omitted Input
(Mapping of Operations Output
between two Processes) Fault
1..*
Key 1
Data 1 Data Type
*
Definition: XML Schema
Association (binary)
*
Sales Order *
Processing Inclusion
Composition
Outb. Delivery
Processing
Process Process
Outbound Inbound
Interface Interface
Business Outbound Inbound Business
Object Process Agent Operation XI message Operation Process Agent Object
Workflow
Event Event
Start Manager Process Agent
Exception WF
Manager
Business
Event Business
async Outbound Event
Proxy
Process Agent
async Process A
Process Agent Proxy
Process C
Exception
Outbound async async
Proxy Proxy Inbound
Process Agent
Process Agent
Process B
End
Process Integration Process Integration
Persistence Persistence
Sending Receiving
SAP XI Business Business
SAP XI
Document Document
Process Process
Outbound Inbound
Interface Interface
Business Outbound Inbound Business
Object Process Agent Operation XI message Operation Process Agent Object
Workflow
Event Event
Start Manager Process Agent
Exception WF
Manager
Business
Event Business
async Outbound Event
Proxy
Process Agent
async Process A
Process Agent Proxy
Process C
Exception
Outbound async async
Proxy Proxy Inbound
Process Agent
Process Agent
Process B
End
Process Agent for Process Integration Process Integration
Outbound Processing Persistence Persistence
Sending Receiving
SAP XI Business Business
SAP XI
Document Document
Outbound
User Interaction or Automatic Execution Framework Process Agent
LUW
raise business
events „saved“
loop at business
events „saved“
Outbound async
Process Agent B PROXY
Business
Event Outbound async
Process Agent C PROXY
Business
Object Task:
Identify registered process agents
Call registered process agents at transactional point
“after_save”
Input:
Business Object type; Business Event type “saved”
Uses:
Registration information (configurable)
Output:
Activated process agents
Responsibili
Process Process
Condition ty Message Proxy Call
Persistence
Relevance Evaluation Determinatio Assembly and Logging
Evaluation
n
Business
Event
Business
Object Process model /
MOM
configuration
Process Process
Outbound Inbound
Interface Interface
Business Outbound Inbound Business
Object Process Agent Operation XI message Operation Process Agent Object
Workflow
Event Event
Start Manager Process Agent
Exception WF
Manager
Business
Event Business
async Outbound Event
Proxy
Process Agent
async Process A
Process Agent Proxy
Process C
Exception
Outbound async async
Proxy Proxy Inbound
Process Agent
Process Agent
Process B
End
Process Integration Process Integration
Persistence Persistence Process Agent for
Sending Receiving
Inbound Processing
SAP XI Business Business
SAP XI
Document Document
Outbound
XI Proxy Inbound Process Agent Framework
Process Agent
start modify 1 modify 2 trigger save before save after commit after
button save save work commitend
LUW
raise business
events „saved“
loop at business
events saved
process logic of
check objects update
business logic outbound process
& services objects
agents
Exception
event
Exception handling
Process model /
configuration Business
Object(s)
Process Integration Persistence
Motivation
Mainly asynchronous, loosely coupled programming model
No (or only few) cross component early validation
No common database transaction
No technical error resolution possible e.g. no rollback
Risk of problems during inbound processing increases
Business Business
Application Application
Business Business
Process Process
A B
Process Agent
async
Proxy
Process A
Message
Process C
Exception
choreography
Outbound async async
Process Agent Proxy Proxy Inbound
Process Agent
Sequencing
Process B
End
Consistency tools
Process Integration Process Integration
Persistence Persistence
Sending Receiving
SAP XI Business Business
SAP XI
Document Document
Central SAP XI
Routing, Mapping, …
Business Business
Process Process
Workflow Workflow
Process Agents for
Workflow integrating
Event
Manager Process Agent Process Agent
Event
Manager
Business Objects with
Workflow
for Workflow for Workflow
Business
Event Business
Process Agent async async Process Agent Event
Proxy Proxy
for Outbound for Outbound
Integration Integration
Central SAP XI
Routing, Mapping, …
Workflow
Event Event
Start Manager Process Agent
Exception WF
Manager
Business
Event Business
Event
async Inbound
async Proxy
Process Agent Process Agent
Proxy
Process C Process B
Exception
Outbound async async
Proxy Proxy Inbound
Process Agent
Process Agent
Process B
End
Process Integration Process Integration
History History
Receiving
SAP XI Business
Document
LUW 1 LUW 2
One system solution
Application architecture follows distributed solution
‘Short cut’ purely handled by infrastructure
2 Registry
2. 4. 4. 2.
4 Relevance
Event 5 Conditions
Start Manager 3 Process Variant
Business
Event 6 Responsibility 4 Error Handling
End
Process Process
Integration Integration
Persistence Persistence
3. SAP XI
Integration Scenario Connection Data Types
Outbound Mapping Inbound
Interface Interface …
Content Object
SAP AG 2004, Kick-off Bangalore, Business Process Architecture, Jochen Böder / 32
What can development do now?
Process
Design
Process Contact: Günter Pecht-Seibert
Modeling
Contact: Stefan Kaetker Interface
Modeling/PIC
Contact: Michael Seubert