Professional Documents
Culture Documents
How To Redesign CCBPM Process
How To Redesign CCBPM Process
Disclaimer
This presentation outlines our general product direction and should not be relied on in making a
purchase decision. This presentation is not subject to your license agreement or any other agreement
with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or to
develop or release any functionality mentioned in this presentation. This presentation and SAP's
strategy and possible future developments are subject to change and may be changed by SAP at any
time for any reason without notice. This document is provided without a warranty of any kind, either
express or implied, including but not limited to, the implied warranties of merchantability, fitness for a
particular purpose, or non-infringement. SAP assumes no responsibility for errors or omissions in this
document, except if such damages were caused by SAP intentionally or grossly negligent.
Agenda
Redesigning ccBPM processes: challenge and chance
Introducing BPMN
Model comparison: BPEL vs. BPMN
Receiver determination
Providing synchronous interfaces via ccBPM
Message header access
Attachment handling
Alerting
System error handling
Outbound Exactly Once In Order handling
Redesigning ccBPM
processes:
challenge and chance
Introducing BPMN
Gateway
Event
Gateway:
Controls flow branching, merging and parallel actions
Pure logic does not do the decision itself
Control flow
Event:
A signal that something has happened
Can start, pause and resume or interrupt and redirect a process or activity
Throw/catch
User Task:
Activity that has to be processed by a natural person
Typically associated with a user interface (JSF, JSP, servlet,)
Service Task:
Activity that is processed by a system
Defined via an interface description (e.g. WSDL)
Typically calling a web service or an EJB
Sub-Process:
A compound (decomposable) activity that holds a BPMN modeled sub-process
Can be shown collapsed or expanded
Can be embedded (local) or referenced (global)
Used for structuring processes
Subroutine
Call Activity:
Used to call a global sub-process or a global single task
Subroutine call
2013 SAP AG or an SAP affiliate company. All rights reserved.
10
Parallel Join:
Merge parallel alternative incoming sequence flows to one outgoing
sequence flow
Waiting for all threads to finish
Event-based Exclusive Choice:
Only one path can be taken
Decision is based on events, not data condition
2013 SAP AG or an SAP affiliate company. All rights reserved.
11
12
13
Data Object:
An artifact that stores data in the process context
Can be a single object or a list of objects ( )
XML Schema Definition used to define data objects
Comparable to Variables in programming languages
Data Object
14
15
16
Model comparison:
BPEL vs. BPMN
Switch
Control
Block
Loop
Transformations and
Container Operations
Covered by Mappings
Superfluous in BPMN
2013 SAP AG or an SAP affiliate company. All rights reserved.
Fork
Wait
18
19
20
Multiple
Bookings
Confirmation
Booking
Booking
Confirmation
Failure
Cancel
Booking
21
22
23
24
26
27
Content Enricher & Filter Pattern involving RFC, EJB, Enterprise Services
Check out the Service Composer Perspective in SAP NetWeaver Developer Studio
Supports Projection, Simplification and Sequential Execution of Services
28
?
Typical use cases when accessing the message header in ccBPM
MessageId as unique identifier for correlation purposes
Adapter-specific header fields (e.g. filename for file adapter, JMS correlation id for JMS adapter, business
information for B2B adapter) for monitoring purposes and adapter-specific handling
How can you achieve the same in a cleaner way with SAP NetWeaver BPM?
Leave adapter-specifics to SAP NetWeaver PI components, e. g. Operation Mappings, Alert Engine
Hide adapter- and XI-protocol specifics from BPM, abstract it through the business payload
29
2. Use Mapping API to access header, e. g. encapsulated in a User Defined Function (UDF)
4. Configure Integration Flow using mapping of step 3 to provide enhanced business data
including the message header to BPM
5. In BPM, extract the data from the Message Event into the Process Context
2013 SAP AG or an SAP affiliate company. All rights reserved.
30
?
What you need to know
ccBPM can route attachments through a process and manipulate them using Operation Mappings
ccBPM attachment routing cannot be turned off (transparent feature)
BPM supports attachments at tasks which can be manipulated through UI
31
Enterprise
Content Mgmt.
Java
API
Attachment
Capable Adapter
(HTTP, email)
Integration Flow
Web service
enabled EJB
(local) Web service
call
JPR Server
Proxy ImplemenJava
tation (Java)
BPM
API
32
Redesigning alerting
Use Notification Activities for business-related errors that require business users for resolution
2013 SAP AG or an SAP affiliate company. All rights reserved.
33
?
What you need to know
ccBPM supports handling technical errors, but provides no access to further details, such as error message
BPM supports handling modeled Faults only, providing access to the fault message
How can you implement system error handling before 7.4 SP5 / 7.31 SP10?
Implement a Web service wrapping the original service and which maps system errors to a Fault
Refer to SCN document DOC-3081 (http://scn.sap.com/docs/DOC-3081)
2013 SAP AG or an SAP affiliate company. All rights reserved.
34
?
What you need to know
ccBPM supports specifying a Queue Name, so that messages are sent with Quality of Service EOIO
BPM supports no specification of Quality of Service
How can you achieve EOIO for common cases in a cleaner way?
1. Send one bulk message containing all messages with EOIO requirements
within one process instance in a single Automated Activity
2. In the associated Integration Flow use Interface Splits / Split Mappings with
Maintain Order at Runtime
35
36
Fork
38
39
40
41
42
43
44
45
46
47
48
49
Demo
Multiple interfaces for starting a process
Good to know
ccBPM
No acknowledgement support
51
52
53
Key Takeaways
Key Takeaways
Migrating to SAP NetWeaver Process Orchestration is
highly attractive for the following reasons:
Lower TCO of a Java-only solution
Lower TCD due to integrated toolset in SAP NetWeaver
Developer Studio
Benefit from advanced BPM/BRM feature set
An automated migration of existing BPEL based
processes to BPMN is not possible due to the
fundamental differences between the notations
SAP supports the migration by providing the content
migration tool, ready-to-use Enterprise Integration
Patterns, and many online articles/blogs
2013 SAP AG or an SAP affiliate company. All rights reserved.
55
Further Information
56
http://saptechedhandson.sap.com/
http://sapteched.com/online
57
Feedback
Please complete your session evaluation for POP300.
59