Service-oriented architecture
8th July 2013
What is a Service?
• A service is a reusable component that can be used as a building block to form
larger, more complex business-application functionality.
• A service may be as simple as “get me some person data,” or as complex as
“process a disbursement.”
• How the service is implemented, and how a user of the service accesses it, are
limited only by the SOA infrastructure choices of the enterprise.
• From a theory point of view, it really doesn’t matter how a service is implemented.
• Service-Oriented Architecture (SOA) is an architectural style. Applications built
using an SOA style deliver functionality as services that can be used or reused
when building applications or integrating within the enterprise or trading partners.
Analogy
• This model could loosely be
compared to a SOA. The people in
the house uses a number of
different "applications" like
radiators, computers, toilets,
lamps, under floor heating,
bathtubs etc. These applications
don't care how the city generates
the water, creates the electricity
or handles the waste as long as it
works. The components of the
city are generators, water pumps
and sanitation areas. It provides
the house with all these needs
but it's up to the house to use it in
what ever way it sees fit
A real world example(cooks)
• Let's assume you have 4 cooks. In SOA, you assume they
hate each other, so you strive to let them have to talk to
each other as little as possible.
• How do you do that? Well, you will first define the roles
and interface -- cook 1 will make salad, cook 2 will make
soup, cook 3 will make the steak, etc.. Then you will place
the dishes well organized on the table (so these are the
interfaces) and say, "Everybody please place your creation
into your assigned dishes. Don't care about anybody else.".
• This way, the four cooks have to talk to each other as little
as possible, which is very good in software development --
not necessarily because they hate each other, but for other
reasons like physical location, efficiency in making decisions
etc.
Revolutionary steps
• programmers learnt that organizing code into modules made it easy to
maintain and reuse This led to the development of large libraries of code
that are still used today
• The next major revolution in software design was object orientation. The
implementation details of an object were hidden from the consumers of
the object and could be changed as long as the object’s signature
remained the same. This led to even greater ease of maintenance and
extensibility. where objects could reside on different machines across a
network and talk to each other using various remote access protocols .
• The industry gradually realized that there was a huge potential market for
pieces of functionality that could be plugged into software applications
and customized for that specific application’s needs. This led to the
concept of software components.
• The latest buzzword in the software industry is ‘Service Orientation’. In
this approach, software functionality is defined as a set of services. Service
Oriented Architecture (SOA) Explained
SOA is an evolutionary step
 for architecture
Motivation
• Applicatio
n Centric
• Goal -
Service
Centric
• Service
Centric
Before SOA – After SOA
source:IBM
SOA is acronym for Service Oriented
Architecture.
• SOA is designing and writing software applications in such a way that distinct
software modules can be integrated seamlessly with high degree of re-
usability.
• Most of the people restrict SOA as writing client/server software-web-
services. But it is too small context of SOA. SOA is much larger than that and
over the past few years web-services have been primary medium of
communication which is probably the reason why people think of SOA as web-
services in general restricting the boundaries and meaning of SOA.
• You can think of writing a database-access module which is so independent
that it can work on its own without any dependencies. This module can
expose classes which can be used by any host-software that needs database
access. There's no start-up configuration in host-application. Whatever is
needed or required is communicated through classes exposes by database-
access module. We can call these classes as services and consider the module
as service-enabled.
What is Service Architecture?
• A collection of services
• classified into types
• arranged into layers
• Governed by architectural
patterns and policies
services
type typetype
source:TietoEnator AB, Kurts
Bilder
Benefits of Service Oriented
Architecture (SOA):
• 1. Platform Independence –
• 2. Focused Developer Roles –
• 3. Location Transparency –
• 4.Code Reuse _
• 5. Greater Testability
• 6. Parallel Development –
• 7. Better scalability –
• 8. Higher availability –.
What is an Enterprise Service Bus
An enterprise service bus is an
infrastructure used for building compound
applications
• is the glue that holds the compound application together
• is an emerging style for integrating enterprise applications in an
implementation-independent fashion
• can be thought of as an abstraction layer on top of an Enterprise
Messaging System
• is an infrastructure used for building compound applications
• is the glue that holds the compound application together
• is an emerging style for integrating enterprise applications in an
implementation-independent fashion
• can be thought of as an abstraction layer on top of an Enterprise
Messaging System
Characteristics of
ESB
• Key Characteristics of an ESB
• Streamlines development
• Supports multiple binding
strategies
• Performs data transformation
• Intelligent routing
• Real time monitoring
• Exception handling
• Service security
SOA Principles
• Standardized Service Contracts
• Loose Coupling
• Abstraction
• Reusability
• Autonomy
• Statelessness
• Discoverability
• Composability
SOA Depends on who you are!
Business owner: is a solution to increase your incomes
and business .
Enterprise architect: is a way to draw nice and clean
piece of software on a blank canvas.
Architect: is the solution to design loosely coupled services
over an integration platform, to just plug services into outlets.
Developer: is a programming paradigm where a service is in
the center of the design and the code.
SOA Depends on who you are!
Business owner: is a solution to increase your incomes
and business .
Enterprise architect: is a way to draw nice and clean
piece of software on a blank canvas.
Architect: is the solution to design loosely coupled services
over an integration platform, to just plug services into outlets.
Developer: is a programming paradigm where a service is in
the center of the design and the code.
SOA Depends on who you are!
Business owner: is a solution to increase your incomes
and business .
Enterprise architect: is a way to draw nice and clean
piece of software on a blank canvas.
Architect: is the solution to design loosely coupled services
over an integration platform, to just plug services into outlets.
Developer: is a programming paradigm where a service is in
the center of the design and the code.

