Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively...

41
Taming the SOA Chaos Debu Panda Oracle

Transcript of Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively...

Page 1: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Taming the SOA Chaos

Debu Panda

Oracle

Page 2: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 2

Many initiatives lack Business/IT collaboration

Sell products

Servicecustomers

Getpaid

Business -

Strategic modelingIT – Executable modelingRequirements, powerpoint,

visio model, Export files

• No visibility into IT ? • Disconnect between conceptual model and implemented process

• Not sure how to improve process and reduce costs ?

• Change in business rules and processes

• Requirements not clear ?• Business is constantly asking for changes•No visibility to process execution•Change in partners and technology

Enter order

UpdateERP

UpdateGL

Print

invoice

Fulfill

order

Page 3: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 3

SOA Quiz Context: SMS to 55555

Which of the following is true:

A. SOA is no longer a buzz word

B. SOA creates chaos

C. SOA is the answer to solve all IT chaos

D. All of the above

A Lucky winner will be appointed as Head of SOA COE ☺

Page 4: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 4

Service Oriented Architecture Defined

Service Oriented Architecture is an architectural style whose goal is to achieve loose coupling among interacting software

agents. A service is a unit of work done by a service provider to achieve desired end

results for a service consumer.

Dr. Hao He, W3C Web Services Architecture Working Group

Page 5: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 5

Characteristics of Service Oriented Architecture• Services have platform

independent, self describing interfaces (XML)

• Messages are formally defined

• Services can be discovered

• Services have quality of service characteristics defined in policies

• Services can be provided on any platform

SOASOASOAInteroperable

LooselyCoupled

Re-Usable

Composable

Page 6: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 6

An example SOA solution

SHOPPING PORTAL

Web Services Interface: XML, SOAP, WSDL, WSIF

EJB 3.0

Customer service

Product

Suppliers

Order DB

Approval

(Rich Workflow)

Notification

Service

Order Booking BPEL PROCESS

receive

Insert Order

end

getCustInfo

SelectMfr RapidMfr

5-15 min

invoke

receive

invoke

receive

Manual

Review

?

Fulfill Order

Notify Cust

ESB

RulesEngine

Rule Author

Rulesrepository

DecisionService

FedEx

USPS

ESB

Operational dashboard

BAM

Page 7: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 7

WSDL/WSIF

XML/XML Schema

SOAP JCA JMS

BUSINESS SERVICES

More Interoperable

ERP/Legacy Apps

Custom Apps& Services

Web services

Key SOA Standards

Process FlowLogic

XSLT/XQuery

BPEL

More Adaptable

PROCESS ORCHESTRATION

WSRP, JSR-168

USER INTERFACE

Struts/JSF

Portal

Web Application

API

WS

Richer Experience

PKIDashboards

BAM

MONITORING

JMX

Fusion Effect

WS-Security

SERVICE BUS

SecurityReliabilityLoggingFailover

Dynamic Routing

WS-Policy, SAML

Web Services Mgmt

Page 8: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 8

Broad Adoption of SOA…

Financial Services Order/Payment ProcessingNew Account Provisioning ProcessTrade Exception Management

High Tech Order ManagementTrading Partner Integration

Telecom Cell Phone ActivationVoIP ProvisioningDSL Provisioning

Government Medicare Eligibility Determination and Enrollment Satellite Data ExchangePublish and Process FormsEmployee On-boarding

Transportation Fleet and Asset Management

Travel Reservations

Retail Sales Data Integration

Page 9: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 9

•Apache SOAP

•XQS is a Vision

•Developer Centric

•Limited Tooling Integration

•Proprietary Web Services Stacks

Early

•J2EE 1.4

•JAX-*

•WS-Reliability & WS-Security

•Attachments & Annotations

•Enterprise Ready

•Scalable & Performant

•Uptake consolidation starting

•Java EE 5

•JAX-WS / .Net

•WS-*, MTOM, UDDI

•Event Infrastructure

•Async Web Services

•Interop Focus

•Integration Focus

•Consolidated Tech Stack

•Metadata Driven Integrated

Tooling

•Enterprise Ready

•Scalable & Performant

•Mesh/SCA

