Course Overview

SOA Analysis and Design is a four day in-depth SOA analysis and design training course geared for software architects and designers who need to understand what SOA is, the impact of SOA, what it means in terms of today's systems and architectures, and how to apply the concepts in designing distributed architectures. Geared for software architects and designers, this course explores what services and service-oriented architectures are and what best practices and design patterns to use in designing SOA-based applications. This course presents a strong perspective on services as an essential and important part of enterprise systems as well as how to identify, design, and develop of complex services using sound analysis and design techniques and best programming practices. The course presents a clear portrait of how a service orientation can fundamentally change the dynamics of how software is developed and "lives" within an enterprise.

Note: In order to provide the broadest range of courses and class dates for this class, this course may be taught by either Wintellect or one of our training Partners.

Key Learning Areas

  • Explain the business impact of SOA
  • Understand the history of services-oriented architecture and what design processes led up to SOA
  • Discuss the challenges to adopting SOA in the enterprise
  • Apply the concepts and principles of SOA to on-going and future projects
  • Understand the various web service standards available to support SOA
  • Explain how Enterprise Application Integration affects the reuse of existing applications
  • Relate what SOA means from architectural and development perspectives
  • Discuss business process analysis and its relation to BPEL
  • Understand the difference between OO analysis and design and SOA analysis and design
  • List the various roles involved in Service-oriented Analysis and Design (SOAD)
  • Perform SOA Analysis to identify useful and manageable services
  • Perform SOA Design to craft architectures that support the required data and communication dynamics for identified services
  • Understand the importance of business process modeling
  • List the advantages of web services as a distributed systems technology
  • Explain governance and how it applies to SOA and IT in general
  • Compare SOA best practices
  • Understand the responsibilities crucial to governance
  • Explain what an Enterprise Service Bus is and its relationship to SOA
  • Discuss ESB security and roles
  • Understand web service and their standards

Course Outline

Introduction to SOA

SOA Overview

  • Services and SOA Defined
  • Organizational Framework
  • Technical Framework
  • What is new in SOA

SOA: the Business Proposition

  • Web services standards
  • ESBs
  • Leveraging business processes
  • Challenge to adoption
  • The SOAD Process

SOA: An Architectural Perspective

  • SOA Design Principles
  • RPC vs. REST
  • Web services, SOAP, and WSDL
  • Architectural Issues
  • SOA Maturity Model

SOA: A Development Perspective

  • The SOAD Process
  • Services, operations and data
  • Policies
  • W3C standards
  • Web services standards

SOA in Depth

Service-Oriented Architecture

  • Business Process-driven development
  • Transactions
  • Security
  • Business modeling
  • Integrating legacy applications
  • Governance

SOA Analysis and Design

Service-Oriented Analysis and Design Overview

  • Service Lifecycle Phases
  • Service Identification
  • Service Specification
  • Service Realization
  • SOA Reference Architecture
  • Challenge of Governance

Service Identification

  • Top Down: Domain Decomposition
  • Business Use Case: Order Processing
  • Bottom Up: Asset Analysis
  • Cross-Cutting: Goal-Service Modeling

Modeling Business Processes

  • BPMN Fundamentals
  • BPEL Overview
  • Comparing BPEL and BPMN
  • Service Identification

Service Specification

  • Specification Supports Design of Service Details
  • Service Analysis
  • Elimination Criteria
  • Service Specification
  • Component Analysis

Service Realization

  • SOA Reference Architecture
  • Solving Problems Using Layers
  • Allocation
  • Asset Feasibility
  • Service Realization Decisions

Making SOA Work

Common Framework: Infrastructure

  • ESB Overview
  • The Role of ESB in a SOA
  • Typical Service Bus Functionality
  • ESB Issues

Common Framework: Governance

  • Implementing IT Governance
  • Service Architecture
  • Technology and Product Selection
  • Development
  • QA/Security/Regulatory Compliance
  • Consumer/Provider Management
  • Governance in Service Lifecycle

SOA Best Practices

  • Planning
  • Standardizing
  • Service Modeling Guidelines
  • Service Design Guidelines
  • Managing
  • Using Patterns
  • Avoiding Anti-Patterns

SOA Patterns and Anti-Patterns Overview

SOA Patterns and Anti-Patterns

  • Web Service Broker
  • Active Service
  • Service Activator
  • Service Locator
  • Dependency Injection
  • Service Locator vs. Dependency Injection
  • Anti-Patterns

SOA Security Patterns

  • Authentication Enforcer
  • Authorization Enforcer
  • Intercepting Validator
  • Secure Base Action
  • Secure Logger
  • Secure Pipe
  • Secure Service Proxy
  • Intercepting Web Agent

Path to Useful Web Service

Web Services Overview       

  • Web Services Architecturally
  • Spec and Standard Evolution
  • Web Services Interoperability Organization
  • .NET Platform & .NET Web Services
  • Java and Web Services

XML, Namespaces, & Schema

  • XML Separates Structure, Content and Format
  • XML Namespaces
  • Namespaces Best Practices
  • W3C XML Schemas

Binding, Description, and Discovery

SOAP Overview

  • Anatomy of a SOAP Message
  • SOAP and HTTP
  • SOAP Messaging
  • Remote Procedure Calls
  • SOAP With Attachments

REST

  • REpresentational State Transfer
  • REST Characteristics
  • REST Elements
  • REST Architectural Principles
  • REST and HTTP
  • REST/HTTP: Representation-Oriented
  • REST Design Principles

WSDL Overview     

  • Describing Web Services
  • WSDL in Practice
  • WSDL/SOAP Namespaces
  • WSDL Anatomy

Discovery

  • Issues With Broadly Scoped Discovery
  • UDDI Registries
  • Tools That Support Discovery

Transactions

  • SOA's Challenge of Handling Transactions
  • WS-Transaction (WS-TX)
  • WS-Coordination
  • WS-AtomicTransaction
  • WS-BusinessActivity

SOA Security

XML Signature and Encryption

  • XML Challenges
  • XML Signature
  • XML Signature Usage
  • XML Encryption
  • XML Encryption Usage

WS-Security

  • Transport-Level Security
  • Message-Level Security
  • Web Services Security Roadmap
  • WS-Security Enables Interoperability
  • Networking Devices Usage

SOA Security

  • SOA Reference Architecture
  • Policy-driven Security
  • Authentication
  • Authorization and Other Requirements
  • Identity and Propagation
  • SAML

Who Benefits

Students who attend SOA Analysis and Design will leave the course armed with the required skills to design and lead the implementation of realistic SOA-based business application projects. This course provides coverage of advanced SOA concepts and practices for enterprise applications. In addition, there is an extensive review of topics such as Enterprise Service Bus (ESB), the Business Process Execution Language (BPEL), SOAP, Web Services Description Language (WSDL), and Web services.

Prerequisites

This an intermediate to advanced level SOA training course, designed for architects and analysts who need to identify, design, and lead the implementation of SOA projects. We will explore and apply the terminology, the specification, the processes and technologies specific to SOA.

Attendees should have an extensive working knowledge of developing enterprise applications. Designing and analysis working knowledge is also extremely beneficial.