SlideShare a Scribd company logo
SOAService-Oriented Architecture
Divide and Conquer
Sylvain Witmeyer - April 2015
Who uses SOA
● Ebay(2006) - 2Pb data - +100k lines code / 2
weeks
● IBM - 77 shareables and reusables services in
prod
● Amazon(2002) - all their infrastructure
● Twitter
● Facebook - via Apache Thrift
Monolithic vs SOA
SOA
UI
Business Logic
Data Access Layer
DB
Monolithic
UI
service service service
service
DB DB DB
UI / worker
http://java.dzone.com/articles/getting-soa-right---thinking
Service Oriented Architecture
● SOA is an Architecture for building businesses
applications on top of a collection of services
● Service : Functionality well-defined, self-contained, and
does not depend on the context or state of other
services
● Focus on Service not on Domain
Everything simple is fast.
Everything which is complex is unusable.
Paul Valéry
SOA Manifesto
● Business value over technical strategy
● Strategic goals over project-specific benefits
● Intrinsic interoperability over custom integration
● Shared services over specific-purpose implementations
● Flexibility over optimization
● Evolutionary refinement over pursuit of initial perfection
Highlights
● Less intimidating for new developers
● Continuous Deployment is easier
● Fine tuning for scaling the application
● Decrease commits conflicts
● No long-term commitment to a technology
SOA Design Principles
● Loosely
coupled
● Autonomy
● Abstraction
● Reusability
● Discoverability
● Interoperability
● Service Contract
● Stateless
● Composibility-Granularity
Service Contract
Public document(s) that express terms of service (WSDL,
REST API Doc)
SERVICECONSUMER
CONTRACT
network
Loosely Coupled
Service and Consumer are independent
SERVICE
SERVICE INTERFACE - API
CONSUMER
CONSUMER
SERVICE
Autonomy
Services encapsulate resources and Business Logic
SERVICE
Resources &
logic
SERVICE
Resources
& logic
Service Abstraction
Service hides the Logic to the consumer
CONSUMER SERVICE
Resources &
Business logic
network
Reusability and Interoperability
Services can be used by several and differents consumers
SERVICE CONSUMER
CONSUMER
CONSUMER
network
Stateless
● Service doesn’t care about what it did and
what it will do.
● Minimize holding any activity or processing
state Information (session data is bad,
messaging queue).
Discoverability
● Consumers should easily find and
understand what Services are made for.
● Better Service reusability.
● Service directory.
Service Composition
A service can aggregate other services
SERVICE
SERVICE
SERVICE
BIG SERVICECONSUMER
network
network
Task, Entity, Utility
Task Service
Business Service with
business task or process
i.e : AuthenticationService,
OrderValidationService
Utility Service
Non-business Service
i.e : LogService,
MessagingService
Entity Service
Service handling Business
Entities
i.e : UserService,
ProgramService
Why SOA fails
From A Comprehensive Introduction to Everything SOA
Mehmet Akyuz
SOA Governance
● Plan – Identify and analyze the core governance areas for improvement.
Establish objectives/plan and specific measures for a proposed
increment. Previously deployed increments are also evaluated for any
necessary improvement.
● Define – Define the SOA Governance Model Transition Plans required
to deliver the objectives defined in the Plan phase.
● Implement – Implement the Transition Plans including deployment of
processes, organization, and technology aspects of the SOA
Governance Model.
● Monitor – Monitor the effectiveness of the currently deployed SOA
Governance Regimen and whether it is meeting its intended purpose.
This phase may start another iteration of the SGVM.
https://www.opengroup.org/soa/source-book/gov/sgvm.htm
If you can’t measure something, you can’t understand it.
If you can’t understand it, you can’t control it.
If you can’t control it, you can’t improve it
H. James Harrington
Monitoring & Deployment
● Monitoring and QA are the same thing
● Amazon has a universal service registry where you can find
out reflectively (programmatically) about every service,
what its APIs are, and also whether it is currently up, and
where.
● Create a reusable dashboard
● Continuous Integration
Amazon Mandate by J.Bezos 2002
1) All teams will henceforth expose their data and functionality through service interfaces.
2) Teams must communicate with each other through these interfaces.
3) There will be no other form of interprocess communication allowed: no direct linking, no
direct reads of another team's data store, no shared-memory model, no back-doors
whatsoever. The only communication allowed is via service interface calls over the network.
4) It doesn't matter what technology they use. HTTP, Corba, Pubsub, custom protocols --
doesn't matter. Bezos doesn't care.
5) All service interfaces, without exception, must be designed from the ground up to be
externalizable. That is to say, the team must plan and design to be able to expose the interface
to developers in the outside world. No exceptions.
6) Anyone who doesn't do this will be fired.
7) Thank you; have a nice day!
Questions to solve
● Service authentication and authorization ?
● What should be included in each Service ?
● API versioning and Continuous Integration, how do they
get along?
Sources
http://soapatterns.org/
http://serviceorientation.com/
http://microservices.io/patterns/mic
roservices.html
http://fr.slideshare.net/makyuz/a-comprehensive-introduction-to-everything-soa
http://fr.slideshare.net/apigee/soa-in-the-api-world-facades-transactions-
stateless-services
https://plus.google.com/+RipRowan/posts/eVeouesvaVX

