SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
SOA Experience Workshop - SAP
Transcript of SOA Experience Workshop - SAP
SOA Experience Workshop
Process Innovation
Process
Innovation
Process
Analytics
Business Rules
Management
Service
Simplification
Process
Modularity
Service
Composition
Process Innovation
© SAP 2010 / Page 2
1. Fundamentals: Process Modeling and Composite Applications
2. Business Process Modeling Notation (BPMN) – Enabling Collaborative
Process Design
3. Key Capabilities of SAP NetWeaver Composition Environment
4. Business Process Modeling Notation (BPMN) – From Model to Code
5. Summary
Agenda
Composite Applications
Characteristics
Composite Processes and Applications
Composite Applications are:
User centric applications
Supporting highly dynamic
and collaborative processes
Automate business scenarios
and user specific processes
Span beyond functional systems
and organizational boundaries
Composed / assembled
by reusable services
Loosely coupled to platform
applications
Have an own lifecycle
Application Core Processes
SRM SCM ERPPLMCRM Non-SAP
© SAP 2010 / Page 5
Anatomy of Composite ApplicationsC
om
po
sit
e A
pp
lic
ati
on
Systems
BA
CK
EN
D
Workcenter
Composite Processes
Service Enablement
Service Contract
Implementation
Layer
Business Object
& Service Layer
User Interfaces
Role 1
Bu
sin
es
s
Pa
rtn
er
UI UI
App. Service
SC
IL
Step 1 Step 2 Step 3 Step 4
UI
App. Service
ApplicationsLegacy
Services
App. Service
UI
ServicesServices
SAP 3rd Party
Step 4 Step 5 Step 6 Step 7 Step 8
Role 2 Role 3 Role 4
© SAP 2010 / Page 6
Service Contract ImplementationSCISCI
Service Contract
SAP NetWeaver
Composition Environment
SAP NetWeaver Composition Environment
Increase Development Productivity Through an Integrated Experience
SAP NetWeaver CE provides an eclipse-based application composition
environment, including all layers to build and run composite applications
Process orchestration (with SAP NetWeaver BPM)
User interface composition
Service and data composition
© SAP 2010 / Page 7
SAP NetWeaver Business Process Management
(BPM)
Embedded in SAP NetWeaver Composition Environment
Comprehensive process management
■ Unifying human and system automation processing steps
■ Business Process is more than just service orchestration
Composition of event-driven processes
■ Seamless combination of service, event and human task
■ Enterprise services consumption
■ Tightly integrated with native Business Rules Management
Benefits of an integrated composition environment
■ Model-driven development
■ Integrated toolset
■ Out-of-the-box ESR integration
■ Lifecycle management
Process Server
Process
ComposerProcess
Desk
Process
Desk
SAP NetWeaver
Business Process Management
© SAP 2010 / Page 8
1. Fundamentals: Process Modeling and Composite Applications
2. Business Process Modeling Notation (BPMN) – Enabling
Collaborative Process Design
3. Key Capabilities of SAP NetWeaver CE
4. Business Process Modeling Notation (BPMN) – From Model to Code
5. Summary
Agenda
Introduction to BPMN
“The primary goal of BPMN is to provide a notation that is readily
understandable by all business users, from the business analysts that
create the initial drafts of the processes, to the technical developers
responsible for implementing the technology that will perform those
processes, and finally, to the business people who will manage and
monitor those processes. Thus, BPMN creates a standardized bridge for
the gap between the business process design and process
implementation.”OMG, BPMN 1.2 Specification
!
First published in 2002
Official standard of the Object Management Group (OMG) since 2006
Current Version: BPMN 1.2
© SAP 2010 / Page 10
Business Process Modeling Notation –
Sequence Flow Overview
Activity
Gateway
Event
Activity:
A step in the process
Represents work or action performed
Gateway:
Controlles flow branching, merging and parallel actions
Pure logic – does not do the decision itself
Event:
A signal that „something has happened“
Can start, pause and resume or interrupt and redirect
a process or activity
© SAP 2010 / Page 11
Business Process Modeling Notation –
Orchestration and Choreography
Pool:
A Pool contains a single „BPMN- Process“
A sequence flow is constrained in exactly one pool
A Process diagramm may contain several pools
Differentiation between „active“ and „inactive“ (descriptive) pools
Only one active pool per model
A pool generally represents a logical collection of roles,
organizational units and systems
Lane:
A pool may be divided into lanes
A lane generally represents a role or an organizational unit
Orchestration:
Modeling a process flow of control in a single
internal (active) pool
Representation as sequence flow
Choreography:
Modeling interaction between pools (not flow of
control!)
Representation as message flow
© SAP 2010 / Page 12
Enhanced Purchase Order Approval
Process - Description
© SAP 2010 / Page 13
Investment Approval Process in BPMN:
One Pool:
one internal (active) pool (own
company)
Two Lanes within internal pool:
one Lane for Purchase Requester Role
one Lane for Purchase Approver Role
Two Human Activities:
Purchase Request Approval (Approver)
Rework Request Data (Requester)
Confirm PO Creation (Requester)
One data inductive (automated) Activities
Create Purchase Order
One Gateway
Exclusive choice (approval yes/no)
Two Events
Start Event
End Event
Modeling the process in
SAP NetWeaver BPM
Graphical modeler based on BPMN
Eclipse-based
Support key process concepts (workflow,
event, task, context, roles, UI) throughout
their lifecycle
Combine human interaction and system
integration in one model
Embedded in SAP NetWeaver CE
Integrated composition experience
Common UI technology
Service-based connectivity
Process
Composer
Process
Desk
Process Server
© SAP 2010 / Page 14
- Modeling the Process -
DEMO
Process Composer (NWDS)
1. Fundamentals: Process Modeling and Composite Applications
2. Business Process Modeling Notation (BPMN) – Enabling Collaborative
Process Design
3. Key Capabilities of SAP NetWeaver CE
4. Business Process Modeling Notation (BPMN) – From Model to Code
5. Summary
Agenda
Highlights of SAP NetWeaver CE
Leading edge process and rules mgmt capabilities
SAP NetWeaver CE Highlights
Composite Designer Central entry point for modeling and
assembling composite applications
SAP NetWeaver BPM Business-friendly user perspective
UI generation technology
Process reporting capabilities
Support for intermediate message events
Model-based service composition &
simplification
SAP NetWeaver BRM Embedded rules in process to drive process
agility
© SAP 2010 / Page 17
Central composite application perspective
Improving the developer productivity
Composite Designer: The central entry point for modeling and
assembling composite applications
Import and editing of existing
composite applications
Create new components
such as processes, UIs, rules,
simplified services, composed
services, business objects and
navigate to specialized
perspectives to edit them
View, edit, and create
relations between
components
Framework to check
consistency of relations
© SAP 2010 / Page 18
Business
Business-friendly process modeling perspective
A first step towards collaborative process design
IT
Business-friendly
process modeling perspective(in SAP NetWeaver BPM)
From modeling (no coding!) … to execution (no translation!)
Developer-friendly
implementation perspective(in SAP NetWeaver BPM)
© SAP 2010 / Page 19
Auto-generation of user interfaces
Making it much easier and faster to generate new UIs
Auto-generation of user interfaces (UI) out of the
process context (data objects) …
…for Visual Composer and
Web Dynpro Java
© SAP 2010 / Page 20
SAP NetWeaver CE and BI from SAP
Gain Insight Within and About Processes
Provide relevant analysis within
a process instance to support decision making
Provide relevant reports about the process in
general to optimize its performance
Process
participants
Process
owner
* Note: Out-of-the box extractors available for SAP NetWeaver Business Warehouse (BW)
© SAP 2010 / Page 21
Intermediate message event in an asynchronous scenario
Intermediate message
events support correlation of
corresponding event
messages to running
process instances
Connectivity to SAP’s local
event infrastructure for
asynchronous
communication in a
business process context
Correlation condition based
on defined process context
(data objects), business
rules and functions
Support of intermediate message events
Allowing process execution in asynchronous scenarios
© SAP 2010 / Page 22
Service Composition & Simplification
Service Composition -
provide a single service
based on multiple backend
services
Service Simplification -
provide simplified service
based on existing backend
service
Fully integrated with other
tools of SAP NetWeaver CE
(e.g. Visual Composer, BPM)
Capability to change
service interfaces after the
service is used in modeling
with service re-import
Service Composer
Allowing service composition & simplification
© SAP 2010 / Page 23
Integrating Rules into BPM
Enable simplified, dynamic and consistent decision making
Calculating rules as part of the process Calculating rules with BRM
Performance Bonus
Good 20
Average 15
* 10
Good 15
Average 10
* 5
Good 10
Average 5
* 0
Manager
Architect
Programmer
Designation
© SAP 2010 / Page 24
1. Fundamentals: Process Modeling and Composite Applications
2. Business Process Modeling Notation (BPMN) – Enabling Collaborative
Process Design
3. Key Capabilities of SAP NetWeaver CE
4. Business Process Modeling Notation (BPMN) – From Model to Code
5. Summary
Agenda
Assigning Services and User Interfaces
to Activities and Events
Assigning Services to Automated Activities:
Import Service Interface (WSDL) to
Project from ESR, Services Registry,
Remote Location or File System
Assign Operation to process model via
Drag and Drop or in options of
automated activity
Assigning User Interfaces to Human Activities:
Generate Tasks with additional Information
about roles and behavior
Generate and Assign User Interface to
Task
Assign Task to process model via Drag
and drop or in Options of human activity
Assigning Service Operations to Events:
Assign interface and operation to message
relevant Events (e.g. start / end)
© SAP 2010 / Page 26
Business Process Modeling Notation
(BPMN) - Artifacts
Annotation
Data Object:
An artifact that stores process context
Accssesible during whole process
Annotation:
Possibility to give comments within Process Model
Pure description
Data Object
Artifacts:
Besides the modeling of the process flow BPMN allows to model artifacts that hold
additional information such as data templates that are processed within an instance of the
process or Annotations to comment and explain the process.
© SAP 2010 / Page 27
Modeling the Data Flow
Hold process relevant information in data objects:
Generate artifacts that hold business process
relevant information and data (Process Context)
given by services or human interaction
Access process context from every point of the
process
Model data flow and mappings:
Model data flows to store or read information
from data objects
Map data interfaces of activities to process
context to model data flow between activities
© SAP 2010 / Page 28
Composite Application Development
Guidelines
Use Composite Designer to guide you through the overall development process
Model process skeleton (Process Composer)
Make use of context buttons
Be guided by error markers in the diagram
Assign roles/groups to lanes
Use the assignment of roles/groups on task level in exceptional cases only!
X Don‘t assign concrete users to lanes/tasks. This is like hard coding constants in a
program.
Assign an administrator to the pool
Composite Application Development
Guidelines
Model the process context as XSD file and import it to the Process Composer
Ideally names, data types, and nesting level are identical
Generate UIs (Web Dynpro or Visual Composer) based on data of process context
Ensures smooth integration between your process and the UIs
Composite Application Development
Guidelines
Automated activities: make use of the Composite Designer to create relations between
your process and other composite artifacts (e.g. CAF, Service Composer…)
Map data of each automated/human activity to the process context and vice versa
Define the conditions for every gate of a gateway
One gate needs to be the Default Gate
NOT recommended: Adding a ruleset to a gateway
X Reason: hides important information to the reader
of the process diagram!
Solution: model automated activity calling the ruleset
followed by a gateway evaluating the return value of
the automated activity!
A gateway represents logic, no activity!
- Build & Execute the Composite Application-
DEMO
SAP NetWeaver CE
1. Fundamentals: Process Modeling and Composite Applications
2. Business Process Modeling Notation (BPMN) – Enabling Collaborative
Process Design
3. Key Capabilities of SAP NetWeaver CE
4. Business Process Modeling Notation (BPMN) – From Model to Code
5. Summary
Agenda
Summary
The Process Composer of SAP NetWeaver BPM offers
a very fast and easy possibility to create detailed
process models
Business Process Modeling Notation is an easy way of
modeling Business Processes from different
perspectives (Business/IT)
SAP NetWeaver BPM offers the possibility to deploy
and run modeled composite applications based on open
standards directly.
© SAP 2010 / Page 34
Thank you!
Appendix
Java Application
Server
Robust, enterprise-
class Java EE 5
application server
Eclipse Development
Environment
SAP NetWeaver
Developer Studio: Eclipse
based development and
modeling environment
Model-Driven Development and Deployment With
SAP NetWeaver Composition Environment 7.2
Pro
cesses
Event Flow / RulesRole
SAP NetWeaver
BPM for process
composition
SAP NetWeaver
BRM for rules
composition
Vie
ws
Portal and Web FormsMobile and VoiceAnalytics
SAP NetWeaver Visual
Composer for model-
driven UI development
(incl. analytics and voice)
Web Dynpro Java
SAP Interactive Forms
by Adobe
Federated Portal
Network
Enterprise Services
Repository and Registry
(ESR)
Software lifecycle
management and
logistics (NWDI)
Bu
s
Data or File
Web Services / Enterprise
Services Connectivity
Serv
ices
Service façade
New service
Data service
Enterprise service
Basicservice
SAP Composite
Application
Framework (CAF)
business object
modeling
Service Composer
service simplification
service composition
Business Process Modeling Notation –
Activities
Human
Activity
Automated
Activity
Sub-Process
Human Activity:
Activity that has to be processed by a natural Person
Automated Activity:
Activity that is processed by a system
Sub-Process:
A compound (decomposable) Activity that holds a sub-
process modeled with BPMN – can be shown collapsed or
expanded
Business Process Modeling Notation –
Gateways
Exclusive Choice:
Only one path can be taken
Each Gate has a boolean data expression
Parallel Split (also AND gateway):
Splits sequence flow in parallel stream
Event based Choice:
Only one path can be taken
Decision is based on events, not data condition
Uncontrolled Merge:
Merge exclusive alternative incoming sequence flows
to one outgoing sequence flow
Parallel Join:
Merge parallel alternative incoming sequence flows to
one outgoing sequence flow
Business Process Modeling Notation –
Events
Start Event:
Creates new process instance or indicates start of a sub-process
Intermediate Timer Event:
pause the sequence flow of a process or a sub-process
for/until a specific time
Intermediate Message Event:
Wait for and receive a message
Intermediate Error:
Aborts activity on error
End Event:
Ends a sequence flow in a process or a sub-process
Termination:
Stop the process or sub-process immediately
Copyright
© Copyright 2011 SAP AG. All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information
contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation.
IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, System z9, z10, z9, iSeries, pSeries,
xSeries, zSeries, eServer, z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server, PowerVM, Power Architecture, POWER6+,
POWER6, POWER5+, POWER5, POWER, OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP, RETAIN, DB2 Connect,
RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registered trademarks
of IBM Corporation.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the United States
and/or other countries.
Oracle is a registered trademark of Oracle Corporation.
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc.
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology.
Java is a registered trademark of Sun Microsystems, Inc.
JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape.
SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services mentioned herein as well as their
respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries.
Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business
Objects products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects S.A. in the
United States and in other countries. Business Objects is an SAP company.
All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational
purposes only. National product specifications may vary.
These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational
purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only
warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if
any. Nothing herein should be construed as constituting an additional warranty.