Topics
 

The course covers the following key areas of SOA:

  • What is SOA and why we need this approach.
  • Enterprise Service Bus (ESB)).
  • How Enterprise Application Integration (EAI) is achieved using SOA.
  • How to capture requirements for a SOA project.
  • How to perform analysis and design.
  • How to implement services and business processes.
  • Technical details of XML schema, SOAP and WSDL.
  • How to test SOA applications.
What you will learn
 

Students will get to actually apply various principles in hands on exercises that explore the full range of service oriented solutions. This will make the concepts come alive.

After taking the course, a developer will gain enough knowledge to begin constructing service oriented solutions.

Audience
 

Team leads, software engineers, middleware developers, and application development personnel.

Prerequisites
 

Java programming. Beginner level knowledge of J2EE and XML.

Duration
 

Five days.

Lab Setup Guide

Outline for SOA Immersion Bootcamp (Oracle Edition) Training

1. SOA Fundamentals

 
  • Objectives
  • Defining Service Oriented Architecture (SOA)
  • Putting SOA in Context
  • SOA As an Alignment Strategy
  • The SOA Umbrella
  • What s a Service?
  • Service Actors
  • Serving Up SOA
  • Business Process Management
  • BPM & SOA
  • Application Integration
  • SOA Governance
  • Life Cycle Stages for Governance
  • 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
  • When Do I Need a Service?
  • About Services in SOA
  • Contract-Driven Software
  • SOA Standards
  • Summary
 

2. 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
 

3. 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
 

4. Architectural Topology for SOA

 
  • Objectives
  • Vendor Confusion
  • Service Intermediaries
  • Intermediary Options
  • Intermediary Service
  • Centralized Bus
  • Logical Centralized Bus
  • De-centralized Framework
  • Policy Enforcement at Endpoints
  • Comparing the Approaches
  • Summary
 

5. Layers of Services

 
  • Objectives
  • What Is Layering?
  • SOA Layers
  • Layering Illustration
  • Common Layers
  • Auxiliary Layers
  • Digesting the Layers
  • The Application Service Layer
  • The Business Service Layer
  • The Orchestration Layer
  • Layering Rules of Thumb
  • Scope of a Service
  • SOA User Interface
  • Portal Site's Context Awareness
  • Web 2.0 Data Aggregation
  • Summary
 

6. 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
  • SOA Economics/ROI
  • Asset Reuse Illustration
  • Service Reuse v. Object Reuse
  • 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?
  • ROI Quantification Hurdles
  • Real World SOA Example 1
  • Real World SOA Example 2
  • Real World SOA Example 3
  • Real World SOA Example 4
  • Summary
 

7. Introduction to Service Oriented Analysis & Design (SOAD)

 
  • Objectives
  • Introduction to SOAD
  • Applying OOAD Principles
  • Encapsulation
  • Encapsulation in SOAD
  • Inheritance
  • Inheritance in SOAD
  • Polymorphism
  • Polymorphism 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: Process Implementation
  • SOAD Stages and SOA Lifecycle
  • Summary
 

8. 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
 

9. SOA Infrastructure and Tools

 
  • SOA Infrastructure and Tools
  • Network Appliances
  • Enterprise Service Bus
  • Service Container
  • Business Rules Engine
  • Business Activity Monitoring
  • Service & Policy Management
  • Business Process Engine
  • Service Registry
  • Service Repository
  • Development Tools
  • Tool Combinations
  • What is the minimum?
 

10. 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
 

11. 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 (continued)
  • Service Contract Template
  • Service Contract Template Part 2
  • Service Contract Template Part 3
  • Service Design Best Practices
  • Summary
 

12. XML Programming

 
  • Objectives
  • XML Overview
  • Data and Document Structure
  • An Employee Document
  • Tags
  • First XML Document
  • Markup Languages
  • What is XML ?
  • Why XML?
  • An Example of XML Document
  • Well-Formed v. Valid XML Document
  • Enforcing Validity: DTDs
  • Presentation Style
  • Sections of an XML Document
  • XML Elements
  • Nesting and Hierarchy of XML Elements
  • Tag Attributes
  • Naming Rules
  • Namespaces
  • Using Namespaces
  • Java API for XML
  • The XML Example
  • Example SAX Handler
  • Example: Begin Parsing
  • Once Again with Namespace
  • Using DOM to Parse
  • With Namespace Enabled
  • Example: Build DOM Document
  • Example: Save DOM Document in a File
  • Persisting XML
  • Summary
 

13. XML Schema Basics

 
  • Objectives
  • What is an XML Schema?
  • Role of XML Schema in SOA
  • SOA and Non-XML Data
  • 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
 

14. 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
 

15. 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
 

16. 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 Services Programming Model
  • Apply OOAD in New Service Development
  • 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
  • Service Abstraction
  • Interface Mapping
  • Implementing the Services for UC001 Return Handling
  • Best Practices
  • Summary
 

