Find Courses Here
Service Oriented Architecture (SOA) Immersion Bootcamp for Java Print E-mail
Course Length - 5 Days
 
Course Description

The chief goal of this class is to teach how to build a SOA application from ground up. It covers the full lifecycle of a SOA project - requirements gathering, design, implementation and testing.

If you are getting started with SOA development, this class offers a wonderful opportunity for your development team to get a concrete idea for how a SOA application is built.

The course consists of both pen and paper labs and hands-on labs using IBM WebSphere Integration Developer V6.0 to build, test and run SOA applications.

 

Course Prerequisites

Java programming. Beginner level knowledge of J2EE and XML.

 

Who Should Attend?

  • J2EE developers who are responsible for developing SOA based application integration solutions.
  • Architects who will like to get hands on practical experience developing a full SOA application from start to finish. For a more indepth SOA architecture related training, please use WA1471 Service Oriented Architecture (SOA) for Architects. 
 

Course Outline

1. SOA Fundamentals

  • Objectives
  • SOA in Context
  • Defining SOA
  • What makes a good design?
  • The SOA Umbrella
  • What s a Service?
  • Service Actors
  • Serving up SOA
  • SOA and Business Process Management
  • BPM Value Add
  • SOA Governance
  • SOA Governance Model
  • SOA Job Role Impact
  • SOA Value
  • Is this a New Concept?
  • Service Orienting the Enterprise
  • Service Oriented Thinking
  • SOA is Perfect
  • Service Characteristics
  • 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. 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

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

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
  • 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

7. 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: 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. Software Platform for SOA

  • Objectives
  • SOA Development Iteration
  • Types of Software Needed to Support SOA
  • Oracle SOA Suite
  • IBM Software Offering
  • IBM WebSphere Process Server
  • IBM IT Service Management (ITSM) Tools
  • TIBCO BusinessWorks
  • TIBCO SmartMapper
  • webMethods Fabric
  • webMethods: Enterprise Service Platform (ESP)
  • webMethods: Business Process Management (BPM)
  • webMethods: Business Activity Monitoring (BAM)
  • webMethods: Composite Application Development
  • WebLogic Integration
  • Microsoft BizTalk Server 2006
  • Windows Workflow Foundation (WF)
  • Summary

10. Introduction to WebSphere Integration Developer (WID) v6

  • Objectives
  • WebSphere Process Server v6
  • WebSphere Integration Developer (WID) v6
  • SCA Basics
  • Wiring Example
  • Key Features of WID
  • Perspectives, Views and Editors
  • Creating Artifacts
  • Unit Testing Artifacts
  • Summary

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

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

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

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

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

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

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

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

19. Stage 4: Business Process Implementation

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

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

21. SOA Security Standards

  • 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

22. Introduction to SOA Testing

  • Introduction
  • The SOA Components to Test
  • SOA Testing Challenges
  • Layered Component Testing
  • Testing the SOA Layers
  • Phased Testing
  • Parts of a Test Framework

23. Unit Testing SOA Components

  • Introduction
  • Unit Testing a Web Service
  • Other Types of Services
  • Verification Scenarios
  • 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

24. Integration Test

  • Introduction
  • Types of Integration Tests
  • The Governance Aspect
  • Component Ownership
  • 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

25. Non-Functional Testing

  • Introduction
  • Performance Testing
  • Security Testing
  • Common Web Service Attacks
  • Interoperability Testing
  • WS-Interoperability
  • Interoperability Testing a Service
  • Interoperability Testing a Business Process
  • .NET Interoperability
  • Process State Persistence Testing
  • Process Versioning Testing

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

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

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

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