Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

81
Topic 1 Introduction to SOA Assoc.Prof.Dr. Thanachart Numnonda September 2010 www.imcinstitute.com

description

Presentation Series on SOA : September 2010

Transcript of Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Page 1: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Topic 1

Introduction to SOA

Assoc.Prof.Dr. Thanachart NumnondaSeptember 2010

www.imcinstitute.com

Page 2: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

2

Agenda

Evolution of Enterprise Application Framework

What is SOA?

SOA Framework

Page 3: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

3

Evolution of Enterprise Application Framework

Page 4: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

About Enterprise Applications

• Things that make up an enterprise application– Presentation logic– Business logic– Data access logic (and data model)– System services

• The evolution of enterprise application framework reflects– How flexibly you want to make changes– Where the system services are coming from

Page 5: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Enterprise Architecture

Page 6: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Single Tier (Mainframe-based)

• Dumb terminals are directly connected to mainframe

• Centralized model (as opposed distributed model)• Presentation, business logic, and data access are

intertwined in one monolithic mainframe application

Page 7: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Two-Tier

• Fat clients talking to back end database– SQL queries sent, raw data returned

• Presentation,Business logic and Data Model processing logic in client application

Database

SQL requestSQL response

SQL request

Page 8: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Three-Tier (Web Server)

• Browser handles presentation logic

• Browser talks Web server via HTTP protocol

• Business logic and data model are handled by “dynamic contents generation” technologies (PHP, Servlet/JSP, ASP)

Database

SQL requestSQL response

HTML response

WEB Server

HTML request

Page 9: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

N-Tier with Application Servers

• App Server handles business logic & System services

• Load balance, Tracsaction, concurrency, etc are automatically handle by App Server

• Two main technologies Java EE or .NET

Page 10: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

10

Enterprise Frameworks [IDC 2007]

Page 11: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

11

What is SOA?

Page 12: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

12

Evolution into Service Oriented Model • Both industries (Electric & Computing) ahave

evolved into a service oriented model

Page 13: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

13

Hype or Reality?

So What?SOA!?

Reuse

Encapsulate

The New EDI?

Remember CORBA?Web Services

Aligned

Cross-PlatformVendor Neutral

Multi-Vendor

Register & Discover

Described

StandardsFlexible IT

XML

Wrap & Reuse

Composability Legacy

Layering

Agile

Stateless

Loosely Coupled

Messaging

Integration

QoS

Federation

Transformation

On Demand

Autonomous

Interoperable

Extensible

Location Transparency

Page 14: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

14

What is SOA?

Principles and practices for designing shared, reusable, distributed services

SOA Attributes:> Separation of service interface from underlying

implementation (loose coupling)‏> Promotes service reuse through discoverable and

self-describing services> Services are course-grained, composable, and rely

on a standards based infrastructure

Page 15: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

15

Accidental Architecture?Silo Oriented Architecture

Rigid

Complex

Expensive

Slow to Market

Monolithic

Hard to Integrate

Mature information systems grow old disgracefully as successive waves of hacking result in accidental architectures which resist the reflection of on-going business process change.- Anthony Lauder & Stuart Kent; University of Kent. (2000)‏

Page 16: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

16

Technical Challenges

Page 17: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

17

The “Move” to Service Orientation

AccidentalRigid

Silo-Oriented

LayeredExtensible

Service-Oriented

Page 18: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

18

Layering Principle

• Shared Network-based Layered Services

Process Layer

Access Layer

Service Layer

Resource Layer

Page 19: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

19

SOA Architecture Layers

Resources

Page 20: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

20

SOA Architecture Layers

• Resources– Operational Resources; e.g. CRM, ERP, HR,

Databases– Enterprise components; technologies e.g. Java, .NET,

CORBA, PHP

• Services– Selected components which have been developed as

services

– Can implement various way; e.g. Web Services– Normally has well defined interface; e.g. WSDL

Page 21: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

21

SOA Architecture Layers

• Business Process– Represent powerful orchestration of one or more

