PacktLib: SOA Cookbook

SOA Cookbook


About the Author

About the Reviewers


SOA Survival Guide

SOA from 184 Billion Feet

The Model Stack

The Secret They Couldn't Hide—SOA is Process-Oriented


Drawing SOA Architecture

The 4+1 Structure of an SOA Architecture Document

Using ARIS Methodology to Organize the Logical View

Example—Competitive Enrollment

Data and Service Interfaces for Retailer Enrollment

BPMN Processes for Retailer Enrollment

Service Composition of Retailer Enrollment Using SCA

On Modeling Tools


Separating BPM and SOA Processes

The Model Stack

Design Tips on Separating BPM and SOA

Example—Process for Handling Credit Card Disputes

Disputes on the Model Stack

BPM-Oriented Disputes with TIBCO

SOA-Oriented Disputes with BEA

About the Examples


Modeling Orchestration and Choreography

Choreography versus Orchestration

Examples—Energy Enrollment, Email Bank Transfer

Modeling Choreography in BPMN

The Invisible Hub in BPEL

Choreography in WS-CDL with Pi4SOA

Tips on Modeling Orchestration

About the Examples


Short and Long-Running Processes

Process Duration—the Long and Short of It

How to Keep Long-Running State

Combining Short-Running Processes with State in TIBCO's BusinessWorks

Fast Short-Running BPEL

About the Examples


Flat Form

Our Use Case: Credit Card Disputes

Disputes in BPEL—Naïve Form

Disputes in BPEL—Flat State Machine

Disputes in BPEL: Flat Event Loop

Disputes in BPEL: Flat Control Flow

Flat Concurrency

Advantages and Disadvantages of Flat Form

About the Examples


Dynamic Processes and the Change Problem

The Change Problem

Process-Oriented Methods

Rule-Oriented Methods

Goal-Oriented Methods

About the Examples


Simulating SOA

Simulation, and Why it Suits SOA

The Ideal SOA Simulator

BPEL Simulation Examples

Interpreting the Results of a Simulation

About the Examples


Measuring SOA Complexity

Applying McCabe's Formula for BPEL and TIBCO BusinessWorks

A Better Formula for BPEL

About the Examples

Further Reading