Architecting SOA Using Enterprise Service Bus (ESB) Mule Edition Course

Course Code: IN 1024
Course Abstract:

This course teaches the methodology for solving enterprise integration problems using SOA. The course uses Mule as the software platform. Various ESB patterns, such as, routing, data mapping and protocol translation, are discussed. You will learn how to implement these patterns using Mule.

The course also gets into more advanced areas of SOA, such as messaging, transaction management and error handling. After taking the class, participants will be able to architect a solution following the SOA approach and implement the solution using Mule.

How is this course different from other Mule programming courses? The other courses teach you the details of Mule programming without teaching you the SOA methodology. This course will show you how to gather requirements, analyze them, identify services, implement services and finally compose the services from Mule. The course also teaches you how to implement advanced SOA patterns using Mule. This gives you a right balance of methodology and tool specific details.

Audience: This course is designed for individuals who are IT architects, senior developers.
Duration: 4 days
Learning Outcomes:

Upon completion of this course, the participant will be able to:

> Apply various principles in hands on exercises.  This will make the concepts come alive
> Devise a comprehensive architecture for a new SOA based solution

Course Topics:

SOA Fundamentals
Objectives
Defining SOA
SOA as an Alignment Strategy
The SOA Umbrella
What s a Service?
Service Actors
Serving up SOA
Business Process Management
BPM & Workflow
SOA Governance
SOA Governance Model
SOA Job Role Impact
Services Please!
SOA Re-Organization
What makes a good design?
Is this a New Concept?
Service Orienting the Enterprise
Service Oriented Thinking
SOA is Perfect NOT!
Service Characteristics
About Services in SOA
Contract-driven software
SOA Standards
Summary

SOA Case Study
Objectives
What is a Case Study?
Case Study Background
Additional Background
The Problem Statement
Status Quo Issues
Status Quo Issues (continued)
Opportunities
How Can SOA Help?
Example Solution Snippet
Summary

Introduction to Web Services
Objectives
A Conceptual Look at Services
Defining Services
Service Communication Analogy
Three Key Service Questions
Connecting the Dots
SOA Runtime Implementation
What is a Web Service?
Enterprise Assets as Services
Typical Development Workflow
Advantages of Web Services
Web Service Business Models
Example: Internal System Integration
Example: Business Process Externalization
Binding via SOAP
SOAP in Protocol Stack
SOAP Structure
SOAP Message Architecture
Applying SOAP
Interface via WSDL
WSDL Structure
Applying WSDL
Locating a Service
UDDI Overview
UDDI Terminology
UDDI Structure
Applying UDDI
WS-I Overview
WS-I Deliverables
Summary
Layers of Services
Objectives
What is Layering?
SOA Layers
Common Layers
Auxiliary Layers
Digesting the Layers
The Application Service Layer
The Business Service Layer
The Orchestration Layer
Layering Rules of Thumb
SOA User Interface
Portal Site's Context Awareness
Web 2.0 Data Aggregation
Summary

SOA Value Proposition
Objectives
The SOA Value Proposition
Reducing integration expense
Integration costs illustration
Ripple effect of changes
The value of SOA layering
SOA reduces integration costs
Increasing asset reuse
Asset reuse illustration
Increasing business agility
Business Agility Illustration
Traditional EAI Approach
Problems with Traditional EAI Approach
Change Flow Using Legacy Approach
SOA Agility
Build the Services
Build the Process
We Can Easily Change the Process
Reducing business risk
Risk reduction illustration
SOA Eases Compliance Risk
Other Advantages
Business Advantages
Hasn’t this been said before?
Hasn’t this been said before?
ROI Quantification Hurdles
Real World SOA Example 1
Real World SOA Example 2
Real World SOA Example 3
Real World SOA Example 4
Summary

Enterprise Service Bus (ESB)
Objectives
SOA and the ESB Pattern
Loose Coupling
Service Invocation
Business Process
Data Integration
Enterprise Service Bus (ESB)
Legacy System Integration
Unsupported Protocol
The Role of ESB in SOA
ESB: Software Artifacts
ESB - Software Artifacts
Business Process
Business Process: Example
Minimum ESB Capabilities
Minimum ESB Capabilities: Integration
Minimum ESB Capabilities: Communication
Minimum ESB Capabilities: Service Interaction
Minimum ESB Capabilities: Management
Security and ESB
Summary