services that solve a business problem– Business Process itself is a service of services

• Access – Front or User Interface that calls business process– Web Programming, Desktop, Dashboard– Can be implemented to run on various devices

Page 22: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

Enterprise SOA Implementation

Reusable Services

Credit Card Mortgage

Partner Credit Data Customer Data

Internet

Bill PayAutoLoans Stocks

MutualFunds

Customer Data Service

AccessService

Credit Check

Fraud DetectionPaymentManagement

Service

TradeExecution

Service

AccessManager(Liberty)

ServicesRegistry(RegrepUDDI)

Interest Calc Balance Check

Back-End System Back-End System

CompositeApplicatio

ns

IncreasedAgility

Page 23: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

23

Monolithic Systems

Page 24: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

24

Reuse Services via Re-composition

Page 25: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

25

SOA Value Proposition

• Reducing integration expense– Both development and maintenance cost by isolating

components and systems through well-defined interfaces and proper architecture layering.

• Increasing asset reuse• Increasing business agility

– Simplified Business Integration

• Reducing business risk– Both operational and compliance risk

Page 26: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

26

SOA Value Proposition

• Faster time to market• Align IT and Business Units• Visible Business Process

Page 27: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

27

SOA Definition (Re-caps)

Page 28: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

28

AccountManagement

OrderProcessing

ServiceScheduling

The Root of the Problem

DataRepositories

Check Order Status

Check Credit

Check Customer Status

Check Inventory

Check Order Status

Check Inventory

Check Credit

Monolithic,IndependentApplications

Multiple CustomerViewsDispersed, unintegrated data

Check Inventory

Check Customer Status

FinanceSalesMarketing ExternalPartner

DataWarehouseCRM

Page 29: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

29

IT Silo

CheckCustomer Status

Determine ProductAvailability

CheckCustomer Status

Determine ProductAvailability

VerifyCustomer Credit

Order Status

CalculateShipping Charges

Order Status

VerifyCustomer Credit

DataRepository

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

MonolithicApplications

AccountsManagement

OrderProcessing

FieldService

Scheduling

Page 30: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

30

IT Silo

CheckCustomer Status

Determine ProductAvailability

Order Status

CalculateShipping Charges

Verify

Customer Credit

DataRepository

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

MonolithicApplications

AccountsManagement

OrderProcessing

FieldService

Scheduling

CheckCustomer Status

Determine ProductAvailability Order Status

Verify

Customer Credit

Page 31: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

31 ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

Reuse Services Via Re-composition

ElementalBusinessServices

AccountsManagement

OrderProcessing

FieldService

Scheduling

DataRepository

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

CreateInvoice

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

Page 32: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

32

Reuse Services Via Re-composition (cont.)‏

AccountsManagement

OrderProcessing

FieldService

Scheduling

DataRepository

ComposedBusinessProcesses

Installation Scheduling Process Customer Order Bill Presentment/Payment

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

ElementalBusinessServices

CheckCredit

CheckOrder Status

CreateInvoice

CheckCustomer Status

CheckInventory

Installation Scheduling

CheckCustomer Status

CheckInventory

Page 33: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

33

ElementalBusinessServices

AccountsManagement

OrderProcessing

FieldService

Scheduling

DataRepository

ComposedBusinessProcesses

Installation Scheduling Process Customer Order Bill Presentment/Payment

CreateInvoice

CheckCreditCheck

Order StatusCheck

InventoryCheck

Customer Status

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

Process Customer Order

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

Reuse Services Via Re-composition (cont.)‏

Page 34: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

34

ElementalBusinessServices

AccountsManagement

OrderProcessing

FieldService

Scheduling

DataRepository

ComposedBusinessProcesses

Installation Scheduling Process Customer Order Bill Presentment/Payment

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

CreateInvoice

Bill Presentment/Payment

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

CheckOrder Status

CreateInvoice

Reuse Services Via Re-composition (cont.)‏

Page 35: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

35

ElementalBusinessServices