Web Service Stack Evolution

With the buzz word

The Reality

Page 10: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 10

Complying to Web Services-Interoperability

Oracle Containers for Java EE

Web ServicesMetadata

JAX-WS

JMSJMSSOAPSOAP

HTTPHTTPSOAPSOAP

HTTPHTTPRESTREST

JAX-BData Binding

SCA Metadata Model & Service BindingSCA Metadata Model & Service Binding

Attachment(MTOM/SwA)

JAX-R

WS-Security

SAMLWS-

ReliableMessaging

Auditing LoggingAgent

Web Services Java Programming Model – Java EE

Declarative QoS - Web Services Interoperability Infrastructure (WS-*)

WSIF

Page 11: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 11

Key Standards: BPEL and Process

Orchestration

Duplicate

Number!

SalesDB start

end

Router

Billing

Standard markup language for composing a set of discrete

services into an end-to-end process flow

• 10+ years of R&D from

MSFT and IBM

• Rich Flow Semantics

• Optimized Bindings (not

just Web services)

• Transformation

• WS-Security

• A Process is a Service

Page 12: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 12

The BPEL Process Manager

Process Console

MA

NA

GE

J2EE Application Server

(Oracle AS, WebLogic, JBoss, WebSphere)

Core BPEL Engine

BPEL

JDeveloper

BPEL Designer

BPEL Process Manager

Integrated BPM Services

Workflow DecisionService

Sensors

Dehydration Store

(Oracle Database)

WSDL Binding

File, FTP

Web services

Java, JMS

Database

Apps

Enterprise-strength infrastructure for BPM

• Comprehensive and native

BPEL implementation

• Easy-to-use modeling tool

• Scalable and reliable engine

• Flexible binding framework

• Rich management and

monitoring

BPA Suite

Process

Modeler

Workflow Services

Page 13: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 13

Business Process Blueprint

Problem– Models are only used for documentationand project planning. They become obsolete as soon as they are released.

– Gap between functional experts andtechnical experts.

Solution

- Business Process Blueprint - Shared metadata between BPA suite and

SOA suite

- Annotation on existing process metadata (NOT import/export)

- Link operational models to strategic and conceptual models

- Self-Documenting Processes

- Self-Auditing Processes

Process Outline

Business Analyst

Application Composer

• Automated Activities• Human Activities• Business Events• Business Rules• Notifications• Key Performance Indicators

Page 14: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 14

Enterprise Service Bus: Component

Architecture• Components

– Integrated Designer

– Rich Monitoring Console

– JCA Adapters

– Routing Service

• XPATH Filter Expressions

• XSL Transformation

– Metadata Repository/Server

• Features

– Content Based Routing

– Enterprise Messaging - OEMS

– Native XML and Web Services

– Multi Transport Fabric

• Usage Patterns

– Point to Point

– Canonical Modeling

– Store and Forward

– Request/Response

– Externalized Services

Enterprise Service Bus

fx

BPEL BAMPortlets Web UI

MDS

UDDI

ESBConsole

Composite Applications, Portals, BI and BAM

JCA

SAPJAX

SOAP JMS

Mainframe

In Memory

Java

B2B

TradingPartner

SecurityPolicies

Page 15: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 15

Business Rules

• Are declarative not procedural

• Best practice for SOA applications

– Agility

– Transparency

– Can be generated from GUIs

• Applications requiring agility

– Frequently changing (legal) regulations

– Frequent policy changes to reflect market changes

– Requirements for high levels of customization

Rules de-couple decision services from SOA applications

Page 16: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 16

Process Models – continuous refinement

2. Process Blueprint (Logical Design)

1. Business Process model

3. Complete Executable Process

Business Process Model

Logical Design

Physical Design

Shared Metadata

Business Process Model

Logical Design

Physical Design

Shared Metadata

Oracle BPA Suite - EPC/BPMN models

Oracle JDev - Process Designer (BPEL)

Business

Modeling

Technical

Modeling

Page 17: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 17

Challenge #1 – Capture Real-Time Data

RFID and Sensors� Active and Passive

� Location, Temperature, Moisture,

Motion, etc.

Security� Authentication, authorization, audit trail

Database� Streams

