soa principles : 1. standarized service contract
TRANSCRIPT
![Page 1: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/1.jpg)
Principles OF
SOA From knowledge To practice
SUBMITTED BY : MOHAMED ZAKARYA
![Page 2: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/2.jpg)
AGENDA
Service orientation principles
Standardized Service Contract Service Reusability Service Discoverability Service Composability Service Loose Coupling Service Abstraction Service Autonomy Service Statelessness Thanks
![Page 3: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/3.jpg)
PART 1
SERVICE ORIENTATION
PRINCIPLES
![Page 4: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/4.jpg)
DAY1 TERMS REVIEW
![Page 5: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/5.jpg)
SERVICE ORIENTATION PRINCIPLES
Standardized Service
Contract
ServiceReusability
ServiceComposability
ServiceAutonomy
Service Loose
Coupling
Service Statelessness
ServiceAbstraction
ServiceDiscoverability
![Page 6: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/6.jpg)
SERVICE ORIENTATION PRINCIPLES
Service ReusabilityService contain agnostic logic that can be position as reusable enterprise resource.
Standardized Service ContractService in same inventory are in compliance of same design service contract standards.
Service CompositionServices are effective composition participants.
Service DiscoverabilityService meta data available for discoverability and interpreted.
Service Loose CouplingContract decoupled from surrounding environment.
Service AutonomyServices exercise a high level of control over their underlying runtime execution environment.
Service StatelessnessServices minimize resource consumption , reduce state information.
Service AbstractionContract contains only essential information , that is published to consumers.
![Page 7: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/7.jpg)
PART 1
STANDARDIZED
SERVICE
CONTRACT
![Page 8: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/8.jpg)
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 ContractService in same inventory are in compliance of same design service contract standards.
![Page 9: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/9.jpg)
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
![Page 10: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/10.jpg)
ABOUT THE PRINCIPLE
TitleServices share standardized contract
DescriptionService in same inventory are in compliance of same design service contract standards.
Goals
Natural interoperability
Reduce datatransformation
increases interpretability
Implementation requirementsAchieving standardized web service contract , requires “contract first” approach
![Page 11: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/11.jpg)
EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
![Page 12: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/12.jpg)
EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
![Page 13: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/13.jpg)
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
![Page 14: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/14.jpg)
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
![Page 15: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/15.jpg)
FUNCTION EXPRESSION / DATA REPRESENTATION STANDARD
![Page 16: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/16.jpg)
FUNCTIONAL EXPRESSION / SERVICE DATA REPRESENTATION DEMO
Team work Absher demo
![Page 17: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/17.jpg)
CONTRACT FIRST APPROACH DEMO
Using contract first tool
![Page 18: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/18.jpg)
UNIFORM CONTRACT
Uniform Contract is the name of a candidate design pattern (REST-inspired pattern)How can services share a common and standardized contract?
![Page 19: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/19.jpg)
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?
![Page 20: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/20.jpg)
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
![Page 21: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/21.jpg)
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
![Page 22: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/22.jpg)
2. METHODS EXAMPLE
![Page 23: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/23.jpg)
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?
![Page 24: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/24.jpg)
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
![Page 25: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/25.jpg)
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
![Page 26: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/26.jpg)
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
![Page 27: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/27.jpg)
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
![Page 28: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/28.jpg)
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/
![Page 29: SOA PRINCIPLES : 1. Standarized Service Contract](https://reader037.vdocument.in/reader037/viewer/2022110108/58eecabb1a28abed258b45ab/html5/thumbnails/29.jpg)
ANY QUESTIONS