How SOA is evolving in the real world? Krishna Prasad and Prasad A. Chodavarapu GMs (Technology),...

Preview:

Citation preview

How SOA is evolving in the real world?

Krishna Prasad and Prasad A. ChodavarapuGMs (Technology), HCL EAI Services (Formerly Aalayance )

Goal: Understand how SOA is evolving

• Today’s Alphabet Soup:– SOA, xSOA, ESA, ESB, EDA, EPCIS, BAM,

BPEL

• Use xSOA 3-layer model to understand why and how each of these technologies is evolving the way it is

• Q & A

• This talk will not cover basics of Web Services. E.g., SOAP, WSDL and UDDI are not described.

• We briefly revisit SOA as the base layer in xSOA

• We provide examples from our experience in Supply chain management (Business Integration) and Security domains

Scope of this talk

Extended Service Oriented Architecture (xSOA)

• xSOA 3-layer model is to SOA what OSI 7-layer model is to networking

• An attempt at abstracting the way SOA needs to evolve

What is xSOA?

xSOA 3 Layer stack

Source: Michael P. Papazoglou

xSOA Layer 1: Service Oriented Architecture (SOA)

• Basic unit of SOA• Logic offered in a context-independent

way – Context-independence allows composition of

services into higher level services• A Service should be:

– Self-describing: E.g., By way of Web Service Definition Language (WSDL)

– Discoverable: E.g., By way of Universal Discovery and Description interface (UDDI).

– Technology-agnostic: Accessible from every platform, e.g., via SOAP

What is a Service?

• SOA re-organizes software applications and infrastructure with services as fundamental elements

• Examples of SOA evolution in real world:– EPCIS (RFID)– ESA (SAP)

What is SOA?

Example in Layer-1: EPCIS (RFID)

• Electronic Product Code (EPC):– Next generation barcode– Identifies each object, not just products– Includes company code, product id and serial number

• Radio Frequency Identifier (RFID):– Standard for RF based tags storing EPC. – EPC can be read from the tag using a RFID Reader. – RFID tags may include sensors E.g., Temperature sensor

• EPC Information System (EPCIS): – Distributed services to track object lifecycle

information.– Emerging around Web Services for object tracking in the

supply-chain space.– Evolving at EPCGlobalInc.org

What is EPCIS?

(4)

(3) Give me the HazMat Class for this

EPC

WMS

(5) We just received 5 units of SKU 123, owned by XYZ Inc., that are deadly, have

a flashpoint of 22.8 C0, may detonate, and cannot be extinguished with waterTag

ReaderALE/EPC

Middleware

XYZ Inc. EPC Information

Service

ONSNaming Service

Source: Marc Linster

EPCIS Use Case

EPCIS/RFID Solution Architecture

Source: Connecterra

R

R

R

R

RFID Middle-ware (ALE)

Ship & Receive

Warehouse Mgmt

Factory Efficiency

EPC Info Services (EPCIS)

Exchange with trading partners

Management/Monitoring

Infrastructure-centric

Object Name Service (ONS)

R

R

Ship & Receive

R

R

Warehouse Mgmt

Exchange with trading partner’s corresponding app

Application-centric

• EPCIS services are discoverable via ONS and Discovery services

• EPCIS uses WSDL to be self describing

• Each EPCIS system can be in any platform and they all can collaborate with each other. Interoperability is the key for EPCIS to work.

Why EPCIS is an example of xSOA Layer 1?

Another Example in Layer-1: ESA (SAP)

What is ESA?

• Enterprise Service Architecture (ESA): SAP’s initiative to standardize how enterprise applications provide Web Services interfaces.

• An Enterprise Service is a Web Service whose interfaces fit into a “pattern” with Create, Retrieve, Update, Delete, Query and Action operations named and defined according to a convention.

• Tools can take advantage of the conventions to discover and integrate compliant enterprise services.

• All SAP products to provide ESA compliant Web Services interfaces by 2007

• Microsoft, IBM, Cisco, EMC, Intel and Macromedia have licensed ESA from SAP.

ESA: Architecture

Source: SAP

