Sie sind auf Seite 1von 27

Service Oriented Architecture

Frank van Praag


Quick Topics
• What is SOA
• Why SOA
• The way to SOA
What is SOA
• A generic definition of SOA could be:
– SOA is a development paradigm (and IT strategy) that breaks down monolithic
applications into discrete business functions, leveraging standards to improve their
interoperability, and can be reused to build composite applications to quickly satisfy
new business requirements
• Relevant points about SOA
– SOA is not a product but an architectural paradigm. There is a lot of marketing hype
around SOA
– SOA is a much bigger umbrella initiative under which ESB and others fit as
infrastructure components – SOA enablement tools.
What is SOA
• A generic definition of SOA could be:
– SOA is a development paradigm (and IT strategy) that breaks down monolithic
applications into discrete business functions, leveraging standards to improve their
interoperability, and can be reused to build composite applications to quickly satisfy
new business requirements
• Relevant points about SOA
– SOA is not a product but an architectural paradigm. There is a lot of marketing hype
around SOA
– SOA is a much bigger umbrella initiative under which ESB and others fit as
infrastructure components – SOA enablement tools.
• So What? Isn’t this the same as OO, CORBA, COM, etc?
– It’s the same goal: re-usability
– Key Difference is platform, vendor, operating system,
language neutrality
– Neutrality allows re-use in heterogeneous
environment
Facts About SOA
Myths & Truth
Misconceptions
SOA is brand new SOA has been around, standardisation increasing

SOA = Web services SOA is bigger than Web services although SOA is
gaining traction with the maturing of Web services
standards
SOA is a product SOA is a concept

SOA is a revolutionary SOA is evolutionary, incremental and on-going


“big bang” paradigm shift
SOA is the cure-all architecture SOA is one important components of Real-Time
for the enterprise Enterprise Architecture
SOA Transports
Reducing Integration Complexity and
Increasing Business Agility
Before:
Traditional development

CRM
• Receive info
• Notify client

ERP SCM
• Identity Check • Alert large
• Process Payment payment
• Issue Notice • Check entitlement

• Monolithic application development


• Point-to-point integration
(“n-squared” problem)
• Hard-wired
Reducing Integration Complexity and
Increasing Business Agility
Before: After:
Traditional development SOA / ESB

CRM Enterprise Service Bus (ESB) / Backbone


• Receive info
• Notify client

ERP SCM
• Identity Check • Alert large
• Process Payment payment
• Issue Notice • Check entitlement

• Monolithic application development • Distributed applications/modules


• Point-to-point integration • Backbone-based integration
(“n-squared” problem) (“n-squared” to “n”)
• Hard-wired • Reusable services
Sample Benefit: Easier Upgrades

SAP
client IDoc

Client
AP
SO

SAP
client

Client

C
/ BD
SM RFC
T P SAP
client ABAP
Users
Complexity
Others… C
C

Oracle
C
C

C
C C
C

C
Mincom
C
PMKeys
Others…
C
C

Etc…
The Hard Wired Enterprise
• Complexity?
• Governance?
• User Identity?
• Access Policies?
• Agility?
• Change?
SAP
client IDoc

Client
AP
SO

SAP
client

Client

C
/ BD
SM RFC
T P SAP
client ABAP
Traditional, time-consuming
Current Environment
upgrade path

Target environment
in which clients have all
been upgraded to use mySAP
Service Oriented Architecture
Spectrum of Architectures
Intra­App Inter­Application

Tightly  Loosely  Not Coupled 


Coupled Coupled (Decoupled)

Objects Services Events

OO SOA
TIBCO Enterprise EDA
Services Backbone
Fundamentals of SOA
De-Coupled

Supports assembly of distributed


applications from loosely coupled
services.
– Modular loosely coupled services
– Mostly synchronous
Coupling

– Standards-based interfaces
– One-to-one request/reply
– Interoperability across heterogeneous
systems
SOA – Extensible infrastructure and shared
services
– Distributed, network of services
Tightly
Coupled – Location transparency

Synchronous Asynchronous
Asynchrony
Fundamentals of EDA
Supports processing of events,
De-Coupled messages, and triggers in real-
time.
– Events-based, both planned
and unplanned
– Mostly asynchronous
– Totally decoupled
EDA – Standards-based interfaces
(JMS; WS standards evolving)
– Many-to-many
publish/subscribe
Coupling

– Interoperability across
heterogeneous systems
– Real-time supporting long
running processes and
transactions
– Location transparency

Tightly
Coupled

Synchronous Asynchronous
Asynchrony
EDA + SOA = Real-Time Enterprise
Architecture
De-Coupled

EDA
Coupling

Real-Time Enterprise
SOA Architecture
• Promotes application
Tightly flexibility and reusability
Coupled
• Enables modular
Synchronous Asynchronous distributed applications
Asynchrony
Distributed Architectures
• SOA – Service Oriented Architecture
– An approach to building loosely-coupled distributed applications
using a collection of services
– A service is a self-contained software component using a
request-response operation within a well defined
interface/endpoint
– An SOA is essentially a collection of services whose interaction
can be modeled, monitored, and managed

• EDA – Event-Driven Architecture


– An approach to building decoupled distributed applications in
which events and messages are used to coordinate components
– An event is a record of activity, typically a state change
– Events can impact multiple processes
Summary
• What is SOA
– An architecture, not a product
• Why SOA
– Robustness, reuse, upgrades, etc.
• The way to SOA
– Not a panacea
– There is more to life than SOA
Questions & Discussion

Das könnte Ihnen auch gefallen