SlideShare a Scribd company logo
1 of 34
Principles OF
SOAFrom knowledge
To practice
SUBMITTED BY : MOHAMED ZAKARYA
AGENDA
 Service orientation principles
 Standardized Service Contract
 Service Reusability
 Service Discoverability
 Service Composability
 Service Loose Coupling
 Service Abstraction
 Service Autonomy
 Service Statelessness
 Thanks 
PART 1
SERVICE ORIENTATION
PRINCIPLES
DAY1 TERMS REVIEW
SERVICE ORIENTATION PRINCIPLES
Standardized
Service
Contract
Service
Reusability
Service
Composability
Service
Autonomy
Service
Loose
Coupling
Service
Statelessness
Service
Abstraction
Service
Discoverability
SERVICE ORIENTATION PRINCIPLES
Service Reusability
Service contain agnostic logic that can be position as reusable enterprise resource.
Standardized Service Contract
Service in same inventory are in compliance of same design service contract standards.
Service Composition
Services are effective composition participants.
Service Discoverability
Service meta data available for discoverability and interpreted.
Service Loose Coupling
Contract decoupled from surrounding environment.
Service Autonomy
Services exercise a high level of control over their underlying runtime execution environment.
Service Statelessness
Services minimize resource consumption , reduce state information.
Service Abstraction
Contract contains only essential information , that is published to consumers.
PART 1
STANDARDIZED
SERVICE
CONTRACT
INTRODUCTION
Fundamental role of this principle is
To ensure the consistent expression of service capabilities and the overall purpose of
the service as defined by the parent service context
Standardized Service Contract
Service in same inventory are in compliance of same design service contract standards.
TECHNICAL WEB SERVICE CONTRACT
Group of service description documents, each of which describes a part of the service.
For example A Web service contract can be comprised of the following service description
documents:
 WSDL definition
 XML schema definition
 WS-Policy description
SOA MUST SATISFY SLA
A service-level agreement (SLA) is a formal contract between a service provider
and a consumer that focus on :
 Service availability
 Performance
 Traffic levels
 Messages / queries per hour / minute / second
 Response time
 Rejected transactions
 Errors
ORIGIN OF SERVICE CONTRACT
Interactions between two standalone software programs are based on exchange information
between the programs that predefined by a formal , technical specification.
This is what is expressed in a technical contract
ABOUT THE PRINCIPLE
Title
Services share standardized contract
Description
Service in same inventory are in compliance of same design service contract standards.
Goals
Natural
interoperability
Reduce data
transformation
increases
interpretability
Implementation requirements
Design standards need to take place before delivery of any service ( ensure standardization)
Achieving standardized web service contract , requires “contract first” approach
EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
TYPES OF SERVICE CONTRACT STANDARDIZATION
Functional
Expression
Data
Representation
Service
Policy
1. STANDARDIZATION OF FUNCTIONAL SERVICE EXPRESSION
Listing #1
Listing #2
seem very specific to this operation.
More generic naming conventions
and generic data type references.
Apply functional expression standards
2. STANDARDIZATION OF SERVICE DATA REPRESENTATION
3. STANDARDIZATION OF SERVICE POLICIES
FUNCTION EXPRESSION / DATA REPRESENTATION STANDARD
FUNCTIONAL EXPRESSION / SERVICE DATA REPRESENTATION DEMO
Team work Absher demo
CONTRACT FIRST APPROACH DEMO
Using contract first tool
UNIFORM CONTRACT
Uniform Contract is the name of a candidate design pattern (REST-inspired pattern)
How can services share a common and standardized contract?
UNIFORM CONTRACT ELEMENTS
1. Resource identifier syntax : How can we express where is the data being transferred to or from?
2. Methods : What are the protocol mechanisms used to transfer the data?
3. Media types : What type of data is being transferred?
1. RESOURCE IDENTIFIER SYNTAX
How can we express where is the data being transferred to or from?
• standardizes the syntax used to express resource identifiers
• Resource identifiers are generally specific to a REST service
• The generic syntax for URIs is as follows:
{scheme}://{authority}{path}?{query}
http://invoices.example.com/invoices?total-less-than=100USD#page2
2. METHODS
What are the protocol mechanisms used to transfer the data?
Methods are usually not
specific to one rest service
Ex:
GET /customer?ID=C081 HTTP/1.1
2. METHODS EXAMPLE
3. MEDIA TYPE
 specify the types of data a given method can process
 A media type can therefore be generic and based on a pre-defined industry
media type (such as XML and JPG)
 Ex : application/vnd.com.example.invoice+xml