System Management� Performance metrics, alerts, logs

Business Processes (BPEL)� Monitoring activities, states

Messaging Systems� JMS, TIBCO, MQSeries

Business Apps� Business Events, state transitions

Page 18: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 18

Challenge #2 – Analyze Processes,

Trends, and Context

Monitor a Single Process� Track each process step� Identify failures

Process Aggregations� Averages, KPIs, SLAs� Identify bottlenecks

Complex Event Processing� Correlate independent events� Identify threats & opportunities

Context� Historical performance� Rolling average

Past

WeekToday

Past 15

Minutes

Page 19: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 19

• Real-Time KPIs

• Thin Browser GUI

• Role-Based Access

• Live Display Technology

• Portal Compatible

• Embedded Actions

Challenge #3 – Deliver Information to

Business Users

Page 20: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 20

CreditRating

start

end

Request Offer Request Offer

Receive Offer Receive Offer

Select Lowest Offer?

Handle Negative

Credit Exception

A Typical SOA Application

Page 21: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 21

CreditRating

start

end

Request Offer Request Offer

Receive Offer Receive Offer

Select Lowest Offer?

Handle Negative

Credit Exception

1. Limit who can initiate processes

<SSN>

011-22-4488

</SSN>

2. Encrypt SSN

3. Callback has to go through firewall

4. Make sure no other sensitive data is unprotected

The Security Requirements

Page 22: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 22

start

end

Request Offer Request Offer

Receive Offer Receive Offer

Select Lowest Offer?

Handle Negative

Credit Exception

Managing Web Services Security

Add Oracle WSM Gateways/Agents

1. SAML: Role-based access control2. WS-Security:

Authentication & auto-encryption of SSN in XML message

3. Web services Management: Service virtualization in DMZ

4. WS-Policy: System-wide service auditing

Page 23: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 23

Web Service Management

• Without WSM, policy is hard-coded into each Web Service

• Result is siloed, inconsistent security and management

• A change in enterprise standards = rework of every service

• Higher cost, more fragile, harder to change

• No unified insight into operations across services

Decouple your Security and Management Policies from Service

Logic

Page 24: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 24

Policy Attachment

• Search for available policies

• Attach/detach policies to a port

Page 25: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 25

Policy Management - Policies

• Search for policies

• Port dependency per policy

• Customize out-of-box policies –create like

• Create new policies

• Edit policies

• Generate client policies

• Export/import policies

• Policy subject validation

Page 26: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 26

Oracle WSM Components

BUILDPolicies

ENFORCEPolicies

Deployment as Gateway Process or as Embedded Agents

MONITORPolicies

PolicyManager

PolicyGateway

PolicyAgents Oracle Enterprise

Manager

Web Services

Page 27: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 27

The UDDI - Registry?

Provides visibility into services, service providers

and related resources across the enterprise

SOA InfrastructureServices, BPEL Processes, ESBs

Policy ManagerPolicies

SOA RepositoryXSDs, XSLTs, Etc.

Page 28: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 28

Who Uses a UDDI Registry?

• B2B partner relationships

– Provisioning/release of services to partners

– Portal integration to enable discovery

• Business analysts/IT management

– Definition of service portfolio

– Visibility into current portfolio

– Impact analysis

• Product development

– Re-use of existing services

– Design-time access to related artifacts such as policies and schemas

Page 29: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 29

Enables service providersto categorize, catalogue and advertise offerings

Allows users and consumers to find, access and/or invoke services that meet defined criteria

Key Benefits

Page 30: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 30

Service Registry - Provides Key SOA

Governance Capabilities

• Lifecycle management

via custom taxonomies

• Change notification

• Controlled view and

access into services

• SOA metadata

management

• Quality control through

approval process

“Those IT managers seeking closer alignment with business goals must combine the ideas of registries, policy and business services to increase the chances of success.”

— Gartner Group

Page 31: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 31

Key Challenges for Administrators

• Manage and Monitor

– Complex IT Infrastructure

– Complex Applications

• Discovering Topology

• Maintain SLA

• Diagnose and fix Issues

Page 32: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 32

Mind boggling SOA – How do I manage

Manage SOA Chaos