DataRepository

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

Business Processes Are Composed Hierarchicallyto Create Composite Applications

AccountsManagement

OrderProcessing

FieldService

Scheduling CompositeApps

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

CreateInvoice

Page 36: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

36

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

CreateInvoice

DataRepository

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

OracleFinanceSystem

SiebelCRM

System

AS400Sales

System

CustomMarketingSystem

Shared Services – Composite Apps – Increased Functionality

AccountsManagement

OrderProcessing

FieldService

SchedulingAnother

OneManage

ExceptionOrders

SubmitChangeOrder

ElementalBusinessServices

Page 37: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

37

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

CreateInvoice

ElementalBusinessServices

SOA Principles

DataRepository

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

AccountsManagement

OrderProcessing

FieldService

SchedulingAnother

OneManage

ExceptionOrders

SubmitChangeOrder

•Registered anddiscoverables

•Coarse-grained services

•WSDL-described•JBI-based

•Document-based•Mostly asynchronous

•Conversational•Reliable

Page 38: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

38

CheckCustomer Status

CheckCredit

CheckInventory

CheckOrder Status

CreateInvoice

ElementalBusinessServices

SOA Principles (cont.)‏

DataRepository

ExternalTradingPartner

AnotherBusiness

Unit

Red PrairieWarehouse

Mgmt. System

SAPFinanceSystem

OracleCRM

System

AS400Sales

System

CustomMarketingSystem

AccountsManagement

OrderProcessing

FieldService

SchedulingAnother

OneManage

ExceptionOrders

SubmitChangeOrder

•Secure•Policy-driven

•Orchestrated

Page 39: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

39

SOA Implementation Framework

Page 40: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

40

SOA Framework

Resources

Services

Business Process

Access Layer

Page 41: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

41

The most important SOA concepts

• Services• Self-describing interfaces with coarse granulation• Exchange of messages• Support for synchronous and asynchronous

communication

• Loose coupling• Service registries• Quality of service• Composition of services into business processes

Page 42: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

42

SOA Framework

External/Internal Systems

Build Re-usable Services (ESB) ‏

Business Process Management (BPEL) ‏

User Interface + Single Window (Portal)

User Interface Dashboard (KPI) ‏

Page 43: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

43

SOA Implementation

• Services Implementation– Various Programming– Web Services– Non Web Services; Legacy via adaptors

– Data Services => JDBC

• Message Exchange => XML Schema• Self-describing interface => WSDL• Comunication of Services & Management => ESB• Service Orchestration => BPEL, Human Workflow• Presentation => Portal, Web Programing

Page 44: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

44

SOA Hardware Architecture

Page 45: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

45

Key SOA Standards

Page 46: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

46

Resources Layer

External/Internal Systems

Page 47: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

47

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

Resource Layers (cont.)‏

Page 48: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

48

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

Build Re-usable Services

Services Layer

Page 49: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

49

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

Services Layer (cont.)‏

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Page 50: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

50

Enterprise Service Bus (ESB) Enterprise Service Bus (ESB)‏ ‏

Components of Business Service Layer

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Page 51: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

51

Why ESB?

• In most enterprise, Web Services are not the only middleware solution.

– Only SOAP is not adequate for services connection

• Other middlewares products, messaging servers, Java EE, ORBs, Databases etc..

– Other binding communication protocols may be need; such as JDBC, JMS, Files, SMTP,MSMQ

• ESB acts as an intermediary layer of middleware to communicates between services using various protocols.

Page 52: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

52

ESB : Features

• Provides communication between services via different protocols (Not only HTTP/SOAP)

• Message interception capabilities• Routing capabilities• Transformation capabilities• Control over the deployment, usage and

maintenance of services• Other important managements,

Page 53: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

53

Business Service Layer – Protocols / Adapters

Customer

Bank

Manufacturer

(Mail)System1

Shipping

LineBank

Custom

(Web Services)

System2

(Legacy)

System3

(Legacy)SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

SAP

Adapter