What type of data is being transferred?
REST SERVICE CONTRACT / REST SERVICE CAPABILITY
REST service capability
Can be considered a combination of a uniform contact method and resource identifier
REST service contract
Establishes a functional context that encapsulates one or more REST service capabilities associated
with the functional context
Non Rest service contract VS rest service contract
SAMPLE EXAM QUESTIONS
Q1 : The design principle most associated with an approach whereby the technical
interface or contract of a service is designed prior to its underlying logic is: Select
the correct answer.
A. Service Autonomy
B. Service Reusability
C. Service Composability
D. Standardized Service Contract
Answer : D
SAMPLE EXAM QUESTIONS
Q2: Fill in the blank for the following definition for the Standardized Service
Contract design principle:
"Services within the same ___________are in compliance with the same contract
design standards." Select the correct answer.
A. service activity
B. service inventory
C. state
D. message path
Answer : B
SAMPLE EXAM QUESTIONS
Q3 : Which of the following statements does not make sense? Select the correct answer.
A. By applying the Standardized Service Contract principle, the amount of data model
transformation logic required by my solution has been reduced.
B. By applying the Standardized Service Contract principle, the amount of data model
transformation logic required by my solution has been increased.
C. It is thanks to the Standardized Service Contract principle that we have been able to
better isolate our services so as to reduce their dependency on shared databases.
D. Since the design standards created in support of the Standardized Service Contract
principle have been more widely enforced, I've noticed the same data models being
shared by more services.
Answer : B,C
REFERENCES
http://www.soaschool.com/
http://serviceorientation.com/index.php/soaglossary/index
http://soapatterns.org/
http://www.servicetechmag.com/
http://www.soaschool.com/certifications
http://www.servicetechbooks.com/
ANY QUESTIONS
THANKS
ENJOY SOA .. WAIT FOR NEXT
MAIL: ENG.MOHAMEDZAKARYA@GMAIL.COM

More Related Content

More from Mohamed Zakarya Abdelgawad

ITIL 4 Strategist Direct, Plan and Improve (DPI)
ITIL 4 Strategist Direct, Plan and Improve (DPI)ITIL 4 Strategist Direct, Plan and Improve (DPI)
ITIL 4 Strategist Direct, Plan and Improve (DPI)Mohamed Zakarya Abdelgawad
 
Architecture thinking w002 - Business Strategy Intro
Architecture thinking w002 - Business Strategy IntroArchitecture thinking w002 - Business Strategy Intro
Architecture thinking w002 - Business Strategy IntroMohamed Zakarya Abdelgawad
 
IT4IT - The Full Story for Digital Transformation - Part 2
IT4IT - The Full Story for Digital Transformation - Part 2IT4IT - The Full Story for Digital Transformation - Part 2
IT4IT - The Full Story for Digital Transformation - Part 2Mohamed Zakarya Abdelgawad
 
IT4IT - The Full Story for Digital Transformation - Part 1
IT4IT - The Full Story for Digital Transformation - Part 1IT4IT - The Full Story for Digital Transformation - Part 1
IT4IT - The Full Story for Digital Transformation - Part 1Mohamed Zakarya Abdelgawad
 

More from Mohamed Zakarya Abdelgawad (20)

Digital Practitioner Capability Context
Digital Practitioner Capability ContextDigital Practitioner Capability Context
Digital Practitioner Capability Context
 
DPBOK Foundation
DPBOK FoundationDPBOK Foundation
DPBOK Foundation
 
Certified Microservice Archtiect
Certified Microservice ArchtiectCertified Microservice Archtiect
Certified Microservice Archtiect
 
Certified Business Architect
Certified Business ArchitectCertified Business Architect
Certified Business Architect
 
ITIL 4 Strategist Direct, Plan and Improve (DPI)
ITIL 4 Strategist Direct, Plan and Improve (DPI)ITIL 4 Strategist Direct, Plan and Improve (DPI)
ITIL 4 Strategist Direct, Plan and Improve (DPI)
 
Architecture thinking w002 - Business Strategy Intro
Architecture thinking w002 - Business Strategy IntroArchitecture thinking w002 - Business Strategy Intro
Architecture thinking w002 - Business Strategy Intro
 
Architecture thinking w001
Architecture thinking w001Architecture thinking w001
Architecture thinking w001
 
Business Architecture Foundations
Business Architecture FoundationsBusiness Architecture Foundations
Business Architecture Foundations
 
Togaf 9.2 Introduction
Togaf 9.2 IntroductionTogaf 9.2 Introduction
Togaf 9.2 Introduction
 
Discover Your IT Career Path
Discover Your IT Career PathDiscover Your IT Career Path
Discover Your IT Career Path
 