More Related Content

PPTX
Cloud Architecture
PPT
Unit 1 - Introduction to Software Engineering.ppt
PPTX
Need for Software Engineering
PPT
SOA Fundamentals
PPTX
Chat Application
PDF
Library Management System
PPTX
Ch3. agile sw dev
PPTX
Student Management System best PPT
Cloud Architecture
Unit 1 - Introduction to Software Engineering.ppt
Need for Software Engineering
SOA Fundamentals
Chat Application
Library Management System
Ch3. agile sw dev
Student Management System best PPT

What's hot (20)

PPTX
Blog - An Online blogging project
DOCX
Hostel management system project report
PPTX
Ch2 sw processes
PPTX
Microsoft Azure
PDF
lake city institute of technology
PPT
extreme Programming
PPTX
Voice based email for blinds
PPT
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
PDF
Black Box Testing
PPTX
Stock Maintenance System in ooad with uml
PPTX
Software Evolution
PDF
Cloud Computing Using OpenStack
PPTX
UNIVERSITY MANAGEMENT SYSTEM.pptx
DOC
Online Fitness Gym Documentation
PDF
University Management System - UMS-X1
PPTX
Computer Aided Software Engineering Nayab Awan
PPTX
Library management system
PPTX
Software reuse ppt.
PPTX
AWS vs Azure | AWS vs Azure Comparison | Difference Between AWS And Azure | S...
PDF
Service Oriented Architecture
Blog - An Online blogging project
Hostel management system project report
Ch2 sw processes
Microsoft Azure
lake city institute of technology
extreme Programming
Voice based email for blinds
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Black Box Testing
Stock Maintenance System in ooad with uml
Software Evolution
Cloud Computing Using OpenStack
UNIVERSITY MANAGEMENT SYSTEM.pptx
Online Fitness Gym Documentation
University Management System - UMS-X1
Computer Aided Software Engineering Nayab Awan
Library management system
Software reuse ppt.
AWS vs Azure | AWS vs Azure Comparison | Difference Between AWS And Azure | S...
Service Oriented Architecture
Ad

Similar to SOA (Service Oriented Architecture) (20)

