kevin liu peter mc nulty best practices v2
DESCRIPTION
TRANSCRIPT
Founding Sponsors
This Presentation Courtesy of the
International SOA Symposium
October 7-8, 2008 Amsterdam Arena
www.soasymposium.com
Gold Sponsors
Platinum Sponsors
Silver Sponsors
Best Practices for SOA Services Provisioning and Management
Canyang Kevin Liu,
Solution Architecture ManagerSolution Architecture ManagerSAP® Co-Innovation LabPalo Alto, California
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 arepresentation 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 warrantieseither 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.g y y g y g g
© SAP 2008 / SAP TechEd 08 / SOA115 Page 2
Agenda
1. SOA Governance and Experiences from SAP® Co-Innovation Lab2. Best Practices for Services Provisioning and Design-Time Governance3 B t P ti f SOA R ti M t3. Best Practices for SOA Runtime Management
© SAP 2008 /
Governance: A Holistic View
Enterprise Corporate GovernanceTransparency
ITCorrective measures SOX, HIPAA, SCADA
SOA IT GovernanceComplianceBest practices DesignITIL, COBIT frameworks
Run
g
SOA GovernanceProvisioning governanceRuntime management
© SAP 2008 /
SOA Governance vs. Management
Create the Right Services in the Right Way
Approach for services candidate identification
ProvisioningGovernance Approach for services candidate identification
Processes for services approval, implementation, and deployment
Consistent methodology and patterns for service design and implementation
SOALifecycle
RuntimeGain Visibility and Control of Services in ProductionManagement Services in ProductionMonitor performance of servicesEnforce SLAs and compliancesEnforce various policies
© SAP 2008 /
Enforce various policiesProvide analytics and reportsQuick issue identification and resolution
SAP Co-Innovation Lab
htt // ilhttp://coil.sap.com
The mission of the SAP Co-Innovation Lab is to enable our customers and partners to come together with SAP to collaboratively work on proof of concepts and promote new and i ti b i l ti d t h l i innovative business solutions and technologies.
Teams from diverse organizations can execute projects in an environment where they can join forces to build test and environment where they can join forces to build, test, and architect new business processes and enterprise SOA.
“Wh l fi d thi bl d f i f t t t d t ti“Where else can you find this blend of infrastructure, customer demonstrationpossibilities, and ability to work side by side with SAP experts?”
Joachim RahmfeldVMware Inc.
© SAP 2008 /
Current Sponsors and Member Companies of the SAP Co-Innovation Lab
Project
Demo &ShowcaseCollaboration
SAP Co-Innovation
Lab
Data Center
© SAP 2008 / SAP TechEd 08 / SOA110 Page 7
Project Example –Co-Innovation for SOA Management
Customer challenges:Heterogeneous SOA environmentLack of experiences and experience in integrating
SAP Co-Innovation Lab Approach Collaboratively capture key customerSOA management solutions
COIL SOA Management Partners
Collaboratively capture key customer requirements and scenarios
Develop test cases for Co-Innovation Lab reference landscape
E t t t d d l ti lExecute tests and develop optimal configuration and deployment models
Publish whitepapers and best practices
Guide partner R&D
…
Identified complex use cases and scenarios for SOA management in gcomplex enterprise environments
Customers confidence in making enterprise SOA management decisions
The Outcome
Whitepapers and best practices© SAP 2008 / SAP TechEd 08 / SOA110 Page 8
The SAP Co-Innovation Lab Landscape
virtual servervirtual servervirtual server
Load Balancer
end user
NW Portal instance
NW Portal
Load Balancer
CE instance
CE
Load Balancer
ECC WebService endpoints
ECC WebService
instance instanceWebService endpoints
Production-like operation:
All SAP components are set up with two instances to demonstrate high
Flexible Test Scenario
Triggered by end-user activity in the SAP NetWeaver Portal web-service calls are sent to a composite application, which in turn retrieves further information from a back-end system.
availability and scalability.
Secure SSL https communication might be used for messaging between components.
A network application delivery appliance
from a back end system.
SOA management policies are enforced by SOA Management proxies which sit in the message stream in front of application components. The proxies generate audit, logging, performance monitoring data about web-service calls and report them at runtime to a central SOA management reporting instance. The proxies also receive policies and other configuration from such a centralA network application delivery appliance
provides load balancing and other network optimization services.
The proxies also receive policies and other configuration from such a central configuration instance.
The web service calls can have different sizes up to many MB. Also load testing for concurrent web service calls can be performed.
© SAP 2008 / SAP TechEd 08 / SOA110 Page 9
Integration of SOA Governance and Management Components
Runtime management
Web services delivered by SAP run on ECC backend and on CE servers, they were provisioned following the SAP enterprise services provisioning
gleverages partner solutions
© SAP 2008 / SAP TechEd 08 / SOA110 Page 10
governance process
Agenda
1. SOA Governance and Experiences from SAP Co-Innovation Lab2. Best Practices for Services Provisioning and Design-Time
GovernanceGovernance3. Best Practices for SOA Runtime Management
© SAP 2008 / SAP TechEd 08 / SOA115 Page 11
Best Practice #1: Adopt an enterprise level service provisioning methodology
Business process driven top-down approach for service candidates identification is the key in achieving better business and IT alignment
© SAP 2008 /
Best Practice #2: Establish an enterprise level enforceable governance process for service provisioning
DECIDE
Collaborative Process
Roadmap-Driven TrackSAP’s plans to service-enable
Necessarybut not obvious
Select
quarterly
LongList
use cases
ShortList
Prioritize,considering
dependencies
SAP s plans to service enable mySAP Business Suite
Stakeholder-Driven TrackCustomers / partners
Confirmationof SAP plans
q ypdeciding how SOA drives
business valueBreakthrough
innovations
Committed Outcome
SAP
DEFINEcollaboratively
DELIVERsemi-annually
DEPLOYon mySAP ERP 2005
DEVELOP DECLARE
SAP Architects
Community Definition GroupsES bundles
Best Practice #3: Adopt an enterprise level service design meta model
Patterns
Service Description based on WSDL & XSD
Service*
Business Object Model
Deployment Unit1
Service Interface Interface Pattern
1
1
1 *
*
**
0..1Process Component
0..1 1..*1..*
1
1 *
1..*
1
Service Operation
Data Type
Communication PatternInputOutputFault
*
1..
1..*
0..1Business Object 0..1
1..*
**
Data Type(Message Type)Definition; XML
Schema
references*
1
Easy search and discovery through unambiguous classification
Business logic based on
Easy search and discovery through unambiguous naming conventions
Global Data TypesBusiness logic based on defined business objects
Meaningful granularity through business object assignment
Meaningful granularity through predetermined operations
Reusability through
Same business context always represented by the same data type
Easy composition through no/easy
© SAP 2008 / SAP TechEd 08 / SOA115 Page 14
predetermined operations
Well-known service behavior
Easy composition through no/easy conversions and mapping
Use of open semantic standards
Best Practice #4: Leverage common service design patterns (1)
Synchronousservices
A2A and B2Bservices
Manage BO(for master data objects)
Query BO Notification
<BO 1> Outbound processagent
<BO 2>Inbound processagent
Reservation
Synchronousoutbound proce...
O tb d I b d
Manage BO
Update <BO> <part B>
BO action
Outbound processagent
Inbound processagent
Outbound processagent
Inbound processagent
Manage BO(for business process
objects)
Specific value help for BO
Request confirmation
Replication
Best Practice #4: Leverage common service design patterns (2) – Decision Tree
Classification of atomic dialog
Answer expected?
Recipient expected to take
Modifying activity
No Yes
expected to take notice?
activity requested?
No Yes No Yes
Request/ConfirmationPattern
Query/ResponsePattern
InformationPattern
NotificationPattern
Best Practice #4: Leverage common service design patterns (3)
Example –synchronous pattern for managingpattern for managing master data BOs.
Typical CRUD fine-grained synchronous operations with atomic transactions wrapped in each operationpp pMainly consumed by UIs and composite applications
Best Practice #4: Leverage common service design patterns (4)
Example: A2A/B2B Request-confirmation pattern
One process component requests something from another processOne process component requests something from another process component and gets a confirmation once the requested business action is performed (which can take some days).
DEMO© SAP 2008 / SAP TechEd 08 / SOA115 Page 19© SAP 2008 / SAP TechEd 08 / SOA115 Page 19
Example: Enterprise Services Workplace
Example: Sales Order Processing model
Agenda
1. SOA Governance and Experiences from SAP Co-Innovation Lab2. Best Practices for Services Provisioning and Design-Time Governance3 B t P ti f SOA R ti M t3. Best Practices for SOA Runtime Management
© SAP 2008
SOA Governance and Management – An example
Revenue Targets
How a business goal is translated into and enforced by a set of policies
Reporting Business Contracts and
SLAsBusinessBusiness--IT IT AlignmentAlignment
SLAs
SOA Performance and SLA Compliance
Technical Policies and SLAs
A Day in the Life of an SOA Admin
SOA Management
Internal customers
Monitoring
Service Usage
SOA Admin Business partners
Policies
D d
SLAs
Services
Policies
Dependency AnalysisImpact
Analysis
Services Registry
Intermediary
Analytics
Auditing
y bo
rder
© SAP 2008 / SAP TechEd 08 / SOA115 Page 22
…
Com
pany
Best Practice #1: Use an SOA management component deployment pattern that best achieves scalability and availabilityy
The best deployment pattern - put SOA management proxies in between an application deliverable (AD) component and applicationdeliverable (AD) component and application instances.
Scalability: SAP application component scalability can be achieved by adding as many application instances onbe achieved by adding as many application instances on as much server hardware as needed for some high-throughput requirements. The same methodology is applicable for the SOA management components. With the load-balancing capability SOA managementthe load-balancing capability, SOA management components can send traffic to any server as indicated by the “X-like” connectivity lines.
High Availability: With the important load-balancing g y p gcapability of SOA management components and the “X-like” connectivity between SOA management components and server instances, any single component failure would still allow continuous operation of the overall setup. p p
© SAP 2007 / Page 23
Best Practice #2: Think about not only SOA management features, but also operational risks – High availability of management console is also critical g
To ensure the continuous operation of the enterprise services environment, most SOA Management solutions (SOA Software is shown as example) support clustered deployment for high availability and load balancing
Th hi h il bilit id ti h ld t b li it d t th ti f tThe high availability consideration should not be limited to the runtime enforcement points, but also the central console.
© SAP 2007 / Page 24
Best Practice #3: Take change management into consideration early in projects
<protocol>://<server>:<port>/<web-service specifier>
Transport Locator WebService Locator
When fully qualified URLs are used, change management of virtualized services can be a lot of work
SAP Development System
SOA Management Proxy
Web-Service Traffic Web-Service Traffic
SAP QASOA ManagementWeb-Service Traffic Web-Service Traffic
SAP CTS?
Desired:
- The “transport locator” should be separated from the “Web service
SAP QA System
SOA Management Proxy
SAP Productive System
SOA management Proxy
Web-Service Traffic Web-Service Traffic
SAP CTS?
locator”, so it’s easier to migrate from one system to another or switch from one protocol to another (e.g. http to https)
yy
© SAP 2007 / Page 25
- Mass import & export capability
Best Practice #4: Separation of UI traffic and SOAP traffic
No major issue if UI traffic can be routed around SOA management Proxy
WSIL via GET was provided, but did not work in the landscape. Client applications that require dynamic Web services discovery via WSIL fail function. Further investigation is requiredinvestigation is required.
SOA Management
Proxy
SAPServerWeb-Service +
UI trafficWeb-Service
traffic onlyBlocks any traffic butWeb-Service traffic
Most SOA management solutions are designed specifically for web-service traffic
Application delivery appliance would be needed to separate the traffic when clients access the application servers only through some sort of intranet or the Internet cloud where all network traffic travels jointly on one
© SAP 2007 / Page 26
j ynetwork pipe.
Operational consideration: Reliable runtime performanceExample – SAP Co-Innovation Lab Results for SOA Software
SOA Software provides Java-based Web services proxy, policy management, performance monitoring and reporting tools for SOA management.
It is important that such solutions do not degrade the reliability of an overall business applicationoverall business application landscape, which uses SOA.
Tests performed in our lab showed that a combined landscape with
Error statisticsP F il St
SOA Software tools and SAP applications reaches “ five 9s” (99.9998%) reliability on SOA message transfers. This was found
Pass Fail Stop162,440 0 0
in six-hour tests under high loads.
© SAP 2008 / SAP TechEd 08 / SOA110 Page 27
Operational consideration: High scalability Example - SAP Co-Innovation Lab Results for SONOA Appliance
SONOA provides a network hardware appliance for SOA management, which is capable ofhandling large message volumes:
Shown is a six-hour measurement where an increasing number of users make requests while message g q gsizes were kept constant (about 300 KB)
At high load of our stress testing, only less than 1% of the SONOA appliance CPU was utilized
One SONOA appliance may be able to enforce SOA management policies in front of many SAP application components with high sustained loadapplication components with high sustained load.
© SAP 2008 / SAP TechEd 08 / SOA110 Page 28
Understand what SOA management capability is important to you Example - Managing policies with AmberPoint
Services ramp up
AmberPoint provides a rich user experience in managing services provided by SAP and other vendors
Services ramp-upWSIL-based approach makes initial servicesregistration painless
Policy managementPolicy managementRich set of templatesApply and enforce policies with a service in a few simple stepsin a few simple steps
ReportingComprehensive view as well as detailed performance reports Dependency map
NavigationSimple Web-based UIFilters to narrow down resultsFilters to narrow down results Easy navigation among key functional areas
© SAP 2008 / SAP TechEd 08 / SOA110 Page 29
Thank you!
© SAP 2008 / SAP TechEd 08 / SOA115 Page 30
Copyright 2008 SAP AGAll 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 th t d k f th i ti i D t t i d i thi d t i f ti l l N ti l d t ifi tithe 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 h ll h li bilit f d f ki d i l di ith t li it ti di t i l i di t ti l d th t lt f th f th t i l Thi li it tiSAP 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.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 h i it d ü kli h h iftli h G h i d h SAP AG t tt t B i di P blik ti h d lt i h i lä fi V i di i ht Ih ülti Li tauch 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
© SAP 2008 / SAP TechEd 08 / SOA115 Page 31
g g , g , gentstehen 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.
Alle Rechte vorbehalten.