More Related Content

What's hot

Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)
WSO2
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented Architecture
DATA Inc.
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
Syed Mustafa
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
Anil Allewar
 
Introduction to Web Services
Introduction to Web ServicesIntroduction to Web Services
Introduction to Web Services
Thanachart Numnonda
 
Event driven microservices
Event driven microservicesEvent driven microservices
Event driven microservices
Anthony Martin
 
Service Oriented Architecture
Service Oriented Architecture Service Oriented Architecture
Service Oriented Architecture
Prabhat gangwar
 
Microservices
Microservices Microservices
Microservices
Trieu Nguyen
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
jeetendra mandal
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
WSO2
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
Amazon Web Services
 
Simple object access protocol(soap )
Simple object access protocol(soap )Simple object access protocol(soap )
Simple object access protocol(soap )
balamurugan.k Kalibalamurugan
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
tyrantbrian
 
Microservice Architecture Software Architecture Microservice Design Pattern
Microservice Architecture Software Architecture Microservice Design PatternMicroservice Architecture Software Architecture Microservice Design Pattern
Microservice Architecture Software Architecture Microservice Design Pattern
jeetendra mandal
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOA
Subin Sugunan
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
Amazon Web Services
 
The Microservices world in. NET Core and. NET framework
The Microservices world in. NET Core and. NET frameworkThe Microservices world in. NET Core and. NET framework
The Microservices world in. NET Core and. NET framework
Massimo Bonanni
 
Web Service Presentation
Web Service PresentationWeb Service Presentation
Web Service Presentation
guest0df6b0
 
Web application framework
Web application frameworkWeb application framework
Web application framework
Pankaj Chand
 
Soap and restful webservice
Soap and restful webserviceSoap and restful webservice
Soap and restful webservice
Dong Ngoc
 

What's hot (20)

Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented Architecture
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
Introduction to Web Services
Introduction to Web ServicesIntroduction to Web Services
Introduction to Web Services
 
Event driven microservices
Event driven microservicesEvent driven microservices
Event driven microservices
 
Service Oriented Architecture
Service Oriented Architecture Service Oriented Architecture
Service Oriented Architecture
 
Microservices
Microservices Microservices
Microservices
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Simple object access protocol(soap )
Simple object access protocol(soap )Simple object access protocol(soap )
Simple object access protocol(soap )
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Microservice Architecture Software Architecture Microservice Design Pattern
Microservice Architecture Software Architecture Microservice Design PatternMicroservice Architecture Software Architecture Microservice Design Pattern
Microservice Architecture Software Architecture Microservice Design Pattern
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOA
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
The Microservices world in. NET Core and. NET framework
The Microservices world in. NET Core and. NET frameworkThe Microservices world in. NET Core and. NET framework
The Microservices world in. NET Core and. NET framework
 
Web Service Presentation
Web Service PresentationWeb Service Presentation
Web Service Presentation
 
Web application framework
Web application frameworkWeb application framework
Web application framework
 
Soap and restful webservice
Soap and restful webserviceSoap and restful webservice
Soap and restful webservice
 

Similar to Concept of SOA

Best Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesBest Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with Microservices
Jim (张建军) Zhang
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitecture
ABDEL RAHMAN KARIM
 
ITI005En-SOA (II)
ITI005En-SOA (II)ITI005En-SOA (II)
ITI005En-SOA (II)
Huibert Aalbers
 
Delivering the Composable Enterprise
Delivering the Composable EnterpriseDelivering the Composable Enterprise
Delivering the Composable Enterprise
Saul Caganoff
 
ServiceNow Tokyo Release- Aelumconsulting.pdf
ServiceNow Tokyo Release- Aelumconsulting.pdfServiceNow Tokyo Release- Aelumconsulting.pdf
ServiceNow Tokyo Release- Aelumconsulting.pdf
Aelum Consulting
 
Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014
Khawar Nehal khawar.nehal@atrc.net.pk
 
Practical soa for business and researchers
Practical soa for business and researchersPractical soa for business and researchers
Practical soa for business and researchers
Mustafa Gamal
 
