SlideShare uma empresa Scribd logo
1 de 17
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.

Mais conteúdo relacionado

Mais procurados

Software Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesSoftware Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic Architectures
Angelos Kapsimanis
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
Sudarshan Dhondaley
 

Mais procurados (20)

Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
SOAP-based Web Services
SOAP-based Web ServicesSOAP-based Web Services
SOAP-based Web Services
 
Domain Driven Design (Ultra) Distilled
Domain Driven Design (Ultra) DistilledDomain Driven Design (Ultra) Distilled
Domain Driven Design (Ultra) Distilled
 
Microservices Decomposition Patterns
Microservices Decomposition PatternsMicroservices Decomposition Patterns
Microservices Decomposition Patterns
 
Domain driven design and model driven development
Domain driven design and model driven developmentDomain driven design and model driven development
Domain driven design and model driven development
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Design patterns for microservice architecture
Design patterns for microservice architectureDesign patterns for microservice architecture
Design patterns for microservice architecture
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
 
Domain driven design
Domain driven designDomain driven design
Domain driven design
 
Software Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesSoftware Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic Architectures
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
 
Introduction to DDD
Introduction to DDDIntroduction to DDD
Introduction to DDD
 
Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)
 
Web services SOAP
Web services SOAPWeb services SOAP
Web services SOAP
 
Software Engineering - chp5- software architecture
Software Engineering - chp5- software architectureSoftware Engineering - chp5- software architecture
Software Engineering - chp5- software architecture
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture Patterns
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 

Semelhante a SOA (Service Oriented Architecture)

MICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptxMICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptx
MohammedShahid562503
 
Software Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesSoftware Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based Architectures
Angelos Kapsimanis
 
Unit-I-Introduction.pptx
Unit-I-Introduction.pptxUnit-I-Introduction.pptx
Unit-I-Introduction.pptx
keerthanamp4
 

Semelhante a SOA (Service Oriented Architecture) (20)

Microservice's in detailed
Microservice's in detailedMicroservice's in detailed
Microservice's in detailed
 
MICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptxMICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptx
 
Microservice final final
Microservice final finalMicroservice final final
Microservice final final
 
Micro Service Architecture
Micro Service ArchitectureMicro Service Architecture
Micro Service Architecture
 
Software Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesSoftware Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based Architectures
 
SOA
SOASOA
SOA
 
What are microservices
What are microservicesWhat are microservices
What are microservices
 
Unit-I-Introduction.pptx
Unit-I-Introduction.pptxUnit-I-Introduction.pptx
Unit-I-Introduction.pptx
 
Ekon20 mORMot SOA Delphi Conference
Ekon20 mORMot SOA Delphi Conference Ekon20 mORMot SOA Delphi Conference
Ekon20 mORMot SOA Delphi Conference
 
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
 
MuCon 2015 - Microservices in Integration Architecture
MuCon 2015 - Microservices in Integration ArchitectureMuCon 2015 - Microservices in Integration Architecture
MuCon 2015 - Microservices in Integration Architecture
 
Microservices: The Right Way
Microservices: The Right WayMicroservices: The Right Way
Microservices: The Right Way
 
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
 
Cloud Computing Introduction
Cloud Computing IntroductionCloud Computing Introduction
Cloud Computing Introduction
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
 
Lessions Learned - Service Oriented Architecture
Lessions Learned - Service Oriented Architecture Lessions Learned - Service Oriented Architecture
Lessions Learned - Service Oriented Architecture
 
CWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der walCWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der wal
 
Understanding Microservices
Understanding Microservices Understanding Microservices
Understanding Microservices
 
Micro services overview
Micro services overviewMicro services overview
Micro services overview
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

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.