ITIL V4 Foundation
ITIL V4 FoundationITIL V4 Foundation
ITIL V4 Foundation
 
SOA foundation - Generation 2
SOA foundation - Generation 2SOA foundation - Generation 2
SOA foundation - Generation 2
 
SOA Architect - Generation 2
SOA Architect - Generation 2SOA Architect - Generation 2
SOA Architect - Generation 2
 
IT4IT - The Full Story for Digital Transformation - Part 2
IT4IT - The Full Story for Digital Transformation - Part 2IT4IT - The Full Story for Digital Transformation - Part 2
IT4IT - The Full Story for Digital Transformation - Part 2
 
IT4IT - The Full Story for Digital Transformation - Part 1
IT4IT - The Full Story for Digital Transformation - Part 1IT4IT - The Full Story for Digital Transformation - Part 1
IT4IT - The Full Story for Digital Transformation - Part 1
 
IT4IT Foundation Certified
IT4IT Foundation CertifiedIT4IT Foundation Certified
IT4IT Foundation Certified
 
BPMN on One Page
BPMN on One PageBPMN on One Page
BPMN on One Page
 
SOA Next Generation V1.1
SOA Next Generation V1.1SOA Next Generation V1.1
SOA Next Generation V1.1
 
Ea games (chess lego) bundle edition
Ea games (chess   lego) bundle editionEa games (chess   lego) bundle edition
Ea games (chess lego) bundle edition
 
Archimate 3.0 Practitioner Certified
Archimate 3.0 Practitioner CertifiedArchimate 3.0 Practitioner Certified
Archimate 3.0 Practitioner Certified
 

Recently uploaded

Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

SOA PRINCIPLES : 1. Standarized Service Contract

  • 1. Principles OF SOAFrom knowledge To practice SUBMITTED BY : MOHAMED ZAKARYA
  • 2. AGENDA  Service orientation principles  Standardized Service Contract  Service Reusability  Service Discoverability  Service Composability  Service Loose Coupling  Service Abstraction  Service Autonomy  Service Statelessness  Thanks 
  • 6. SERVICE ORIENTATION PRINCIPLES Service Reusability Service contain agnostic logic that can be position as reusable enterprise resource. Standardized Service Contract Service in same inventory are in compliance of same design service contract standards. Service Composition Services are effective composition participants. Service Discoverability Service meta data available for discoverability and interpreted. Service Loose Coupling Contract decoupled from surrounding environment. Service Autonomy Services exercise a high level of control over their underlying runtime execution environment. Service Statelessness Services minimize resource consumption , reduce state information. Service Abstraction Contract contains only essential information , that is published to consumers.
  • 8. INTRODUCTION Fundamental role of this principle is To ensure the consistent expression of service capabilities and the overall purpose of the service as defined by the parent service context Standardized Service Contract Service in same inventory are in compliance of same design service contract standards.
  • 9. TECHNICAL WEB SERVICE CONTRACT Group of service description documents, each of which describes a part of the service. For example A Web service contract can be comprised of the following service description documents:  WSDL definition  XML schema definition  WS-Policy description
  • 10. SOA MUST SATISFY SLA A service-level agreement (SLA) is a formal contract between a service provider and a consumer that focus on :  Service availability  Performance  Traffic levels  Messages / queries per hour / minute / second  Response time  Rejected transactions  Errors
  • 11. ORIGIN OF SERVICE CONTRACT Interactions between two standalone software programs are based on exchange information between the programs that predefined by a formal , technical specification. This is what is expressed in a technical contract
  • 12. ABOUT THE PRINCIPLE Title Services share standardized contract Description Service in same inventory are in compliance of same design service contract standards. Goals Natural interoperability Reduce data transformation increases interpretability Implementation requirements Design standards need to take place before delivery of any service ( ensure standardization) Achieving standardized web service contract , requires “contract first” approach
  • 13. EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
  • 14. EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
  • 15. TYPES OF SERVICE CONTRACT STANDARDIZATION Functional Expression Data Representation Service Policy
  • 16. 1. STANDARDIZATION OF FUNCTIONAL SERVICE EXPRESSION Listing #1 Listing #2 seem very specific to this operation. More generic naming conventions and generic data type references. Apply functional expression standards
  • 17. 2. STANDARDIZATION OF SERVICE DATA REPRESENTATION
  • 18. 3. STANDARDIZATION OF SERVICE POLICIES
  • 19. FUNCTION EXPRESSION / DATA REPRESENTATION STANDARD
  • 20. FUNCTIONAL EXPRESSION / SERVICE DATA REPRESENTATION DEMO Team work Absher demo
  • 21. CONTRACT FIRST APPROACH DEMO Using contract first tool
  • 22. UNIFORM CONTRACT Uniform Contract is the name of a candidate design pattern (REST-inspired pattern) How can services share a common and standardized contract?
  • 23. UNIFORM CONTRACT ELEMENTS 1. Resource identifier syntax : How can we express where is the data being transferred to or from? 2. Methods : What are the protocol mechanisms used to transfer the data? 3. Media types : What type of data is being transferred?
  • 24. 1. RESOURCE IDENTIFIER SYNTAX How can we express where is the data being transferred to or from? • standardizes the syntax used to express resource identifiers • Resource identifiers are generally specific to a REST service • The generic syntax for URIs is as follows: {scheme}://{authority}{path}?{query} http://invoices.example.com/invoices?total-less-than=100USD#page2
  • 25. 2. METHODS What are the protocol mechanisms used to transfer the data? Methods are usually not specific to one rest service Ex: GET /customer?ID=C081 HTTP/1.1
  • 27. 3. MEDIA TYPE  specify the types of data a given method can process  A media type can therefore be generic and based on a pre-defined industry media type (such as XML and JPG)  Ex : application/vnd.com.example.invoice+xml What type of data is being transferred?
  • 28. REST SERVICE CONTRACT / REST SERVICE CAPABILITY REST service capability Can be considered a combination of a uniform contact method and resource identifier REST service contract Establishes a functional context that encapsulates one or more REST service capabilities associated with the functional context Non Rest service contract VS rest service contract
  • 29. SAMPLE EXAM QUESTIONS Q1 : The design principle most associated with an approach whereby the technical interface or contract of a service is designed prior to its underlying logic is: Select the correct answer. A. Service Autonomy B. Service Reusability C. Service Composability D. Standardized Service Contract Answer : D
  • 30. SAMPLE EXAM QUESTIONS Q2: Fill in the blank for the following definition for the Standardized Service Contract design principle: "Services within the same ___________are in compliance with the same contract design standards." Select the correct answer. A. service activity B. service inventory C. state D. message path Answer : B
  • 31. SAMPLE EXAM QUESTIONS Q3 : Which of the following statements does not make sense? Select the correct answer. A. By applying the Standardized Service Contract principle, the amount of data model transformation logic required by my solution has been reduced. B. By applying the Standardized Service Contract principle, the amount of data model transformation logic required by my solution has been increased. C. It is thanks to the Standardized Service Contract principle that we have been able to better isolate our services so as to reduce their dependency on shared databases. D. Since the design standards created in support of the Standardized Service Contract principle have been more widely enforced, I've noticed the same data models being shared by more services. Answer : B,C
  • 34. THANKS ENJOY SOA .. WAIT FOR NEXT MAIL: ENG.MOHAMEDZAKARYA@GMAIL.COM

