soa principles :2. service reusability
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
SERVICE ORIENTATION
PRINCIPLES
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
REUSABILITY
INTRODUCTION
Service ReusabilityService contain agnostic logic that can be position as reusable enterprise resource.
Reuse in abstract : To get the most possible value out of each piece of software
Software program useful for more than just one single purpose
Something that is useful for a single purposewill provide value,
Something that is repeatedly usefulwill provide repeated value and is therefore a more attractive investment.
Reuse is a simple concept , but achieve reuse not easy
REUSABILITY IN REAL WORLD
INTRODUCTION
REUSE ACHIEVE SERVICE ORIENTED COMPUTING GOALS
Increased Return on Investment (ROI)Services are delivered and viewed as IT assets expected to provide repeated value, that will cover exceed cost of delivery and ownership
REUSE ACHIEVE SERVICE ORIENTED COMPUTING GOALS
Increased Organizational Agility Rapid delivery , New and changing business requirements can be fulfilled rapidly
SINGLE PURPOSE / MULTI PURPOSE
Single purpose :
Scope of usage is limited and predictable.
Over time , convert into silo applications
Straight forward
Multi purpose :
Design grows more complex
Take new considerations into account
Increased development effort toaccommodate all of scenarios associatedwith range of planned capabilities
ABOUT THE PRINCIPLE
TitleServices are reusable
DescriptionServices contain and express agnostic logic and can be positioned as reusable enterprise resources.
Goals
increase ROI Increase business agility
Realize agnosticservice model
ABOUT THE PRINCIPLE
Implementation requirements
Scalable Runtime Hosting Environment
Capable of high-to-extreme concurrent service usage
Solid Version Control System
Contracts representing reusable services
Service analysts and designers
with a high degree of subject matter expertise
high level of service development
structure the underlying logic into generic
MEASURING SERVICE REUSABILITY
REUSABILITY FACTORS AFFECT SERVICE DESIGN
How can we design the service to best support strategic goals , vision of enterprise?
Existing models, like service inventory blueprint (How does a service fit into service inventory , and how does it relate to other services?)
Current business requirements & common usage scenarios (Which requirements is a service expected to fulfill , and in expected future?)
Historical business patterns to predict future changes (how an organization carries out its lines of business?)
Existing legacy environments & upgrade or replacement plan (What types of service adapters or wrapper services will we be forced to work with or create?)
Urgency of service delivery requirements (What sacrifices will we need to make in order to fulfill high-priority tactical requirements?)
MEASURES OF PLANNED REUSE
Categories such as the following can be used to refer to or label services during analysisand design phases.
TacticalReusability
TargetedReusability
CompleteReusability
1. TACTICAL REUSABILITY
If project delivery requirements demand that services be developed and deployed as soon as possible , Then, Reuse efforts need to be concentrated on the immediate functional Requirements
Scope of the service-oriented analysis will be limited
2. TARGETED REUSABILITY
If a project team has the ability to deliver a service with functionality that provides features beyond what is immediately requiredThen, adds only extensions that have the highest degree of guaranteed reuse potential
Top of the list features are implemented , others added later
3. COMPLETE REUSABILITY
Based on the scope of the service boundary , equip the service with a complete range of functionality
This approach is only recommended if a well-defined service inventory blueprint exists,
REUSE & AGNOSTIC SERVICES
REUSE & SERVICE INVENTORY BLUEPRINT
MEASURE ACTUAL REUSE
The ultimate measure of accomplished reuse is how much a service actually is and has been used subsequent to its implementation.
This can be determined by analyzing the following statistics:
Allows us to judge the success of the service as an investmentAbility to calculate a relatively accurate return on the cost
Frequency of useThe frequency with which these service consumers have used the service.
Amount of ConsumersThe amount of service consumers that were built to use the service
SOA TERMINOLOGIES
TERM
Single purpose Multipurpose Agnostic
Enterprise resource Entity abstraction Utility abstraction
Entity service Utility service Task service
Tactical reusability Target reusability Complete reusability
LOGIC CENTRALIZATION & CONTRACT CENTRALIZATION
LOGIC CENTRALIZATION & CONTRACT CENTRALIZATION
Central entry points into central bodies of logic
SERVICE REUSABILITY DEMO
Company have 3 legacy applications doing the following
A. Application 11) Deal with individuals purchasing orders 2) Generate bills using individual billing Service3) Send sms promotions4) They can pay using sadad5) Mobile application for there offers
B.Application 2 1) Deal with suppliers , store management2) Containers of products to sell3) Generate billing using container billing service4) Deal with them via mail 5) supplier financials using visa credit card
C.Application 3 1) Create statistical reports ( per suppliers , individuals) for managers2) Measure branches sales quality
Please define agnostic services (entity , utility) , draw inventory blueprint , And define logic abstraction
SAMPLE EXAM QUESTIONS
Q1 : . Which of the following is not a benefit associated with silo-based application design? Select the correct answer.
A. The emphasis on fulfilling tactical (short-term) business requirements allows for a more predictable application delivery lifecycle.
B. The analysis and design of applications are easier because strategic (long-term) business requirements don't usually need to be taken into account.
C. The latest technology advancements can be leveraged by repeatedly building new applications from the ground up.
D. Applications are always inherently built for repeated reuse across silos.
Answer : D
SAMPLE EXAM QUESTIONS
Q2 . A(n) ___________in the extent to which the Service Reusability principle is applied to a service can result in a(n) ___________in the potential for the service to be repeatedly composed. SELECT ALL THAT APPLY
A. decrease, decrease
B. increase, decrease
C. decrease, increase
D. increase, increase
Answer : A,D
SAMPLE EXAM QUESTIONS
Q3 . Project Team A delivered 3 services and a month later Project Team B delivered 5 services. After an audit of the services delivered by these two project teams, it was determined that 3 of the services delivered by Project Team B contained redundant logic that already resides in 2 of the services originally delivered by Project Team A. The audit results are negative because it is considered undesirable to have redundant logic among services. Which service-orientation principle could have been applied to help avoid this result? Select the correct answer.
A. Service Statelessness B. Service Reusability C. Standardized Service Contract D. Service Abstraction
Answer : B
SAMPLE EXAM QUESTIONS
Q1 . Fill in the blank for the following definition of the Service Reusability design principle: "Services contain and express ___________logic and can be positioned as reusable enterprise resources." Select the correct answer.
A. non-agnostic
B. agnostic
C. distinct
D. new
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]