34
Principles OF SOA From knowledge To practice SUBMITTED BY : MOHAMED ZAKARY

SOA PRINCIPLES :2. Service Reusability

Embed Size (px)

Citation preview

Page 1: SOA PRINCIPLES :2. Service Reusability

Principles OF

SOA From knowledge To practice

SUBMITTED BY : MOHAMED ZAKARYA

Page 2: SOA PRINCIPLES :2. Service Reusability

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 :2. Service Reusability

PART 1

SERVICE ORIENTATION

PRINCIPLES

Page 4: SOA PRINCIPLES :2. Service Reusability

SERVICE ORIENTATION PRINCIPLES

Standardized Service

Contract

ServiceReusability

ServiceComposability

ServiceAutonomy

Service Loose

Coupling

Service Statelessness

ServiceAbstraction

ServiceDiscoverability

Page 5: SOA PRINCIPLES :2. Service Reusability

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 6: SOA PRINCIPLES :2. Service Reusability

PART 1

SERVICE

REUSABILITY

Page 7: SOA PRINCIPLES :2. 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

Page 8: SOA PRINCIPLES :2. Service Reusability

REUSABILITY IN REAL WORLD

Page 9: SOA PRINCIPLES :2. Service Reusability

INTRODUCTION

Page 10: SOA PRINCIPLES :2. Service Reusability

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

Page 11: SOA PRINCIPLES :2. Service Reusability

REUSE ACHIEVE SERVICE ORIENTED COMPUTING GOALS

Increased Organizational Agility Rapid delivery , New and changing business requirements can be fulfilled rapidly

Page 12: SOA PRINCIPLES :2. Service Reusability

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

Page 13: SOA PRINCIPLES :2. Service Reusability

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

Page 14: SOA PRINCIPLES :2. Service Reusability

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

Page 15: SOA PRINCIPLES :2. Service Reusability

MEASURING SERVICE REUSABILITY

Page 16: SOA PRINCIPLES :2. 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?)

Page 17: SOA PRINCIPLES :2. Service Reusability

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

Page 18: SOA PRINCIPLES :2. Service Reusability

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

Page 19: SOA PRINCIPLES :2. Service Reusability

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

Page 20: SOA PRINCIPLES :2. Service Reusability

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,

Page 21: SOA PRINCIPLES :2. Service Reusability

REUSE & AGNOSTIC SERVICES

Page 22: SOA PRINCIPLES :2. Service Reusability

REUSE & SERVICE INVENTORY BLUEPRINT

Page 23: SOA PRINCIPLES :2. Service Reusability

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

Page 24: SOA PRINCIPLES :2. Service Reusability

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

Page 25: SOA PRINCIPLES :2. Service Reusability

LOGIC CENTRALIZATION & CONTRACT CENTRALIZATION

Page 26: SOA PRINCIPLES :2. Service Reusability

LOGIC CENTRALIZATION & CONTRACT CENTRALIZATION

Central entry points into central bodies of logic

Page 27: SOA PRINCIPLES :2. Service Reusability

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

Page 28: SOA PRINCIPLES :2. Service Reusability

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

Page 29: SOA PRINCIPLES :2. Service Reusability

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

Page 30: SOA PRINCIPLES :2. Service Reusability

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

Page 31: SOA PRINCIPLES :2. Service Reusability

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

Page 32: SOA PRINCIPLES :2. Service Reusability

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 33: SOA PRINCIPLES :2. Service Reusability

ANY QUESTIONS

Page 34: SOA PRINCIPLES :2. Service Reusability

THANKSENJOY SOA .. WAIT FOR NEXT

MAIL: [email protected]