UDDI

ESB

RULES

………

BPEL

JAXWS

WS-*

SCA

Page 33: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 33

Key Challenges for Administrators

• Manage and Monitor

– Complex IT Infrastructure

– Complex Applications

• Discovering Topology

• Maintain SLA

• Diagnose and fix Issues

Page 34: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 34

ProvisionProvisionSoftwareSoftware

Deploy andDeploy andSecureSecure

ApplicationsApplications

EnsureEnsureHigh High

AvailabilityAvailability

MonitorMonitorSystems &Systems &

ApplicationsApplications

OptimizeOptimizeWorkloadWorkload

ManagementManagement

Patch &Patch &ReconfigureReconfigureSystems &Systems &

AppilcationsAppilcationsIntegratedIntegratedSystems &Systems &

ApplicationsApplicationsMgmt.Mgmt.

Page 35: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 35

Composite Application Management Solution

•AS Provisioning

Pack

•Change, Clone wizards

•Deployment Procedures

Lifecycle

Automation

•AS Config Mgt Pack

•Config Mgt Pack for

Non-Oracle

•Configuration discovery, compare, search

•Change history

•Configuration Policies

Configuration

Management

•SLM Pack

•AS Diagnostics Pack

Other:

•Plug-ins

•End User Monitoring – synthetic, real

•Web Service Monitoring

•Cross-tier performance

•Call stack analysis

•Integration with SQL diagnostics

Application

Performance

Management

•Service modeling (including web services)

•SLA monitoring, real-time reporting

•Service & System Dashboards

•Auto discovery of process dependency

•BPEL process monitoring

•BPEL integration server monitoring

Key Capabilities

•Service Level Mgt

Pack

Service Level

Management

•SOA Management

pack

SOA Runtime

Governance

ProductsSolution

Page 36: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 36

Service Level ManagementAlign IT and business customers on service levels

That’s what you aim for

1. Real-time view of SLM, enabling you to resolve issues before service level violations

2. SLA based on both, system and end usermetrics

Page 37: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 37

Lifecycle Automation Cost effectively manage “many as one”

• Provisioning Framework

– Pre-tested software image libraries

– Automated software image deployment

– Direct connection to MetaLink

– Provisioning of bare metal OS

• Patching, Cloning Wizards

– Intelligent cloning makes adjustments for IP address, host name, etc.

– Critical Patch Facility (security)

– OS patching

• Deployment Procedures

– Customize EM to company process

– Automate complex deployments

Web Cache

Overview

HTTP Server

OC4J

Visual ID of

Root Cause

Failure

Page 38: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

LO

AD

BA

LA

NC

ER

Dehydration Store(Oracle Database)

App. Server

App. Server

App. Server

BPEL Server

BPEL Server

Cluster of Servers

BPEL Process

EM

GR

ID C

ON

TR

OL

SOA Infrastructure Management

Page 39: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 39

The Oracle SOA Technologies

J2EE Application ServerOracle AS, JBoss, WebLogic, WebSphere

Messaging

Metadata Repository

DATA SERVICES & CONNECTIVITY

Apps

AdaptersAdapters

Partners

B2BB2B

RFID

SESSES

DB Bulk

ODIODI

ETL

Multi Protocol

RoutingXSLT

Transform

Enterprise Service BusEnterprise Service Bus

NativeBPEL

Business Rules

Human Workflow

BPEL Process ManagerBPEL Process Manager

ROUTING & ORCHESTRATION

DiscoveryPolicies

Management

Security

Web Services Web Services ManagerManager

RegistryRegistry

GOVERNANCEEvents AnalyticsBusiness

Monitoring

System Monitoring

Enterprise Enterprise ManagerManager

BAMBAM BIBI

MANAGEMENT&

MONITORING

App DevFramework

JDeveloperJDeveloper

Analyst Tools

BPA SuiteBPA Suite

Page 40: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 40

<Insert Picture Here>

More information

Oracle SOA center http://otn.oracle.com/soa

Page 41: Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively manage “many as one ... The Oracle SOA Technologies

Slide 41

<Insert Picture Here>

Shameless Marketing plug

http://manning.com/panda

http://debupanda.com