Service-Oriented Architecture (SOA) expresses an architectural concept which defines the use of services to meet the requirements of software users. An SOA environment will consist of nodes on a network which make resources available to other participants in the network as independent services (for instance Web Service) which are accessed in a standardised way.
Due to the highly interoperable nature of SOA services, technologies such as Java and .NET can co-exist. Software components tend to be reusable, so for instance a C#.NET service may be used by a Java application, and/or any other programming language which can access this service, as the interface can be defined in a standards-compliant manner which 'hides' any vendor- or language-specific implementation from the calling service.
With so many "SOA badged" tools available it can be hard to know where to start looking, or even to know what you should be looking for. Our instructors' impart their real-world experience of implementing SOA in large commercial, retail, banking & financial organisations in a series of case studies aimed to help you make the right decisions about your SOA strategy. This course is non vendor-specific so you'll get good, impartial advice.
What you will learn
- What is a Service Oriented Architecture?
- Advantages of SOA
- SOA Past and Present
- Fundamental Concepts
- Introduction to Business Process
- Modelling SOA building blocks
- Enterprise Service Bus (ESB)
- Process Driven Services
- Layered Architecture
SOA Training: Service Oriented Architecture Training Course Outline
A Service Oriented Methodology
Introduction to a SOA adoption roadmap
Three analysis approaches
Service oriented analysis
Service oriented design
Introduction to service oriented patterns
Advantages of SOA
Traditional EAI Approach
Problems With Traditional EAI Approach
Enter Service Oriented Architecture (SOA)
Build the Services
We Can Easily Change the Process
Change Flow Using Legacy Approach
Replacing an Application
Defining a Service in WSDL
Sample WSDL Document Structure
SOAP Binding Example
WSDL SOAP Binding Extensions
Simple Object Access Protocol (SOAP)
Why do you need SOAP?
SOAP In Protocol Stack
Document/Literal Wrapped Style
Details of the Wrapped Style
Service Oriented Analysis & Design
Stages of SOAD
Producing service specifications
Functional areas of the business.
Services belonging to these functional areas
Functionalities belonging to these services
Documenting service hierarchy
Enterprise Service Bus (ESB)
Legacy system Integration
Web services to the Rescue
The role of ESB in SOA
Security and ESB
Business Process Implementation
Business Process Diagram
Challenges in Process Implementation
Example: a Buy-Sell Partnership
Modeling Partnership in BPEL
Lifecycle of Process Development
Follow Integration Patterns
Example: A Simple Process
What is messaging and why do we need them?
How to use messaging in SOA?
SOAP over JMS details.
Modeling services well suited for messaging.
Correlation and why do we need them?
How to use correlation in SOA.
How to implement publish subscribe in SOA?
The layers pattern.
Classic three-their architecture.
Connecting to the domain layer.
Linking to the User interface.
Using packages to decompose a system.
Avoiding mutual dependencies.
What is layering and why we need them?
Application service layer
Business service layer
Orchestration service layer
The ACID properties.
Local vs. distributed transaction.
New challenges with transaction in SOA.
Transaction from a specific service call.
Transaction in a long running business process.
What is compensation and why do we need them?
How to implement compensation?
Software Platform for SOA
Software Tools for SOA
The Need for a Tool
SOA Development Life Cycle
Oracle BP Manager
Microsoft BizTalk Server 2006
Rational Application Developer (RAD)
Web Services Support
Runtime Products for SOA
New implementation paradigms
The benefits of employing SOA
Review of common business goals
The risks associated with the SOA approach
Evaluating tradeoff strategies