Introduction to Service Oriented Analysis & Design (SOAD)
Objectives
Introduction to SOAD
Applying OOAD Principles
Abstraction
Abstraction in SOAD
Encapsulation
Encapsulation in SOAD
Modularity
Modularity in SOAD
Hierarchy
Hierarchy in SOAD
Why OOAD Is Not Enough
Granularity
The Need for Loose Coupling
The SOAD Methodology
The SOAD Methodology Steps
Stage 1: Requirements Gathering & Process Modeling
Stage 2: Service Identification
Stage 3: Service Implementation
Stage 4: Service Composition
SOAD Stages and SOA Lifecycle
Summary

SOA Service Life Cycle
Objectives
SOA Adoption
Adoption Stages
Managing Services
SOA Service Life Cycle Overview
SOA s Circle of Life
Discovery Phase
Analysis & Design Phase
Implementation Phase
Deployment Phase
Monitor Phase
Retirement Phase
Summary

Stage 1: Business Modeling and Use Cases
Objectives
Stages of SOAD
Where are We in SOA Lifecycle?
Stage 1: Business Process Modeling
Basic Concepts
SOA and Business Process Model
Before You Get Started
Process Modeling Steps
Business Process Use Cases
Return Handling Use Case
Modeling the Business Processes
Use Case and Business Process
The Return Handling Process Model
Return Handling Process Model
Trading Partner Design Pattern
The UML Alternative
Best Practices
Summary

XML Schema Basics
Objectives
What is an XML Schema?
Role of XML Schema in SOA
Creating a Schema File
Defining a Simple Element
Defining a Complex Element
Defining Element Attributes
Referring to an Element From Another Element
Defining Abstract Data Types
Adding Restrictions
Referring to a Schema from an XML Document
Validating the XML Against the Schema
Summary

Web services Description Language (WSDL)
Objectives
WSDL Overview
WSDL Document Tags
WSDL Namespaces
Sample WSDL Document Structure
<definitions>
<import>
<types>
<message>
<portType>
<operation>
One-way <operation>
Request-Response <operation>
Solicit-Response <operation>
Notification <operation>
Modeling Simple Operation
Modeling Complex Operation
Modeling Complex Message
<binding>
More on <binding>
<binding> Syntax
SOAP Binding Example
<service> and <port>
More on <port>
WSDL SOAP Binding Extensions
soap:binding
soap:operation
RPC or Document Style?
WSDL API for Java
Summary

Stage 2: Service Identification
Objectives
Stages of SOAD
Where are We in the SOA Lifecycle?
Stage 2: Service Identification
The Service Model
Developing a service model
Service Model Example #1
Service Model Example #2
Service Model Example #3
Service model granularity
SOAD Stage 2 Process
Identifying Services
Service Identification Check
Specify the Service Interface
Specify The Process Interface
Identify Services from UC001 Return Handling
Identify Services from UC001 Return Handling
Identify Services from UC001 Return Handling (continued)
Service Contract Template
Service Contract Template Part 2
Service Contract Template Part 3
Service Design Best Practices
Summary

Simple Object Access Protocol (SOAP)
Objectives
SOAP Overview
SOAP in Protocol Stack
SOAP Components
SOAP HTTP Request Example
SOAP HTTP Response Example
Message Envelope
The Header Element
Header Attributes
SOAP Body
SOAP Fault
Communication Style
RPC/Encoded Style
RPC/Literal Style
Enabling RPC Styles
Document/Literal Style
Document/Literal Wrapped Style
Details of the Wrapped Style
Enabling Document Literal Style
Summary

Stage 3: Service Design and Implementation
Objectives
Stages of SOAD
Where are We in the SOA Lifecycle?
Introduction
How Is a Service Developed?
Top Down Development
Web Service Implementation Choices
Apply OOAD in New Service Development
Top-Down Summary
Bottom-Up Development
Bottom-Up Technology Choices (Java)
Example: JCA-Based Service
Example: JAX-WS Service
Bottom-Up Technology Choices (.NET)
Example: ASMX Service
Example: Adapter-Based Service
Data Mapping
Interface Mapping
Implementing the Services for UC001 Return Handling
Best Practices
Summary

Stage 4: Service Composition
Objectives
Stages of SOAD
Where are We in the SOA Lifecycle?
Composition options
Hand coded high level services
Mediation flow in ESB
Business Processes
Mediation flow details
Content based routing
Data mapping
Protocol translation
Service composition
Summary 

