Developing Composite Applications
With SAP NetWeaver CE
© SAP 2008 / SAP TechEd 08 / COMP164 Page 2
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.
"Napkin Sketch" of an SOA Implementation
© SAP 2008 / SAP TechEd 08 / <Session ID> Page 3
© SAP 2008 / SAP TechEd 08 / COMP164 Page 4 © SAP 2008, Key_4_Ammermann / 4
Enterprise SOA Technology with
the Business Process Platform
User
Interface
Forms
Portal Dashboards
Business
SAP GUI
Mobile
Client
Duet
Service Bus
SOA Management
SOA Middleware
Service & Event
Composition
Enterprise SOA
Consumption
UI Composition
Information
Composition
Business Process Composition &
Management (BPM)
Process Components
SAP Applications
Order Mgmt. ...Service-enabled
Applications
Customer & Partner
Applications
Non SAP &
Legacy
Platform Components
SAP NetWeaver
MDM
BI
…
Service & Event
Enablement
Enterprise SOA
Provisioning
Connectivity &
Integration
SOA Design
Governance
Enterprise
Services
Bus
iness
Partner
Composit
ion
Environm
ent
Process
Integra
tion
© SAP 2008 / SAP TechEd 08 / COMP164 Page 5
Anatomy of Composite Applications
Business Objects
Local RemoteC
O
MP
O
SIT
E AP
PL
IC
A
T
IO
N
CRM
BW
ERP
Systems
BA
CKEND
Workcenter
Composite Process
Role 1
Role 2
Step 1
Step 2
Step 3
Step 4
Service Enablement
Services
Services
Services
Enterprise Service Bus
(optional)
Remote
Services
Local
Services
Business Objects,
Services
UI
UI
UI
User Interfaces
© SAP 2008 / SAP TechEd 08 / COMP164 Page 6
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.1
Pr
ocesses
Event Flow / Rules
Role
SAP NetWeaver
BPM for process
composition
Views
Portal and Web
Forms
Mobile
and Voice
Analytics
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)
Bus
Data
or File
Web Services / Enterprise
Services Connectivity
Ser
v
ices
Service
façade
New
service
Data
service
Enterprise
service
Basic
service
SAP Composite
Application
Framework (CAF)
business object
modeling and service
composition
© SAP 2008 / SAP TechEd 08 / COMP164 Page 7
Java Application
Server
Robust,
enterprise-class Java EE 5
application server
Eclipse Development
Environment
SAP NetWeaver
Developer Studio: Eclipse
based development and
modeling environment
Selected Improvements With EHP 1 for
SAP NetWeaver Composition Environment 7.1
Pr
ocesses
Event Flow / Rules
Role
SAP NetWeaver
BPM for process
composition
Views
Portal and Web
Forms
Mobile
and Voice
Analytics
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)
Bus
Data
or File
Web Services / Enterprise
Services Connectivity
Ser
v
ices
Service
façade
New
service
Data
service
Enterprise
service
Basic
service
SAP Composite
Application
Framework (CAF)
business object
modeling and service
composition
New
Graphical, BPMN-based
process composition
Business rules
Improved
CAF performance (no
MMR)
Graphical designer and
developer productivity
New / improved
Full BI & ALV support in
Visual Composer
Web Dynpro components
in VC
VC grid layout
Flash islands in WD
New
Composite Designer
Eclipse 3.3.x
VC in Eclipse
New / improved
ESR in CE
NWDI in CE
New
WS-RM & idempotency
Mass configuration
Improved
Java supportability (MC,
deployment, logging,
memory analysis)
© SAP 2008 / SAP TechEd 08 / COMP164 Page 8
Process
Innovation
Process
Composition
Discovering
Services
enterprise SOA Operations
enterprise SOA Lifecycle Management
Service
Provisioning
Consuming
Service
sMediating
Services
SOA Experience Workshop:
© SAP 2008 / SAP TechEd 08 / COMP164 Page 9 © SAP 2007 / Page 9
Purchase
Requester
• Enter requirements
External IT
Provider
• Derive product from requirements,
create purchase request
Business
rule
• Derive necessity for approval based on
investment volume and country
• Ensure company policies
Purchase
Approver
• Review order, approve or reject and in
case of rejection add reason and
propose acceptable solution
Purchase
Requester
• Update purchase order or terminate
process
Corporate
Purchasing
• Create PO in ERP including supplier
integration
Track
Changes
• Fulfill compliance requirements
SOA Experience Workshop:
Investment Approval Process
© SAP 2008 / SAP TechEd 08 / COMP164 Page 10 Storage Local Persistency History Data Business Object History Data Material
Roles Purchase Requester Purchase Approver
Process
UI Interface
Enter Purchase
Request Approve PurchaseRequest Review ManagerDecision Order ConfirmationView Purchase
Service Read Material Details Approval Needed Service Save Change History Create Purchase Order Find Material System
SCM
ERP
Primary Secondary Corporate Purchaser Purchase Request Purchase Order Investment Approval ProcessSOA Experience Workshop:
© SAP 2008 / SAP TechEd 08 / COMP164 Page 11
Process Innovation
© SAP 2007 / Page 11Process
Innovation
Process
Composition
Provisioning
Service
Services
Discovery
enterprise SOA Operations
enterprise SOA Lifecycle Management
Service
Consumption
Mediating
© SAP 2008 / SAP TechEd 08 / COMP164 Page 12
Process Server
Process
Composer
Process
Desk
Process
Desk
Modeling the process in
SAP NetWeaver BPM
© SAP 2007 / Page 12
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
© SAP 2008 / SAP TechEd 08 / COMP164 Page 13
© SAP 2008 / SAP TechEd 08 / COMP164 Page 14
Business Rules Overview
© SAP 2007 / Page 14
What are business rules?
Business rules represent the policies, guidelines that drive operational business decisions
Business rules are owned by Business, not by IT
Common Kinds of Business Rules:
Validation Rules
Claim Validation, Loan Application Validation
Rate Calculation Rules
Computation of Taxes, Interest Rates, Sales Commissions, Premiums, Bonuses,
Duties
Decision Rules
Is Applicant Eligible for a Loan Product
Can this good be cleared by Customs?
Recommendation Rules
Marketing Promotions, Medical Recommendations, Online Product Chooser
Personalization Rules
Website Personalization, Product Personalization , Relationship Personalization
Internationalization and
Localization Rules
International Products e.g. Maintaining similar Insurance products across
countries
Cross border Custom Duties
Exceptions and Special Rules
Exceptions, Special Accounts , Special Arrangements, etc.
Optimization and Configuration
Rules
© SAP 2008 / SAP TechEd 08 / COMP164 Page 15
SAP NetWeaver
Business Rules Management (BRM)
© SAP 2007 / Page 15
Why Business Rules Management?
Externalize business rules from application code
Encapsulate rules as re-usable services
Increases flexibility, efficiency and control
Management and monitoring of rules is a critical
component of BPM
Serving business and IT
Why NetWeaver BRM?
Robust tool for central business rules management
Integrated path from process to rule
Perfect fit into SAP NetWeaver
Composition Environment
Eclipse based rule composition
Many Ways to Model Rules
Model Rules in the Context of a Business
Process using the Process Composer
Model rules as an independent rules project
using the Rules Composer
Many Ways to Integrate
Use Rules through an Automated Activity
Model Functions driven by Business Rules
Use rules based mapping transformations in
a process
Use rules based functions for Gateway
decisions
Rules Engine
Rules
Composer
Process
Desk
Rules
Management
© SAP 2008 / SAP TechEd 08 / COMP164 Page 16
© SAP 2008 / SAP TechEd 08 / COMP164 Page 17 © SAP 2007 / Page 17
Services
Discovery
Process
Innovation
Process
Composition
Provisioning
Service
enterprise SOA Operations
enterprise SOA Lifecycle Management
Service
Consumption
Services Discovery
Mediating
Services
© SAP 2008 / SAP TechEd 08 / COMP164 Page 18
Enterprise SOA documentation
© SAP 2007 / Page 18
ES Repository
Enterprise SOA
documentation
© SAP 2008 / SAP TechEd 08 / COMP164 Page 19 © SAP 2007 / Page 19
Services
Discovery
Process
Innovation
Process
Composition
Provisioning
Service
enterprise SOA Operations
enterprise SOA Lifecycle Management
Service
Consumption
Service Provisioning and Governance
Mediating
Services
© SAP 2008 / SAP TechEd 08 / COMP164 Page 20
Service Provisioning and Service
Consumption
tbd
SERVICE
ENDPOINT
CONSUMER
TOOLS
(SAP NetWeaver
Composition
Environment)
3.PUBLISH
4. DISCOVER
(Role: Composite Developer)
CONSUMER
APPLICATION
CONSUMER
SERVICE
IMPLEMENTATION
PROVIDER
SERVICES
REGISTRY
SERVICE MODEL
PUBLICATIONS
SERVICE ENDPOINT
PUBLICATIONS
Routing, Mapping,
Connectivity,
XML Validation
MEDIATED INVOCATION
Process integration
5. DIRECT CONNECTION
ES Repository: tools
1.
SPECIFY AND DEFINE
(Role: Enterprise SOA Architect)
2a. GENERATE & IMPLEMENT
(Role: Application Developer)
2b. CONFIGURE
© SAP 2008 / SAP TechEd 08 / COMP164 Page 21
Service Provisioning and Service Consumption –
Generate, Implement and Configure
tbd
SERVICE
ENDPOINT
CONSUMER
TOOLS
(SAP NetWeaver
Composition
Environment)
3.PUBLISH
4. DISCOVER
(Role: Composite Developer)
CONSUMER
APPLICATION
CONSUMER
SERVICE
IMPLEMENTATION
PROVIDER
SERVICES
REGISTRY
SERVICE MODEL
PUBLICATIONS
SERVICE ENDPOINT
PUBLICATIONS
Routing, Mapping,
Connectivity,
XML Validation
MEDIATED INVOCATION
Process integration
5. DIRECT CONNECTION
ES Repository: tools
2a. GENERATE & IMPLEMENT
(Role: Developer)
2b. CONFIGURE
(Role: Technical Admin)
Objects created:
1) Proxy definition
2) Proxy implementation
3) Configuration of service
PROVIDER
1.
SPECIFY AND DEFINE
(Role: Enterprise SOA Architect)
© SAP 2008 / SAP TechEd 08 / COMP164 Page 22
© SAP 2008 / SAP TechEd 08 / COMP164 Page 23
Typical Service Consumers
© SAP 2007 / Page 23
User Interfaces as Service Consumers:
Offering easy ways to call service functionalities
Creation of role, task, or process specific
user interfaces
Creation of reusable user interfaces for service calls
Services as Service Consumers:
Offering of web services that use other web services to provide functionality
Compound services combine functionalities of several services to one service
Tailor services to specific needs: Services offer tailored interfaces to provide
easier or special possibilities to call the original service functionality
Composite Applications as Service Consumers:
Using services within an application context
Calling services with process context specific information
Combining functionalities of different services to a complete application
Composites Applications
User Interfaces
Application Services
© SAP 2008 / SAP TechEd 08 / COMP164 Page 24
Tailored Webservice:
Tailor complex ES -Interface –
NWDS/CAF
SOA Experience Workshop
© SAP 2007 / Page 24
User Interface:
Consume self developed
Enterprise Service from
previous exercise
Consume Enterprise Service
“Create Purchase Order”
Create User interface –
Visual Composer, Web
Dynpro for Java
UI Designer
© SAP 2008 / SAP TechEd 08 / COMP164 Page 25
Service Provisioning and Service
Consumption – Discover
tbd
SERVICE
ENDPOINT
CONSUMER
TOOLS
(SAP NetWeaver
Composition
Environment)
3.PUBLISH
4. DISCOVER
(Role: Composite Developer)
CONSUMER
APPLICATION
CONSUMER
SERVICE
IMPLEMENTATION
PROVIDER
SERVICES
REGISTRY
SERVICE MODEL
PUBLICATIONS
SERVICE ENDPOINT
PUBLICATIONS
Routing, Mapping,
Connectivity,
XML Validation
MEDIATED INVOCATION
Process integration
5. DIRECT CONNECTION
ES Repository: tools
2a. GENERATE & IMPLEMENT
(Role: Developer)
2b. CONFIGURE
(Role: Technical Admin)
Objects created:
1) Import Service from SR
2) Create UI based on WebDynpro
PROVIDER
CONSUMER
TOOLS
(SAP NetWeaver
Composition
Environment)
1.
SPECIFY AND DEFINE
(Role: Enterprise SOA Architect)
© SAP 2008 / SAP TechEd 08 / COMP164 Page 26 © SAP 2007 / Page 26
Services
Discovery
Process
Innovation
Process
Composition
Provisioning
Service
enterprise SOA Operations
enterprise SOA Lifecycle Management
Service
Consumption
Process Composition and Execution
Mediating
Services
© SAP 2008 / SAP TechEd 08 / COMP164 Page 27
SAP NetWeaver BPM –
From model to executable Application
© SAP 2007 / Page 27
Characteristics
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
Direct path from business view to process
execution
Nothing ‘lost in translation’
Dynamic role-based views
Single active model
Flexible execution
Embedded in SAP NetWeaver CE
Integrated composition experience
Common UI technology
Service-based connectivity
Process Server
Process
Composer
Process
Desk
Process
© SAP 2008 / SAP TechEd 08 / COMP164 Page 28
Process Server
Process
Composer
Process
Desk
Process
Desk
SAP NetWeaver BPM Runtime
© SAP 2007 / Page 28
Direct path from business view to
process execution
Nothing ‘lost in translation’
Dynamic role-based views
Single active model
Flexible execution
Embedded in SAP NetWeaver CE
Integrated composition experience
Common UI technology
Service-based connectivity
Usage of the Universal Worklist
Human Activities are called via
Tasks within the universal worklist
© SAP 2008 / SAP TechEd 08 / COMP164 Page 29
Summary – Major Steps to Develop
Applications on Top of an eSOA Landscape
© SAP 2007 / Page 29
Sketching business processes and business rules with SAP
NetWeaver BPM and SAP NetWeaver BRM
Identifying Enterprise Services in the ES Workplace
Modeling Service Interfaces in the ESR
Implementing Enterprise Services with CAF
Publishing services to the Services Registry
Consuming services from the Services Registry in Web Dynpro
From model to execution - putting everything together with SAP
NetWeaver BPM
© SAP 2008 / SAP TechEd 08 / COMP164 Page 30
© SAP 2008 / SAP TechEd 08 / COMP164 Page 31
Copyright 2008 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.
SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge 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 in several other countries all over the world. All other product and service names mentioned and associated logos displayed are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.
The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. 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 shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence.
The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages.
Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrückliche schriftliche Genehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen können ohne vorherige Ankündigung geändert werden.
Einige von der SAP AG und deren Vertriebspartnern vertriebene Softwareprodukte können Softwarekomponenten umfassen, die Eigentum anderer Softwarehersteller sind. SAP, R/3, xApps, xApp, SAP NetWeaver, Duet, SAP Business ByDesign, ByDesign, PartnerEdge und andere in diesem Dokument erwähnte SAP-Produkte und Services sowie die
dazugehörigen Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und in mehreren anderen Ländern weltweit. Alle anderen in diesem Dokument erwähnten Namen von Produkten und Services sowie die damit verbundenen Firmenlogos sind Marken der jeweiligen Unternehmen. Die Angaben im Text sind unverbindlich und dienen lediglich zu
Informationszwecken. Produkte können länderspezifische Unterschiede aufweisen.
Die in dieser Publikation enthaltene Information ist Eigentum der SAP. Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, nur mit ausdrücklicher schriftlicher Genehmigung durch SAP AG gestattet. Bei dieser Publikation handelt es sich um eine vorläufige Version, die nicht Ihrem gültigen Lizenzvertrag oder anderen Vereinbarungen mit SAP unterliegt. Diese Publikation enthält nur vorgesehene Strategien, Entwicklungen und Funktionen des SAP®-Produkts. SAP entsteht aus dieser
Publikation keine Verpflichtung zu einer bestimmten Geschäfts- oder Produktstrategie und/oder bestimmten Entwicklungen. Diese Publikation kann von SAP jederzeit ohne vorherige Ankündigung geändert werden.
SAP übernimmt keine Haftung für Fehler oder Auslassungen in dieser Publikation. Des Weiteren übernimmt SAP keine Garantie für die Exaktheit oder Vollständigkeit der Informationen, Texte, Grafiken, Links und sonstigen in dieser Publikation enthaltenen Elementen. Diese Publikation wird ohne jegliche Gewähr, weder ausdrücklich noch stillschweigend, bereitgestellt. Dies gilt u. a., aber nicht ausschließlich, hinsichtlich der Gewährleistung der Marktgängigkeit und der Eignung für einen bestimmten Zweck sowie für die Gewährleistung der Nichtverletzung geltenden Rechts. SAP haftet nicht für entstandene Schäden. Dies gilt u. a. und uneingeschränkt für konkrete, besondere und mittelbare Schäden oder Folgeschäden, die aus der Nutzung dieser Materialien entstehen können. Diese Einschränkung gilt nicht bei Vorsatz oder grober Fahrlässigkeit.
Die gesetzliche Haftung bei Personenschäden oder Produkthaftung bleibt unberührt. Die Informationen, auf die Sie möglicherweise über die in diesem Material enthaltenen Hotlinks zugreifen, unterliegen nicht dem Einfluss von SAP, und SAP unterstützt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerlei Gewährleistungen oder Zusagen über Internetseiten Dritter ab.