Oracle

JDBCAdapter

AdapterFTP SMTP TCP/IP FTP FTP HTTP / SOAP

Page 54: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

54

Business Service Layer – Data Format

Customer

BankManufacturer System1

Shipping

LineBank

Custom

(WebServices)System2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

SAP

Adapter

Oracle

JDBCAdapter

AdapterFTP SMTP TCP/IP FTP FTP HTTP/SOAP

EDIProprietary

FormatSWIFT FIX XML Table CSV

Data

Transformation

Data

Translation

Data

Enrichment

Data

Validation

Page 55: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

55

Business Service Layer – Data Delivery

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

SAP

Adapter

Oracle

JDBCAdapter

AdapterFTP SMTP TCP/IP FTP FTP HTTP/SOAP

EDIProprietary

FormatSWIFT FIX XML Table CSV

Data

Transformation

Data

Translation

Data

Enrichment

Data

Validation

Queue Queue Topics Topics Topics Guaranteed Data Delivery

Page 56: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

56

Business Service Layer – B2B Requirements

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

SAP

Adapter

Oracle

JDBCAdapter

AdapterFTP SMTP TCP/IP FTP FTP HTTP/SOAP

EDIProprietary

FormatSWIFT FIX XML Table CSV

Data

Transformation

Data

Translation

Data

Enrichment

Data

Validation

Queue Queue Topics Topics Topics Guaranteed Data Delivery

AuthenticationPartner

Management

Message

TrackingAuthorizationEncryption

Certificate

Management

Page 57: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

57

Components of Business Service Layer

L/C

Check

P/RP/O

Product

Inland

Booking

Vessel

Booking

Distribute

Docus

Custom

Clearing

Billing

Service

Goods

Service

Order

ServicePurchasing

SAP

Adapter

Oracle

JDBCAdapter

AdapterFTP SMTP TCP/IP FTP FTP HTTP/SOAP

EDIProprietary

Format SWIFT FIX XML Table CSVData

Transformation

Data

Translation

Data

Enrichment

Data

Validation

Queue Queue Topics Topics Topics Guaranteed Data Delivery

AuthenticationPartner

Management

Message

TrackingAuthorizationEncryption

Certificate

Management

Customer

Bank

Manufacturer

(Mail)System1

Shipping

LineBank

Custom

(WebServices)

System2

(Legacy)

System3

(Legacy)SAP Databases

Page 58: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

58

GlassFishESB, JMS Message Queue, Identity ManagementGlassFishESB, JMS Message Queue, Identity Management

OpenSource SOA

L/C

Check

P/RP/O

Product

Inland

Booking

Vessel

Booking

Distribute

Docus

Custom

Clearing

Billing

service

Goods

Service

Payment

Order

servicePurchasing

Customer

BankManufacturer System1

Shipping

LineBank Custom System2 System3 SAP Databases

Page 59: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

59

Addition of Future Systems

Customer

BankManufacturer System1

Shipping

LineBank

Doc

Management

Future

System

Future

System

Future

System

Future

System

L/C

CheckProduct Accounting Booking

Doc

Retrieval

Future

ServiceBilling

Future

Service

Future

Service

Future

Service

Page 60: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

60

ESB Products

• GlassFish ESB (OpenESB)• Java CAPS ESB• IBM WebSphere

• Oracle Fusion Middleware• Microsoft Biztalk• Apache Service Mix

Page 61: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

ESB (Forrester Wave; 2009)

Page 62: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

62

What is it?

Business Processes ManagementThe concept of Business Process Management [BPM] has its roots in

Operation Transformation and enables flexible design deployment, monitoring and tracking, process focus and efficiency.

Page 63: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

63

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Business Process Management (BPEL2.0) ‏

BPM Standards : WS4BPEL 2.0

Page 64: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

64

BPEL

• Business Process Execution Language

• Based on XML• IBM, BEA and Microsoft developed the first

version in 2002• BPEL 2.0 is latest version

Page 65: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

65

BPEL Editor