Adapters
Objectives
What is an Adapter?
Adapter Example
The Adapter Pattern
Resource Adapters
Custom Adapters
Adapter Based Services
Advantages of Adapter Based Services
Generating Adapter Based Services
Communication Modes
Outbound Communication
Inbound Communication
Using adapters from a mediation flow
File
Database
Summary

Information Management in SOA
Objectives
Introduction
SOA and Enterprise Information Management
Operational Data Replication
Operational Data Challenges
SOA and Data Basics
More on Operational Data
Data Publishing Event
Modeling Events
Data Mediation
Data Format
Generic Data Model
Example Generic Data Model
Mapping Data
Loading Data
Extract Transform Load (ETL)
ETL and SOA
Data Federation
SOA Data Layering
Data Federation vs. ETL
Summary

SOA Challenges and Risks
Objectives
SOA Challenges and Risks
Emerging Standards
Emerging Standards (cont’d)
Selecting Tools and Infrastructure
Service Selection and Creation
Service Management
Portfolio Management
Paradigm Shifting
Communication
Policies and Compliance
Project Management
Training and Re-skilling
Governance and Risk Mitigation
Summary

Governance Fundamentals
Objectives
The Strategic Role of IT
Governing IT
IT Infrastructure Library (ITIL)
ITIL: Managing IT Activities
ICT Infrastructure Management (ICTIM)
ICTIM Processes
Control Objectives for Information and related Technology (COBIT)
Need for SOA Governance
SOA Governance
SOA Governance Adoption
Key Governance Relationships
SOA Governance Elements
SOA Governance Procedures
Recommended Procedures
More Recommended Procedure
SOA Governance Policies
Enterprise Policies
Business Policies
Service Policies
SOA Governance Metrics
More SOA Governance Metrics
Some Best Practices
Relevant Standards Work
OASIS SOA-RM
Reference Model in Context
OASIS SOA-RA
Summary

Overview of Service Registries
Objectives
Services Registry
Why Do We Need a Service Registry?
Main Activities Done Using a Registry
Publish
Discovery
Dynamic Discovery
Management
Enforce Governance Lifecycle
SOA Registry Products
Summary

Messaging and Asynchronous Communication
Why do we need messaging?
Using the messaging transport from a mediation flow
WS-Addressing
Asynchronous invocation of a service
Publish-subscribe

Error Handling and Transaction
Introduction
Error Handling in a Service
Designing Faults
Error Handling in a mediation flow
Recovering a failed mediation flow
Transaction management in a mediation flow

Security Patterns
What are the key challenges in SOA security and how they are resolved.
Various patterns are discussed:
Authentication
Authorization
Confidentiality
Non-repudiation
Inter-organization authentication
Single sign on
Federated security   

Introduction to SOA Testing
Introduction
The SOA Components to Test
SOA Testing Challenges
Layered Component Testing
Phased Testing
Parts of a Test Framework
Unit Testing a Web Service
Verification Scenarios
Unit Testing Data Maps
Unit Testing Business Process
Setting Up a Service Integration Test System
Setting Up a Process Integration Test System
Non-Functional Testing
Performance Testing
Security Testing
Interoperability Testing
Process State Persistence Testing
Process Versioning Testing

SOA Patterns
Objectives
Patterns: Introduction
SOA Patterns
Messaging Channel Patterns
Messaging Channel Patterns for SOA
Messaging Channel Patterns
Messaging Channel Patterns for SOA
Messaging Channel Patterns
Message Type Pattern
Deferred Response in SOA
Message Routing Patterns
Message Routing Patterns in SOA
Message Transformation Patterns
Message Transformation Patterns in SOA
Summary

SOA Antipatterns
Objectives
What are Antipatterns?
Technology-driven SOA Adoption
So What's New?
SOA Is the Cure All
Web Service is SOA
The Silo Approach
Fine Grained Service
Point-to-Point Communication
Stateful Services
Summary

Prerequisites: Previous experience with software architecture is recommended. Some knowledge of Web Services and Object Oriented Analysis and Design is recommended.
Note: All fields are required
At the present time we do not offer training for individuals or groups less then 6 individuals. We apologize for any inconvenience.


We Value Your Privacy!

Ready to get started or in need of more information? Contact us today.

Go To Blog Virtual Learning