Three layer API Design Architecture
Three layer API Design ArchitectureThree layer API Design Architecture
Three layer API Design Architecture
Harish Kumar
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native Meetup
Matt Ray
 
From prototype to production - The journey of re-designing SmartUp.io
From prototype to production - The journey of re-designing SmartUp.ioFrom prototype to production - The journey of re-designing SmartUp.io
From prototype to production - The journey of re-designing SmartUp.io
Máté Lang
 
Enterprise integration primer
Enterprise integration primerEnterprise integration primer
Enterprise integration primer
Charles Wade
 
Exposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API ManagementExposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API Management
WSO2
 
08 hopex v next service fabric
08 hopex v next   service fabric08 hopex v next   service fabric
08 hopex v next service fabric
Michel Bruchet
 
Open Digital Framework from TMFORUM
Open Digital Framework from TMFORUMOpen Digital Framework from TMFORUM
Open Digital Framework from TMFORUM
Maganathin Veeraragaloo
 
Aws dev ops saif ahmed
Aws dev ops   saif ahmedAws dev ops   saif ahmed
Aws dev ops saif ahmed
saifam
 
Ledingkart Meetup #1: Monolithic to microservices in action
Ledingkart Meetup #1: Monolithic to microservices in actionLedingkart Meetup #1: Monolithic to microservices in action
Ledingkart Meetup #1: Monolithic to microservices in action
Mukesh Singh
 
Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)
Alexander SAMARIN
 
Improve_Application_Availability_and_Performance_Sales_Crib_Sheet.pdf
Improve_Application_Availability_and_Performance_Sales_Crib_Sheet.pdfImprove_Application_Availability_and_Performance_Sales_Crib_Sheet.pdf
Improve_Application_Availability_and_Performance_Sales_Crib_Sheet.pdf
منیزہ ہاشمی
 

Similar to Concept of SOA (20)

Cooking soa
Cooking soaCooking soa
Cooking soa
 
Best Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesBest Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with Microservices
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitecture
 
ITI005En-SOA (II)
ITI005En-SOA (II)ITI005En-SOA (II)
ITI005En-SOA (II)
 
Delivering the Composable Enterprise
Delivering the Composable EnterpriseDelivering the Composable Enterprise
Delivering the Composable Enterprise
 
ServiceNow Tokyo Release- Aelumconsulting.pdf
ServiceNow Tokyo Release- Aelumconsulting.pdfServiceNow Tokyo Release- Aelumconsulting.pdf
ServiceNow Tokyo Release- Aelumconsulting.pdf
 
Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014
 
Practical soa for business and researchers
Practical soa for business and researchersPractical soa for business and researchers
Practical soa for business and researchers
 
Three layer API Design Architecture
Three layer API Design ArchitectureThree layer API Design Architecture
Three layer API Design Architecture
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native Meetup
 
From prototype to production - The journey of re-designing SmartUp.io
From prototype to production - The journey of re-designing SmartUp.ioFrom prototype to production - The journey of re-designing SmartUp.io
From prototype to production - The journey of re-designing SmartUp.io
 
Enterprise integration primer
Enterprise integration primerEnterprise integration primer
Enterprise integration primer
 
Exposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API ManagementExposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API Management
 
08 hopex v next service fabric
08 hopex v next   service fabric08 hopex v next   service fabric
08 hopex v next service fabric
 
Services oriented architecture
Services oriented architectureServices oriented architecture
Services oriented architecture
 
Open Digital Framework from TMFORUM
Open Digital Framework from TMFORUMOpen Digital Framework from TMFORUM
Open Digital Framework from TMFORUM
 
Aws dev ops saif ahmed
Aws dev ops   saif ahmedAws dev ops   saif ahmed
Aws dev ops saif ahmed
 
Ledingkart Meetup #1: Monolithic to microservices in action
Ledingkart Meetup #1: Monolithic to microservices in actionLedingkart Meetup #1: Monolithic to microservices in action
Ledingkart Meetup #1: Monolithic to microservices in action
 
Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)
 
Improve_Application_Availability_and_Performance_Sales_Crib_Sheet.pdf
Improve_Application_Availability_and_Performance_Sales_Crib_Sheet.pdfImprove_Application_Availability_and_Performance_Sales_Crib_Sheet.pdf
Improve_Application_Availability_and_Performance_Sales_Crib_Sheet.pdf
 

Recently uploaded

The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
FluxPrime1
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
Robbie Edward Sayers
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
ongomchris
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
AP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specificAP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specific
BrazilAccount1
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
Kamal Acharya
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
AmarGB2
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
Kamal Acharya
 

