kevin liu peter mc nulty best practices v2

32
Founding Sponsors This Presentation Courtesy of the International SOA Symposium October 7-8, 2008 Amsterdam Arena www.soasymposium.com [email protected] Gold Sponsors Platinum Sponsors Silver Sponsors

Upload: soa-symposium

Post on 18-Nov-2014

753 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

Founding Sponsors

This Presentation Courtesy of the

International SOA Symposium

October 7-8, 2008 Amsterdam Arena

www.soasymposium.com

[email protected]

Gold Sponsors

Platinum Sponsors

Silver Sponsors

Page 2: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

Best Practices for SOA Services Provisioning and Management

Canyang Kevin Liu,

Solution Architecture ManagerSolution Architecture ManagerSAP® Co-Innovation LabPalo Alto, California

Page 3: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 4: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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 /

Page 5: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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 /

Page 6: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 7: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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 /

Page 8: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 9: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 10: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 11: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 12: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 13: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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 /

Page 14: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 15: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 16: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 17: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 18: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 19: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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).

Page 20: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 21: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 22: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 23: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 24: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 25: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 26: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 27: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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.

Page 28: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 29: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 30: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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

Page 31: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

Thank you!

© SAP 2008 / SAP TechEd 08 / SOA115 Page 30

Page 32: Kevin  Liu  Peter Mc Nulty    Best  Practices V2

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.