soa principles : 3.service discoverability
TRANSCRIPT
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
INTRODUCTION
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
SERVICE
DISCOVERABILITY
REVIEW DAY 2
TERM
Service oriented computing Service orientation Service oriented architecture
Solution logic Service Service candidate
Service capability Service capability candidate Service composition
Service inventory domain service inventory Enterprise service inventory
integration Interoperability Service model
Entity service Utility service Task service
Service contract SLA WSDL – Schema
Data transformation Service reusability Tactical reusability
Target reusability Complete reusability Agnostic logic
Logic centralization Contract centralization Service provider / consumer
INTRODUCTION
Service DiscoverabilityService meta data available for discoverability and interpreted.
Discovery helps us determine whether the automation requirements we need to fulfill already exist within a service inventory.
Discovery definition : process of searching for and finding solution logic within a specified environment.
DISCOVERY REQUIREMENTS
Information about resources(Meta Information)
Clearly documented
centrally stored
Accurately Defined
Effectivelysearched
Enable Access
Clearlyunderstood
INTERPRETABILITY PROCESS
SERVICE REGISTRY
The interpretation process follows the discovery process and consists of
1. Assessment : المخزن في قدامك الي تقييم
2. Ultimately : مالئمة االكثر تع8رف عشان بالتفاصيل انزل
3. Selection : النهاية في اختار
SERVICE REGISTRY
ABOUT THE PRINCIPLE
TitleServices are discoverable
DescriptionServices are supplemented with communicative meta data by which they can be effectively discovered and interpreted.
Goals
Implementation requirementsRecord service meta data information in standard way
Discoverable resources within the enterprise
Purpose of service , capabilities clrearly expressed
UDDI
UDDI as part of the first-generation Web services platform for service discovery
UDDI DATA STRUCTURE
UDDI DATA STRUCTURE
Business Entityprovider of web services ( company , contract information , industry category)
Business Serviceindividual web service provided by the business entity
Binding Template ** represents a specific instance of a service **technical descriptions of the web services represented by the business service structurespecific service information ex. access point.
Publisher assertionrelationship structure of two or more business entities
UDDI DATA STRUCTURE
tModel ** represents an abstract service type**way of describing the various business, service, and template structures stored within the UDDI registry ( like wsdl)
tModels can be used to
• represent interfaces,
• represent classification information which can then be added into interface
• tModels to make search easier
• finally, used as namespaces to add more meanings into the UDDI data structure
UDDI DEMO
UDDI Demo
SERVICE INVENTORY & SERVICE REGISTRY
Design time discovery ( manual process of discovery by human)
Requires1. Central discovery mechanism
(service registry)2. Service contracts
runtime time discovery (discovery technologies like UDDI)
provide programmatic interfaces into service registry repositories.(dynamic discovery queries)
SERVICE DELIVERY STAGES OF DISCOVERY
DISCOVERABILITY AND OTHER PRINCIPLES
Service Discoverability and Standardized Service ContractService Discoverability can directly influence the definition of functional expression design standards that result from apply Standardized service contract
Service Discoverability and Service Abstraction
balance is required between discoverability and abstraction to ensure that we do not over-document the service contract with discoverability-related meta information
DISCOVERABILITY AND OTHER PRINCIPLES
Service Discoverability and Service composabilitykey success factor in carrying through effective design-time composition processes, when selecting potential composition members, locate and identify service to avoid redundant service logic when change come to parent business process, it is valuable to search across enterprise for new service and capabilities implemented since original version of composition is published
Service Discoverability and Service Reusabilityprimary purpose of emphasizing Service Discoverability is to support Service Reusability (effective Service Discoverability will have on realizing reuse)When expressing reusable functionality, we are encouraged to apply discoverability-related design Highly discoverable services have the best chance of being repeatedly reused
RISKS THAT MAY FACE DISCOVERABILITY
Post-Implementation Application of Discoverability When asked to document its meta information months after its original definition
Someone other than those who built the service is asked to provide this information instead
Team responsible for building the service , may be not the skilled communicators
Services need to be discoverable by a variety of IT professionals, including project managers, departmental managers, business analysts, and perhaps even external contractors
SERVICE PROFILE STRUCTURE
Standard template for documenting metadata about services
title descriptionService Name Name of servicePurpose (Short) A concise one sentence description of the service context and purpose.
Purpose (Detailed)
A full explanation of the service context and its functional boundary with as many details
Service Model Entity, Utility, TaskQoS Requirements
Like security , performance , availability and transaction requirements
Capabilities Table of (Exists , under development , planned) capabilitiesKeywords Keywords taken from inventory-level taxonomyVersion Version of service being documentedStatus Like ( analysis , contract design , development , production)Owner Details about service owner and contributors of this documentation
CAPABILITY PROFILE STRUCTURE
Standard template for documenting metadata about service capabilitiestitle descriptioncapability Name Name of servicePurpose description
A concise one sentence description of the service context and purpose.
logic description Step by step description of logic carried out by capabilityInput/output Input , output values and associated constraintsComposition role Role if it is in service compositionComposition members capabilities
List of services (capabilities ) participate in composition
QoS Requirements
quality of service details Like security , performance , availability and transaction requirements
Keywords Keywords taken from inventory-level taxonomyVersion Version of capability being documentedStatus capability have status of modeling stagesOwner Details about capability owner ( mostly same owner of service)
FUNCTIONAL EXPRESSION / SERVICE DATA REPRESENTATION DEMO
Team work service profile
MEASURING SERVICE DISCOVERABILITY
1. functional meta information been documented in plain English
2. functional meta information been clearly expressed as part of the service contract for discoverability purposes
3. quality of service information been documented in non-technical English
4. quality of service meta information been clearly expressed as part of the service contract or a formal SLA
5. service profile document, or service registry record created
6. service profile/registry record contain all relevant functional meta information
7. service profile/registry record contain all relevant quality of service meta information
8. business subject matter experts contributed to the definition of business centric discoverability meta information
9. discoverability meta documentation been subjected to standards and conventions
10. discoverability meta documentation been reviewed and refined by a communications expert
DISCOVERABILITY CONTENT LEVEL
negligible discoverability content (none): 2- fewer answered questions
partial discoverability content: 7-10 question answered
complete discoverability content: complete checklist answered
DISCOVERABILITY AND OTHER PRINCIPLES
SAMPLE EXAM QUESTIONS
Q1: Which service-orientation principle influences the content published about services and further helps avoid the misinterpretation of service contracts? Select the correct answer.
A. Service Statelessness B. Service Discoverability C. Service Autonomy D. None of the above.
Answer : B
SAMPLE EXAM QUESTIONS
Q2:The Service Abstraction principle emphasizes the need to reveal as much of the underlying details of a service as possible in order to support the Service Discoverability principle in its goal of maximizing the quantity of published information about a service. Select the correct answer.
A. True B. False
Answer : B
SAMPLE EXAM QUESTIONS
Q3:Besides the Standardized Service Contract principle, which of the following service-orientation principles are also primarily focused on the design of the service contract? SELECT ALL THAT APPLY
A. Service Autonomy B. Service Statelessness C. Service Discoverability D. Service Abstraction
Answer : C,D
SAMPLE EXAM QUESTIONS
Q4:Fill in the blanks for the following definition of the Service Discoverability design principle: "Services are supplemented with communicative metadata by which they can be effectively ___________ and ___________." Select the correct answer.
A. designed, discovered B. discovered, interpreted C. discovered, refactored D. discovered, deployed Answer: B
Answer : B
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]