Recently uploaded (20)

The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
AP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specificAP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specific
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
 

Concept of SOA

  • 1. SOAService-Oriented Architecture Divide and Conquer Sylvain Witmeyer - April 2015
  • 2. Who uses SOA ● Ebay(2006) - 2Pb data - +100k lines code / 2 weeks ● IBM - 77 shareables and reusables services in prod ● Amazon(2002) - all their infrastructure ● Twitter ● Facebook - via Apache Thrift
  • 3. Monolithic vs SOA SOA UI Business Logic Data Access Layer DB Monolithic UI service service service service DB DB DB UI / worker
  • 5. Service Oriented Architecture ● SOA is an Architecture for building businesses applications on top of a collection of services ● Service : Functionality well-defined, self-contained, and does not depend on the context or state of other services ● Focus on Service not on Domain
  • 6. Everything simple is fast. Everything which is complex is unusable. Paul Valéry
  • 7. SOA Manifesto ● Business value over technical strategy ● Strategic goals over project-specific benefits ● Intrinsic interoperability over custom integration ● Shared services over specific-purpose implementations ● Flexibility over optimization ● Evolutionary refinement over pursuit of initial perfection
  • 8. Highlights ● Less intimidating for new developers ● Continuous Deployment is easier ● Fine tuning for scaling the application ● Decrease commits conflicts ● No long-term commitment to a technology
  • 9. SOA Design Principles ● Loosely coupled ● Autonomy ● Abstraction ● Reusability ● Discoverability ● Interoperability ● Service Contract ● Stateless ● Composibility-Granularity
  • 10. Service Contract Public document(s) that express terms of service (WSDL, REST API Doc) SERVICECONSUMER CONTRACT network
  • 11. Loosely Coupled Service and Consumer are independent SERVICE SERVICE INTERFACE - API CONSUMER CONSUMER SERVICE
  • 12. Autonomy Services encapsulate resources and Business Logic SERVICE Resources & logic SERVICE Resources & logic
  • 13. Service Abstraction Service hides the Logic to the consumer CONSUMER SERVICE Resources & Business logic network
  • 14. Reusability and Interoperability Services can be used by several and differents consumers SERVICE CONSUMER CONSUMER CONSUMER network
  • 15. Stateless ● Service doesn’t care about what it did and what it will do. ● Minimize holding any activity or processing state Information (session data is bad, messaging queue).
  • 16. Discoverability ● Consumers should easily find and understand what Services are made for. ● Better Service reusability. ● Service directory.
  • 17. Service Composition A service can aggregate other services SERVICE SERVICE SERVICE BIG SERVICECONSUMER network network
  • 18. Task, Entity, Utility Task Service Business Service with business task or process i.e : AuthenticationService, OrderValidationService Utility Service Non-business Service i.e : LogService, MessagingService Entity Service Service handling Business Entities i.e : UserService, ProgramService
  • 19. Why SOA fails From A Comprehensive Introduction to Everything SOA Mehmet Akyuz
  • 20. SOA Governance ● Plan – Identify and analyze the core governance areas for improvement. Establish objectives/plan and specific measures for a proposed increment. Previously deployed increments are also evaluated for any necessary improvement. ● Define – Define the SOA Governance Model Transition Plans required to deliver the objectives defined in the Plan phase. ● Implement – Implement the Transition Plans including deployment of processes, organization, and technology aspects of the SOA Governance Model. ● Monitor – Monitor the effectiveness of the currently deployed SOA Governance Regimen and whether it is meeting its intended purpose. This phase may start another iteration of the SGVM. https://www.opengroup.org/soa/source-book/gov/sgvm.htm
  • 21. If you can’t measure something, you can’t understand it. If you can’t understand it, you can’t control it. If you can’t control it, you can’t improve it H. James Harrington
  • 22. Monitoring & Deployment ● Monitoring and QA are the same thing ● Amazon has a universal service registry where you can find out reflectively (programmatically) about every service, what its APIs are, and also whether it is currently up, and where. ● Create a reusable dashboard ● Continuous Integration
  • 23. Amazon Mandate by J.Bezos 2002 1) All teams will henceforth expose their data and functionality through service interfaces. 2) Teams must communicate with each other through these interfaces. 3) There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team's data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network. 4) It doesn't matter what technology they use. HTTP, Corba, Pubsub, custom protocols -- doesn't matter. Bezos doesn't care. 5) All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions. 6) Anyone who doesn't do this will be fired. 7) Thank you; have a nice day!
  • 24. Questions to solve ● Service authentication and authorization ? ● What should be included in each Service ? ● API versioning and Continuous Integration, how do they get along?