SOA requires a new methodology for analysis and design. This class is designed for the Business Analysts (BA). The course contains comprehensive coverage of the theory of analysis and design for SOA applications.
The course focuses on theory and concepts and not specific tools. Students will get to try out each concept during the hands-on lab exercises. Currently, the tools used in the labs are as follows. Note: The labs can be provided using the tools of other major SOA vendors upon request:
Rational Software Architect - For some of the modeling work.
WebSphere Business Modeler - For process modeling, optimization.
WebSphere Integration Developer - This tool is used for service identification and specification. Also, the final software solution is built here. Students do not have to do any coding. They simply observe the final solution in action.
You Will Learn How To:
After taking this class, students will be able to confidently start working on a SOA projects. In the beginning of any project, Business Analysts play a key role. It is important that their understanding of SOA modeling and analysis is very clear. This way, they can design a solution that completely solves the problems at hand in a robust manner.
Course Prerequisites
Knowledge of what SOA is and its benefits. To this end, WA1405 Introduction to SOA is highly recommended.
Who Should Attend?
Business Analysts and Architects who analyze and model applications should take this course.
Course Outline
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 & 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
When Do I Need a Service?
About Services in SOA
Contract-Driven Software
SOA Standards
Summary
2. 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
3. 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
4. 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
5. Introduction to Business Process Management
Objectives
Business Process Management (BPM)
What is a Business Process?
Further Qualifying BPM
When and Why Conduct BPM?
Key Roles and Responsibilities
BPM Framework
Framework Foundation
Framework Phases
Relationship Between SOA and BPM
Summary
6. Introduction to Process Modeling
Objectives
What is a Business Process?
Components of a Business Process
Business Process Management (BPM)
Business Process Modeling
SOA and Business Process
What s a Service?
Becoming Process Oriented
Why Become Process Oriented?
Process Maturity
Key Tasks in Process Modeling
Roles and Responsibilities
Standards Used in Process Modeling
Summary
7. Mapping a Process Using BPMN
Objectives
What is BPMN?
BPMN and BPEL
Basic Structure of a Process
Using Subprocess
The Start Event
Normal End Events
Abnormal End Events
Intermediate Events
Process State Management
Gateways
Exclusive Condition
Exclusive Condition Examples
Inclusive Condition
Parallel Execution
Event Choice
Merging Branches
Merging Examples
Doing Things in a Loop
Example Loop
Modeling Roles and Responsibilities
Using Swim Lanes
Modeling B2B Interaction
Trading Partner Design Pattern
Modeling B2B Interaction in BPMN
Black Box White Box Modeling
Summary
8. The Preparation Phase
Objectives
Understand the Organization
Organization Model
Key Business Processes
Preparing for a Project
Identify the Stakeholders
Identify the Processes to Model
Identify the Needs and Motivation Behind the Project
Define Project Goals
Define Process Scope
Create a Project Plan
Selecting a Modeling Tool
Summary
9. Modeling the As-is Process
Objectives
Introduction
Conduct Understanding Workshop
How Much Details?
Gather the Process Metrics
What Metrics to Gather?
Business Process Use Cases
Return Handling Use Case
Information Modeling
Business Item
Identify Quick Wins
Deliverable Check List
Risks of this Phase
Where to Go From Here?
Summary
10. Modeling the Optimized Processes
Objectives
Process Optimization Basics
Role of Modeling in Optimization
Common Optimization Goals
Common Solutions
Model the New Processes
Simulation
Process Token
Modeling Resource Constraints
Open and Close Ended Analysis
Preparing for Simulation
Running Simulation
Analyze Simulation Results
Communicate with BPM Managers
Deliverables of this Phase
Risks of this 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
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. 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