Editor's Notes

  1. 6 main parts of presentation !
  2. central to just about everything services do. contracts are also core architectural components of service-oriented solutions
  3. Terms of engagement, providing technical constraints and requirements as well as any semantic information the service owner wishes to make public. A service contract is always comprised of one or more technical service descriptions designed for runtime consumption + non technical documents like SLA What : operations How : binding Where : endpoints
  4. technical contract may be comprised of the database protocol and a predefined query syntax or language Each provides a technical interface that can be accessed by any compatible program (API) Consumer components require local representations of the contracts (called proxies) to interact with components located on different servers.
  5. Natural Interoperability Service designed to be naturally compatible, no effort need for integration Reduce data transformation because consistent data models are used for information exchange. purpose and capabilities of services to be more easily and intuitively understood
  6. Demo on contract fist approach using (WSCF tool) Create data schema of employee Create contract schema of employee Generate wsdl schema of employee Generate web service code of employee
  7. Demo on contract fist approach using (WSCF tool) Create data schema of employee Create contract schema of employee Generate wsdl schema of employee Generate web service code of employee
  8. Functional expression / service data representation standards
  9. Functional expression / service data representation standards
  10. service data representation standards
  11. Service policies standards
  12. Schema centralization Tracking-Trace schemas
  13. Functional expression / service data representation demo خدمات ابشر للمواطنين والمقيمين خاصة خدمات الجوازات المرور
  14. Demo on contract fist approach using (WSCF.blue V1.0.13) // xml schema , xml Create data schema of employee Create contract schema of employee Generate wsdl schema of employee Generate web service code of employee
  15. http://serviceorientation.com/soaglossary/uniform_contract
  16. Function provided by a uniform contract to process resource identifiers The uniform contract establishes a set of methods that are expected to be reused by services within a given collection or inventory.