• ESA is standardizing the service interfaces for business objects in the enterprise

• A convention on top of basic SOA standards to let tools discover and use services easily

• ESA:SOA :: EJB:J2EE

How ESA fits in xSOA Layer 1?

xSOA Layer 2: Service Composition

• Composition of web services – For aggregation – For generating higher level services

that provide:• Filtering• Summarizing• Correlating

• Examples: BPEL (Aggregation), EDA/BAM (Higher level services)

What is xSOA Layer 2?

Example in Layer-2: BPEL

What is BPEL?

• Business process modeling has always been ad-hoc in vendor offerings. E.g., most tools cannot compensate when failures occur in long running transactions

• BPEL brings the benefits of standardization.– Rich process model including parallel execution (flow), event

handling, alarms, fault handlers and compensation handlers.– Compensatory mechanisms for handling failures in long

running transactions– Have WSDL? BPEL can use it. Web Services of course!

Legacy apps connected by WSIF via JCA/JDBC.– Portability

• What it doesn’t do, – No user interaction. Semi automated process cannot be

modeled.– No in-built support for transformation

BPEL Use Case

Source: Oracle

• BPEL is all about service composition• A BPEL process is also a Service! That is, the

composite service can in turn be composed!• Service aggregators thus become service

providers by publishing the service descriptions of the composite service they create.

How BPEL fits in xSOA Layer 2?

Example in Layer-2: BAM/EDA

• Business Activity Monitoring (BAM) relies on Event Driven Architecture (EDA) to provide business leaders with dashboards that display:– The cumulative status as of now– Business alerts that need to be acted on

• For example, lets say your inventory level drops down, business leaders need to know it immediately

• EDA is being implemented in the network layer to capture all application level events as they happen

• EDA uses Web Services to communicate events to BAM

• BAM consolidates application events into business information

What are BAM and EDA?

BAMsystems

Work houseData Stores

BI

Main Frames

Legacy Systems

Analytical Systems

Excel

Word

. ERP

. CRM

. SUPPLY CHAIN

Operational Systems

Desktop Data RiskIndicators

PerformanceIndicators

Business Dashboards

Transactional

External

BAM Architecture

• BAM provides higher level business information by filtering, summarizing and correlating event information obtained from EDA

How BAM and EDA fit in xSOA Layer 2?

xSOA Layer 3: Management

• Layer 3 addresses the challenges of management of Web Services

• Two distinct management services:– Operations

• Starting, Stopping, Configuring, …

– Enterprise Service Bus (ESB)• Example of Operations Mgmt.: Web

Services Management Framework (WSMF) – Not covered here

What is xSOA Layer 3?

Example in Layer-3: ESB

• Enterprise Service Bus (ESB) helps manage large number of services by providing horizontal value-adds such as:– Security– Transactions– Reliability– Service Virtualization

• Load Balancing• Message Distribution (Fan out and in)

What is ESB?

• ESB works by using the extension mechanisms built into SOAP:1. Message syntax and semantics can be extended with headers2. Messages can be intercepted and worked on by

intermediaries• Headers are not just syntax as in SMTP Headers. Semantics

of who may/must process headers allows standardization of extensions. E.g., WS-Security

• How does the message get to Intermediaries? – Implicit routing possible with SOAP-aware network devices– Explicit routing possible with WS-Addressing. Assumes next-

hop routing like in IP networks

How does ESB Work?

ESB: Architecture

Source: Michael P. Papazoglou

ESB Use case: Centralized Security

• Services can focus on their business logic and leave issues like reliability, transactions and security to be managed by ESB

• By factoring out all horizontal concerns into the bus, ESB enables easy development and management of a large number of services

How ESB fits in xSOA Layer 3?

Conclusion

Conclusion

• We have seen examples of SOA evolution in real world using xSOA 3-layer stack as our guide

– EPCIS brings dynamic capabilities to supply chain management and business integration

– ESA standardizes Web Services interfaces to legacy applications

– BPEL aggregates Web Services into a business process– BAM composes application events to higher level business

information– ESB focuses on quality of service

pkrishna@aalayance.com chap@aalayance.com