Page 66: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

66

BPEL Designer Tools

• IDE can be used to write BPEL or BPMN

• Examples:– NetBeans 6.1/6.5– Eclipse– Oracle Jdeveloper 10g

– IBM WebSphere Studio

Page 67: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

67

BPEL Server

• Provides a run time environment for executing BPEL

• Examples– GlassFishESB (via BPEL SE)

– Oracle BPEL Process Manager– Microosoft Biztalk– Sun Java CAPS– IBM WebSphere Business Integration Server – Active BPEL Engine

– Apache Agila

Page 68: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

68

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Business Process Management (cont.)‏

Page 69: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

69

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Business Process Monitoring

Business Process Monitoring

Page 70: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

70

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Open Source SOA

NetBeans (BPEL Designer); GlassFishESB (BPEL Server)

Page 71: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

71

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

User Interface and Single Window View

Business Process Monitoring

User Interface + Single Window View

Page 72: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

72

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

User Interface and Single Window View (cont.)‏

Business Process Monitoring

AccountsManagement

OrderProcessing

FieldService

SchedulingPersonalized

ServiceManage

ExceptionOrders

SubmitChangeOrder

Page 73: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

73

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

OpenSource SOA

Business Process Monitoring

NetBeans (Visual JSF Prog), GlassFish, LifeRay Portal

Page 74: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

74

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Key Performance Indicators (KPI)‏

Business Process Monitoring

AccountsManagement

OrderProcessing

FieldService

SchedulingPersonalized

ServiceManage

ExceptionOrders

SubmitChangeOrder

Performance Measurement (KPI) ‏

Page 75: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

75

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

Key Performance Indicators (KPI) (cont.)‏

Business Process Monitoring

AccountsManagement

OrderProcessing

FieldService

SchedulingPersonalized

ServiceManage

ExceptionOrders

SubmitChangeOrder

Page 76: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

76

Customer

BankManufacturer System1

Shipping

LineBank

Courier

CompanySystem2 System3 SAP Databases

L/C

CheckProduct Accounting Booking

Distribute

Docus

Custom

ClearingBilling Payment Order Purchasing

OpenSource SOA

Business Process Monitoring

AccountsManagement

OrderProcessing

FieldService

SchedulingPersonalized

ServiceManage

ExceptionOrders

SubmitChangeOrder

NetBeans (iReport, JasperReport)

Page 77: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

77

Open Source SOA Framework

External/Internal Systems

Build Re-usable Services (ESB) – openESB (GlassFish)

Business Process Management (BPEL) NetBeans / BPEL SE (GlassFish)

User Interface + Single Window – NetBeans (Visual JSF), GlassFish, LifeRay

Performance Measurement (KPI) – Jasper Report / NetBeans

Page 78: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

78

Other OpenSource SOA

• ESB– JBoss ESB, Apache Service Mix 3.3

• BPEL DesignerTools, Servers– Eclipse, Active BPEL Engine,JBoss jBPM

• Web Server– Tomcat, JBoss

• Portal – JBoss Portal, Apache JetSpeed

Page 79: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

79

Disadvantages of Open Source SOA• Having spoken about the various open source alternatives to

implement SOA into an enterprise we must also gauge the various risks and disadvantages associated with the Open source approach. Here are a few of them:-

• Most open source software applications are not reliable

• No support exists for open source software

• No guarantee of updates

• Significant problems connected to intellectual property

Page 80: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

80

Resources

Some contents are borrowed from the presentation slides of Sang Shin, Java™ Technology Evangelist, Sun Microsystems, Inc.

Business Process Execution Language for Web Services, Matjaz B. Juric

Java SOA Cookbook, Eben Hewitt Service Oriented Architecture Field Guide for

Executives, Kyle Gabhart and Biphas Bhattacharaya

Page 81: Service Oriented Architecture (SOA) [1/5] : Introduction to SOA

81

Thank you

[email protected]

www.facebook.com/imcinstitute

www.imcinstitute.com