PPTX
Microservice's in detailed
PPTX
MICROSERVICES ARCHITECTURE unit -2.pptx
PDF
Microservice final final
PDF
Micro Service Architecture
PPTX
SERVICE ORIENTED ARCHITECTURE Software.pptx
PPTX
UNIT2_Cloud Computing - Cloud Enabling Technologies
PPTX
Software Architectures, Week 3 - Microservice-based Architectures
PPTX
What are microservices
PPTX
Unit-I-Introduction.pptx
PDF
Ekon20 mORMot SOA Delphi Conference
PPT
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
PDF
MuCon 2015 - Microservices in Integration Architecture
PPTX
Microservices: The Right Way
PPTX
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...
PDF
Architecting for speed: how agile innovators accelerate growth through micros...
PPTX
Cloud Computing Introduction
PDF
Architecting for speed: how agile innovators accelerate growth through micros...
PPTX
Lessions Learned - Service Oriented Architecture
PDF
CWIN17 Utrecht / cg u services - frank van der wal
Microservice's in detailed
MICROSERVICES ARCHITECTURE unit -2.pptx
Microservice final final
Micro Service Architecture
SERVICE ORIENTED ARCHITECTURE Software.pptx
UNIT2_Cloud Computing - Cloud Enabling Technologies
Software Architectures, Week 3 - Microservice-based Architectures
What are microservices
Unit-I-Introduction.pptx
Ekon20 mORMot SOA Delphi Conference
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
MuCon 2015 - Microservices in Integration Architecture
Microservices: The Right Way
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...
Architecting for speed: how agile innovators accelerate growth through micros...
Cloud Computing Introduction
Architecting for speed: how agile innovators accelerate growth through micros...
Lessions Learned - Service Oriented Architecture
CWIN17 Utrecht / cg u services - frank van der wal
Ad

Recently uploaded (20)

PDF
Enhancing plagiarism detection using data pre-processing and machine learning...
PDF
Data Virtualization in Action: Scaling APIs and Apps with FME
PDF
LMS bot: enhanced learning management systems for improved student learning e...
PDF
MENA-ECEONOMIC-CONTEXT-VC MENA-ECEONOMIC
PDF
INTERSPEECH 2025 「Recent Advances and Future Directions in Voice Conversion」
PPTX
SGT Report The Beast Plan and Cyberphysical Systems of Control
PPTX
Internet of Everything -Basic concepts details
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
Introduction to MCP and A2A Protocols: Enabling Agent Communication
PPTX
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
PDF
Lung cancer patients survival prediction using outlier detection and optimize...
PDF
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
PDF
giants, standing on the shoulders of - by Daniel Stenberg
PPTX
Training Program for knowledge in solar cell and solar industry
PDF
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PPTX
agenticai-neweraofintelligence-250529192801-1b5e6870.pptx
PDF
SaaS reusability assessment using machine learning techniques
PDF
Advancing precision in air quality forecasting through machine learning integ...
PPTX
Module 1 Introduction to Web Programming .pptx
Enhancing plagiarism detection using data pre-processing and machine learning...
Data Virtualization in Action: Scaling APIs and Apps with FME
LMS bot: enhanced learning management systems for improved student learning e...
MENA-ECEONOMIC-CONTEXT-VC MENA-ECEONOMIC
INTERSPEECH 2025 「Recent Advances and Future Directions in Voice Conversion」
SGT Report The Beast Plan and Cyberphysical Systems of Control
Internet of Everything -Basic concepts details
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
Introduction to MCP and A2A Protocols: Enabling Agent Communication
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
Lung cancer patients survival prediction using outlier detection and optimize...
Dell Pro Micro: Speed customer interactions, patient processing, and learning...
giants, standing on the shoulders of - by Daniel Stenberg
Training Program for knowledge in solar cell and solar industry
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
Co-training pseudo-labeling for text classification with support vector machi...
agenticai-neweraofintelligence-250529192801-1b5e6870.pptx
SaaS reusability assessment using machine learning techniques
Advancing precision in air quality forecasting through machine learning integ...
Module 1 Introduction to Web Programming .pptx