17. Web Services Software Development Methodology

 
  • Objectives
  • Need for a Software Methodology in Web Services
  • The Software Lifecycle
  • Software Lifecycle
  • Service Provider
  • Provider: Green Field
  • Provider: Top-down
  • Provider: Bottom-up
  • Provider: Meet in the Middle
  • The Service Requester
  • Summary
 

18. Stage 4: Business Process Implementation

 
  • Objectives
  • Stages of SOAD
  • Where are We in the SOA Lifecycle?
  • Basics
  • Business Process Diagram
  • Process Automation Challenges
  • More Challenges
  • BPEL
  • Variables
  • Partnership
  • Example: A Buy-Sell Partnership
  • Modeling Partnership in BPEL
  • Simple Activities
  • Invoke Activity
  • Structured Activities
  • Process Development Phases
  • Phase II Process Definition
  • Phase III Process Compilation
  • Phase IV Process Deployment
  • Phase V Process Execution
  • What Is a Good Process Design?
  • Follow Integration Patterns
  • Example: A Simple Process
  • Additional Process Design Considerations
  • Summary
 

19. Applying Traditional Security to SOA

 
  • Objectives
  • Public Key Infrastructure (PKI)
  • Digital Signature
  • Digital Signature Process
  • Certificates
  • Authentication
  • Basic HTTP Authentication
  • Secure Socket Layer (SSL)
  • Basic Authentication over HTTPS
  • Securing Non-HTTP Traffic
  • Summary
 

20. WS-Security Details

 
  • Objectives
  • SOA Security Model
  • SOA Security Policies
  • Transport Level Security Policy
  • Message Level Security Policy
  • Data Level Security Policy
  • Overview of Web Services Security
  • Securing XML Data
  • XML Digital Signatures
  • XML Encryption
  • WS-Security Tokens
  • WS-Security Considerations
  • Putting it all together
  • Phase 1: The Service-side
  • Phase 1: Build a secure service
  • Phase 2: The Client
  • Phase 2: Build a secure client
  • Phase 3: Production
  • Audit Tracking
  • Identity Assertion Using SAML
  • SAML SOAP Example
  • Summary
 

21. Introduction to SOA Testing

 
  • Objectives
  • Introduction
  • The SOA Components to Test
  • Parts of a Test Framework
  • Layered Component Testing
  • Testing the SOA Layers
  • Phased Testing
  • SOA Testing Challenges 1/3
  • SOA Testing Challenges 2/3
  • SOA Testing Challenges 3/3
  • SOA Testing Opportunities
  • Summary
 

22. Unit Testing SOA Components

 
  • Objectives
  • Introduction
  • Verification Scenarios
  • Unit Testing a Web Service
  • Other Types of Services
  • Unit Testing Guidance
  • Unit Testing SOA Components
  • More Details: Testing Data Maps
  • Data Map Test Guidance
  • More Details: Business Process
  • Unit Testing Business Process
  • Business Process Test Guidance
  • Human Workflow
  • Unit Test Human Interface
  • Human Interface Test Guidance
  • White Box Testing
  • Summary
 

23. Integration Test

 
  • Objectives
  • What is Integration Testing?
  • Types of Integration Tests
  • The Governance Aspect
  • Component Ownership 1/2
  • Component Ownership 2/2
  • Integration Testing Strategies
  • Incremental Strategies
  • Top-down Integration
  • Bottom-up Integration
  • Umbrella / Critical Path Integration
  • Setting Up a Service Integration Test System
  • Setting Up a Process Integration Test System
  • Creating a Script To Test a Service
  • Running a Test Case for a Service
  • Creating a Business Process Test Script
  • Running a Test Case for a Process
  • Summary
 

24. Non-Functional Testing

 
  • Introduction
  • Performance Testing
  • Security Testing
  • Web Service Attacks 1/4
  • Web Service Attacks 2/4
  • Web Service Attacks 3/4
  • Web Service Attacks 4/4
  • Interoperability Testing
  • WS-Interoperability
  • Interoperability Testing a Service
  • Interoperability Testing a Business Process
  • Common Interoperability Issues
  • Process State Persistence Testing
  • Process Versioning Testing
  • Summary
 

25. SOA Challenges and Risks

 
  • Objectives
  • SOA Challenges and Risks
  • Emerging Standards
  • Emerging Standards (contd)
  • 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
 

26. SOA Patterns

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

27. 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
 

28. Scenario

 
  • Objectives
 

Appendix A. Introduction to UDDI

 
  • Objectives
  • UDDI Overview
  • UDDI in Web Services Architecture
  • UDDI
  • Businesses and Services in UDDI
  • Static and Dynamic Web Services
  • UDDI Registry Structure
  • UDDI Registry Structure -tModel
  • UDDI Registry Structure
  • UDDI Interactions
  • UDDI in WebSphere
  • Summary