WA1571 Service Oriented Architecture for Architects (Oracle Edition) Training and Courseware Course Outline
|
|
1. SOA Fundamentals
|
|
- Objectives
- SOA in Context
- SOA Job Role Impact
- Service Oriented Architecture
- The SOA Umbrella
- SOA and Business Process Management
- BPM Value Add
- SOA Governance
- SOA Governance Model
- What s a Service?
- Example Services
- Service Actors
- SOA Motivation
- SOA s Goal
- The Value of Transitioning from Applications to Services
- Is this a New Concept?
- Service Orienting the Enterprise
- Service Characteristics
- About Services in SOA
- Contract-driven software
- Elements of a Service
- What is a Web Service?
- How Web Services Work
- Web Service Standards
- SOA Standards
- SOA Capabilities
- Service Oriented Thinking
- Summary
|
| |
2. 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
|
| |
3. 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
|
| |
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. 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
|
| |
6. 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
|
| |
7. 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
|
| |
8. SOA Service Life Cycle
|
|
- Objectives
- SOA Adoption
- Adoption Stages
- Managing Services
- SOA Service Life Cycle Overview
- SOA s Circle of Life
- Discovery Phase
- Analysis and Design Phase
- Implementation Phase
- Deployment Phase
- Monitor Phase
- Retirement Phase
- Summary
|
| |
9. 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
|
| |
10. 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
- Example: Requirement for A Supply Chain Management Application
- Identified Use Cases or Business Processes
- UC1: Purchase Goods Use Case
- UC1: Purchase Goods Use Case
- Modeling the Business Processes
- Use Case and Business Process
- Trading Partner Design Pattern
- The UML Alternative
- Best Practices
- 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
- Specifying the service interface
- Produce Service Specification
- Functional Areas of the Business (a.k.a. Subsystems)
- Services Belonging To These Functional Areas
- Functionalities Belonging To These Services (User s Standpoint)
- Documenting Service Hierarchy
- Specification Artifacts
- Retailer Service
- Describing the service
- Example of the WSDL File for the Retailer Service
- Part of the Schema File for the submitOrder Operation
- 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
- Retailer System: Identifying System Level Use Cases
- Finding Classes and Relationships from Use Cases
- Finding Classes and Relationships from Use Cases
- Noun/Verb Analysis
- Example: Noun/Verb Analysis
- Refinement
- Classes Identified for the Retailer Subsystem
- Final List of Classes Identified for the Retail System
- The Class Diagram
- Class Notation in UML
- Class Diagram: The Retailer System
- Top-Down Summary
- Bottom-Up Development
- Bottom-Up Technology Choices
- Example: JCA-Based Service
- Example: JAX-RPC Service
- Data Mapping
- Interface Mapping
- Best Practices
- Summary
|
| |
13. 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
|
| |
14. Adapters
|
|
- Objectives
- Integrating Systems
- JCA Adapters
- Resource Adapters
- Advantages of Resource Adapters
- Custom Adapters
- Communication Modes
- Outbound Communication
- Inbound Communication
- Summary
|
| |
15. Information Management in SOA
|
|
- Objectives
- Introduction
- SOA and Enterprise Information Management
- Operational Data Replication Basics
- SOA and Data Basics
- Data Publishing Event
- Modeling Events
- Handling Events in a BPEL Process
- Data Mediation
- Data Format
- Generic Data Model
- Example Generic Data Model
- Mapping Data
- Loading Data
- Extract Transform Loading (ETL)
- ETL and SOA
- Data Federation
- Summary
|
| |
16. Messaging and Asynchronous Communication
|
|
- Introduction
- SOA and Asynchronous Behavior
- Basic Messaging Patterns
- Callback Style Communication in SOA
- Callback Example
- Implementing Callback
- Correlation Set
- Additional Uses of Callbacks
- Non-Blocking Call in SOA
- Parallel Activity
- One-way Non-Blocking Call
- Assured Delivery
- SOA Client Behavior
|
| |
17. Error Handling and Transaction
|
|
- Introduction
- Error Handling in a Service
- Designing Faults
- Error Handling in a Business Process
- Fault Handler
- Fault Handler Example
- Raising Faults in a Process
- Transaction in SOA
- Transaction and Short Lived Business Process
- Transaction and Long Lived Business Process
- Example: Long Running Process
- Transaction Context Propagation
- Example: Transaction Context Propagation
- Compensation
- Compensation in a Microflow
- Compensation in a Long Running Process
- Example Compensation
- Compensation Handler
- Compensation Guidelines
|
| |
18. Service Component Architecture (SCA)
|
|
- Objectives
- Need For a New Programming Model
- SCA Vendor Support
- Service Component Architecture
- SCA Basics
- Wiring Example
- Assembling Services
- Service Components
- Service Module Components
- Service Components
- References and Wires
- Imports and Exports
- Service Implementation Types
- Summary
|
| |
19. SOA Challenges and Risks & SOA Governance
|
|
- Objectives
- Chapter Design
- Challenges and Risks in Managing SOA
- Challenges and Risks in Managing SOA: Training
- Challenges and Risks in Managing SOA: Emerging Standards
- Challenges and Risks in Managing SOA: Immature Server Runtimes
- Challenges and Risks in Managing SOA: Newer Methodologies
- 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 Issues
- SOA Governance
- SOA Governance Model
- SOA Governance Model: Sample Structure
- SOA Project Roles
- Managing Risk
- SOA Governance Elements
- SOA Governance Processes
- SOA Governance Policies
- SOA Governance Metrics
- Some Best Practices
- Summary
|
| |
20. 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
|
| |
21. 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
|
| |
22. SOA Security Overview
|
|
- Objectives
- Traditional systems
- Loosely-coupled systems
- Risks of loosely-coupled services
- SOA Security Concerns
- Security Stack: Web services
- Security Stack: Other services
- Discussion Question
- Summary
|
| |
23. Security Patterns
|
|
- Objectives
- Service bus security
- Service bus security layers
- Application-managed security
- Security as a service
- Reverse Proxy
- ESB Gateway
- Discussion Question
- Summary
|
| |
24. Security Layering
|
|
- Objectives
- SOA Layers
- Security Layering
- Policy-driven Security
- PEP/PDP in Action
- Separation of concerns
- Loosely-coupled security layer
- SES/SDS in Action
- Layering and service granularity
- Security Service Granularity
- Process-centric Security
- Discussion Question
- Summary
|
| |
25. 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
|
| |
26. 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
|
| |
27. 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
|
| |
Appendix A. Glossary
|
|
- Glossary
- Glossary
- Glossary
- Glossary
|
| |
Appendix B. Service Oriented Modeling and Architecture (SOMA)
|
|
- Objectives
- Introduction
- SOMA
- The Rational Unified Process
- SOMA & RUP
- Summary
|
| |
Appendix C. WS BPEL 2.0 A Technical Overview
|
|
- WS BPEL 2.0
- Motivation
- History
- Basics
- BPEL Usage
- BPEL Constructs
- BPEL Constructs
- Activities
- BPEL Documents
- Imports
- Partner Links
- Example: a Buy-Sell Partnership
- Modeling Partnership in BPEL
- Variables
- Variable Properties
- Correlation Sets
- BPEL Activities
- Standard Attributes
- BPEL Basic Activities - invoke
- BPEL Basic Activities receive
- BPEL Basic Activities - assign
- BPEL Basic Activities - throw
- BPEL Basic Activities - rethrow
- BPEL Basic Activities - wait
- BPEL Basic Activities - empty
- BPEL Basic Activities - exit
- Structured Activities - sequence
- Structured Activities - if
- Structured Activities - while
- Structured Activities - repeatUntil
- Structured Activities - pick
- Structured Activities - flow
- Structured Activities - forEach
- BPEL Scopes
- BPEL Handlers
- Summary
|
| |
| |