SOA (Service Oriented Architecture)

  • 2. What is a Service? • A service is a reusable component that can be used as a building block to form larger, more complex business-application functionality. • A service may be as simple as “get me some person data,” or as complex as “process a disbursement.” • How the service is implemented, and how a user of the service accesses it, are limited only by the SOA infrastructure choices of the enterprise. • From a theory point of view, it really doesn’t matter how a service is implemented. • Service-Oriented Architecture (SOA) is an architectural style. Applications built using an SOA style deliver functionality as services that can be used or reused when building applications or integrating within the enterprise or trading partners.
  • 3. Analogy • This model could loosely be compared to a SOA. The people in the house uses a number of different "applications" like radiators, computers, toilets, lamps, under floor heating, bathtubs etc. These applications don't care how the city generates the water, creates the electricity or handles the waste as long as it works. The components of the city are generators, water pumps and sanitation areas. It provides the house with all these needs but it's up to the house to use it in what ever way it sees fit
  • 4. A real world example(cooks) • Let's assume you have 4 cooks. In SOA, you assume they hate each other, so you strive to let them have to talk to each other as little as possible. • How do you do that? Well, you will first define the roles and interface -- cook 1 will make salad, cook 2 will make soup, cook 3 will make the steak, etc.. Then you will place the dishes well organized on the table (so these are the interfaces) and say, "Everybody please place your creation into your assigned dishes. Don't care about anybody else.". • This way, the four cooks have to talk to each other as little as possible, which is very good in software development -- not necessarily because they hate each other, but for other reasons like physical location, efficiency in making decisions etc.
  • 5. Revolutionary steps • programmers learnt that organizing code into modules made it easy to maintain and reuse This led to the development of large libraries of code that are still used today • The next major revolution in software design was object orientation. The implementation details of an object were hidden from the consumers of the object and could be changed as long as the object’s signature remained the same. This led to even greater ease of maintenance and extensibility. where objects could reside on different machines across a network and talk to each other using various remote access protocols . • The industry gradually realized that there was a huge potential market for pieces of functionality that could be plugged into software applications and customized for that specific application’s needs. This led to the concept of software components. • The latest buzzword in the software industry is ‘Service Orientation’. In this approach, software functionality is defined as a set of services. Service Oriented Architecture (SOA) Explained
  • 6. SOA is an evolutionary step  for architecture
  • 7. Motivation • Applicatio n Centric • Goal - Service Centric • Service Centric
  • 8. Before SOA – After SOA source:IBM
  • 9. SOA is acronym for Service Oriented Architecture. • SOA is designing and writing software applications in such a way that distinct software modules can be integrated seamlessly with high degree of re- usability. • Most of the people restrict SOA as writing client/server software-web- services. But it is too small context of SOA. SOA is much larger than that and over the past few years web-services have been primary medium of communication which is probably the reason why people think of SOA as web- services in general restricting the boundaries and meaning of SOA. • You can think of writing a database-access module which is so independent that it can work on its own without any dependencies. This module can expose classes which can be used by any host-software that needs database access. There's no start-up configuration in host-application. Whatever is needed or required is communicated through classes exposes by database- access module. We can call these classes as services and consider the module as service-enabled.
  • 10. What is Service Architecture? • A collection of services • classified into types • arranged into layers • Governed by architectural patterns and policies services type typetype source:TietoEnator AB, Kurts Bilder
  • 11. Benefits of Service Oriented Architecture (SOA): • 1. Platform Independence – • 2. Focused Developer Roles – • 3. Location Transparency – • 4.Code Reuse _ • 5. Greater Testability • 6. Parallel Development – • 7. Better scalability – • 8. Higher availability –.
  • 12. What is an Enterprise Service Bus An enterprise service bus is an infrastructure used for building compound applications • is the glue that holds the compound application together • is an emerging style for integrating enterprise applications in an implementation-independent fashion • can be thought of as an abstraction layer on top of an Enterprise Messaging System • is an infrastructure used for building compound applications • is the glue that holds the compound application together • is an emerging style for integrating enterprise applications in an implementation-independent fashion • can be thought of as an abstraction layer on top of an Enterprise Messaging System
  • 13. Characteristics of ESB • Key Characteristics of an ESB • Streamlines development • Supports multiple binding strategies • Performs data transformation • Intelligent routing • Real time monitoring • Exception handling • Service security
  • 14. SOA Principles • Standardized Service Contracts • Loose Coupling • Abstraction • Reusability • Autonomy • Statelessness • Discoverability • Composability
  • 15. SOA Depends on who you are! Business owner: is a solution to increase your incomes and business . Enterprise architect: is a way to draw nice and clean piece of software on a blank canvas. Architect: is the solution to design loosely coupled services over an integration platform, to just plug services into outlets. Developer: is a programming paradigm where a service is in the center of the design and the code.
  • 16. SOA Depends on who you are! Business owner: is a solution to increase your incomes and business . Enterprise architect: is a way to draw nice and clean piece of software on a blank canvas. Architect: is the solution to design loosely coupled services over an integration platform, to just plug services into outlets. Developer: is a programming paradigm where a service is in the center of the design and the code.
  • 17. SOA Depends on who you are! Business owner: is a solution to increase your incomes and business . Enterprise architect: is a way to draw nice and clean piece of software on a blank canvas. Architect: is the solution to design loosely coupled services over an integration platform, to just plug services into outlets. Developer: is a programming paradigm where a service is in the center of the design and the code.