SOA PRINCIPLES : 1. Standarized Service Contract
-
Upload
mohamed-zakarya -
Category
Technology
-
view
7 -
download
2
Transcript of SOA PRINCIPLES : 1. Standarized Service Contract
Principles OF
SOA From 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
ServiceReusability
ServiceComposability
ServiceAutonomy
Service Loose
Coupling
Service Statelessness
ServiceAbstraction
ServiceDiscoverability
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.
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 ContractService in same inventory are in compliance of same design service contract standards.
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
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
EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
EXAMPLE : REDUCE DATA TRANSFORMATION GOAL
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
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
THANKSENJOY SOA .. WAIT FOR NEXT
MAIL: [email protected]