SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
A Study on the Taxonomy of
Service Antipatterns
Francis Palma and Naouel Moha
PPAP 2015, Montreal, Canada
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Service-based Systems (SBSs)
“Service-based Systems (SBSs) are built on top of SOA principles
and are composed of services implemented with heterogeneous
technologies as their building blocks” [1]
A Study on the Taxonomy of Service Antipatterns 2
[1] Francis Palma, Mathieu Nayrolles, Naouel Moha, Yann-Gaël Guéhéneuc, Benoit Baudry, and Jean-Marc Jézéquel, SOA Antipatterns:
An Approach for their Specification and Detection, International Journal of Cooperative Information Systems (IJCIS, 2013).
- SOAP Web Services
- SCA Systems
- REST Services, and so on…
Service Antipatterns
Multi Service Tiny Service
“A common solution to a recurring problem that is usually ineffective and
highly counterproductive" [Andrew Koenig]
A Study on the Taxonomy of Service Antipatterns 3
Why their Detections are Important?
 to assess the design and quality of service of SBSs
 to ease the maintenance and evolution of SBSs
An in-depth understanding and relationships
among different service antipatterns is the first
and crucial step to perform their detection
A Study on the Taxonomy of Service Antipatterns 4
Benefits of Taxonomy
(1) assists in the specification and detection of service
antipatterns
(2) reveals the relationships among various groups of
service antipatterns
(3) groups together antipatterns that are fundamentally
related
(4) provides an overview of various system-level design
problems, etc.
A Study on the Taxonomy of Service Antipatterns 5
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Related Work
According to Fowler:
“a code smell is a
surface indication
that usually
corresponds to a
deeper problem in
the system”
6
Related Work
According to Fowler:
“a code smell is a
surface indication
that usually
corresponds to a
deeper problem in
the system”
Related Work
6
According to Fowler:
“a code smell is a
surface indication
that usually
corresponds to a
deeper problem in
the system”
Related Work
 previous contributions addressed OO code/design smells
 service smells/antipatterns (in the service domain) holds the
same notion to OO smells/antipatterns, but at the service-level
- service is coarser-grained and at higher-level of
abstraction than OO classes
 no taxonomy is proposed for service antipatterns in the literature
A Study on the Taxonomy of Service Antipatterns 7
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Catalog of Service Antipatterns
Online
resources,
Articles:
Books
A Study on the Taxonomy of Service Antipatterns 8
Catalog of Service Antipatterns
13 SCA-specific antipatterns
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
13 SCA-specific antipatterns
1. Multi Service
2. Tiny Service
3. Sand Pile
4. Chatty Service
5. The Knot
6. Nobody Home
7. Duplicated Service
8. Bottleneck Service
9. Service Chain
10. Data Service
11. God Component
12. Bloated Service
13. Stovepipe Service
10 Web service-specific antipatterns
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
10 Web service-specific antipatterns
1. God Object Web Service
2. Fine Grained Web Service
3. Ambiguous Name
4. Duplicated Web Service
5. Chatty Web Service
6. Low Cohesive Operations
7. Redundant Port-types
8. Maybe It is Not RPC
9. Data Web Service
10. CRUDy Interface
A Study on the Taxonomy of Service Antipatterns 9
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Classification of Service Antipatterns
 Classification of service antipatterns in two categories:
- Existential
- Intra-service (e.g., Multi Service)
- Inter-service (e.g., Service Chain)
- Analytical
- Static service antipatterns (e.g., Low Cohesive Operation)
- Dynamic service antipatterns (e.g., Bottleneck Service)
- Compound service antipatterns (e.g., Chatty Web Service)
 Service smells
- indicators of the presence of service antipatterns in SBSs
- lower-level design problems than antipatterns
- can be classified as measurable, structural, or lexical
A Study on the Taxonomy of Service Antipatterns 10
Classification of Service Smells in Web Services
A Study on the Taxonomy of Service Antipatterns 11
Classification of Service Smells in SCA
A Study on the Taxonomy of Service Antipatterns 12
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Relationships among Service Antipatterns
measurable, structural,
and lexical properties
service smells operator service antipatterns connector
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Proposed Service Metrics
Static
vs.
Dynamic
Structural
vs.
Behavioral
Web services
vs.
SCA
vs.
Both
A Study on the Taxonomy of Service Antipatterns 14
Detection of Service Antipatterns
 Step 1 (Specification):
- from metrics to metrics-based rule cards
 Step 2 (Generation)
- from rule cards to automatic generation of detection
algorithms
 Step 3 (Detection)
- apply detection algorithms on SBSs
A Study on the Taxonomy of Service Antipatterns 15
Outline
- Introduction
- Related Work
- Current Catalog
- Classification of Service Antipatterns
- Relationships among Service Antipatterns
- Proposed Service Metrics
- Conclusion and Future Works
Conclusion
A Study on the Taxonomy of Service Antipatterns 16
Conclusion
A Study on the Taxonomy of Service Antipatterns 16
Conclusion
A Study on the Taxonomy of Service Antipatterns 16
Conclusion
A Study on the Taxonomy of Service Antipatterns 16
Future Work
 analyse the taxonomy of other SBSs technologies
- RESTful services or WCF services
 develop a taxonomy visualisation tool
- interactive dynamics for visual analysis
A Study on the Taxonomy of Service Antipatterns 17
Questions ?

Contenu connexe

Similaire à A Study on the Taxonomy of Service Antipatterns

Specification and Detection of SOA Antipatterns in Web Services
Specification and Detection of SOA Antipatterns in Web ServicesSpecification and Detection of SOA Antipatterns in Web Services
Specification and Detection of SOA Antipatterns in Web ServicesFrancis Palma
 
A Novel Testing Model for SOA based Services
A Novel Testing Model for SOA based ServicesA Novel Testing Model for SOA based Services
A Novel Testing Model for SOA based ServicesAbhishek Kumar
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...ijcseit
 
Web service discovery methods and techniques a review
Web service discovery methods and techniques a reviewWeb service discovery methods and techniques a review
Web service discovery methods and techniques a reviewijcseit
 
WEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEW
WEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEWWEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEW
WEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEWijcseit
 
Investigating the Change-proneness of Service Patterns and Antipatterns
Investigating the Change-proneness of Service Patterns and AntipatternsInvestigating the Change-proneness of Service Patterns and Antipatterns
Investigating the Change-proneness of Service Patterns and AntipatternsFrancis Palma
 
METRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEM
METRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEMMETRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEM
METRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEMijseajournal
 
Semantic web service discovery approaches
Semantic web service discovery approachesSemantic web service discovery approaches
Semantic web service discovery approachesIJCSES Journal
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHYSERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHYijwscjournal
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY ijwscjournal
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHYSERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHYijwscjournal
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY ijwscjournal
 
Web Services Discovery and Recommendation Based on Information Extraction and...
Web Services Discovery and Recommendation Based on Information Extraction and...Web Services Discovery and Recommendation Based on Information Extraction and...
Web Services Discovery and Recommendation Based on Information Extraction and...ijwscjournal
 
Detection of SOA Antipatterns
Detection of SOA AntipatternsDetection of SOA Antipatterns
Detection of SOA AntipatternsFrancis Palma
 
M.Phil Computer Science Server Computing Projects
M.Phil Computer Science Server Computing ProjectsM.Phil Computer Science Server Computing Projects
M.Phil Computer Science Server Computing ProjectsVijay Karan
 

Similaire à A Study on the Taxonomy of Service Antipatterns (20)

11 69-81
11 69-8111 69-81
11 69-81
 
Ecsa14.ppt
Ecsa14.pptEcsa14.ppt
Ecsa14.ppt
 
Specification and Detection of SOA Antipatterns in Web Services
Specification and Detection of SOA Antipatterns in Web ServicesSpecification and Detection of SOA Antipatterns in Web Services
Specification and Detection of SOA Antipatterns in Web Services
 
Ecsa14.ppt
Ecsa14.pptEcsa14.ppt
Ecsa14.ppt
 
A Novel Testing Model for SOA based Services
A Novel Testing Model for SOA based ServicesA Novel Testing Model for SOA based Services
A Novel Testing Model for SOA based Services
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...
 
Web service discovery methods and techniques a review
Web service discovery methods and techniques a reviewWeb service discovery methods and techniques a review
Web service discovery methods and techniques a review
 
WEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEW
WEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEWWEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEW
WEB SERVICE DISCOVERY METHODS AND TECHNIQUES: A REVIEW
 
Soca14.ppt
Soca14.pptSoca14.ppt
Soca14.ppt
 
Soca14.ppt
Soca14.pptSoca14.ppt
Soca14.ppt
 
Investigating the Change-proneness of Service Patterns and Antipatterns
Investigating the Change-proneness of Service Patterns and AntipatternsInvestigating the Change-proneness of Service Patterns and Antipatterns
Investigating the Change-proneness of Service Patterns and Antipatterns
 
METRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEM
METRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEMMETRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEM
METRIC-BASED FRAMEWORK FOR TESTING & EVALUATION OF SERVICE-ORIENTED SYSTEM
 
Semantic web service discovery approaches
Semantic web service discovery approachesSemantic web service discovery approaches
Semantic web service discovery approaches
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHYSERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHYSERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
 
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
SERVICE SELECTION BASED ON DOMINANT ROLE OF THE CHOREOGRAPHY
 
Web Services Discovery and Recommendation Based on Information Extraction and...
Web Services Discovery and Recommendation Based on Information Extraction and...Web Services Discovery and Recommendation Based on Information Extraction and...
Web Services Discovery and Recommendation Based on Information Extraction and...
 
Detection of SOA Antipatterns
Detection of SOA AntipatternsDetection of SOA Antipatterns
Detection of SOA Antipatterns
 
M.Phil Computer Science Server Computing Projects
M.Phil Computer Science Server Computing ProjectsM.Phil Computer Science Server Computing Projects
M.Phil Computer Science Server Computing Projects
 

Plus de Francis Palma

Using Interactive GA for Requirements Prioritization
Using Interactive GA for Requirements PrioritizationUsing Interactive GA for Requirements Prioritization
Using Interactive GA for Requirements PrioritizationFrancis Palma
 
Using Interactive Genetic Algorithm for Requirements Prioritization
Using Interactive Genetic Algorithm for Requirements PrioritizationUsing Interactive Genetic Algorithm for Requirements Prioritization
Using Interactive Genetic Algorithm for Requirements Prioritization Francis Palma
 
Interactive Requirements Prioritization Using Search Based Optimization Techn...
Interactive Requirements Prioritization Using Search Based Optimization Techn...Interactive Requirements Prioritization Using Search Based Optimization Techn...
Interactive Requirements Prioritization Using Search Based Optimization Techn...Francis Palma
 
Specification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsSpecification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsFrancis Palma
 
Recommendation System for Design Patterns in Software Development
Recommendation System for Design Patterns in Software DevelopmentRecommendation System for Design Patterns in Software Development
Recommendation System for Design Patterns in Software DevelopmentFrancis Palma
 
Unifying Service Oriented Technologies for the Specification and Detection of...
Unifying Service Oriented Technologies for the Specification and Detection of...Unifying Service Oriented Technologies for the Specification and Detection of...
Unifying Service Oriented Technologies for the Specification and Detection of...Francis Palma
 
Specification and Detection of Business Process Antipatterns
Specification and Detection of Business Process AntipatternsSpecification and Detection of Business Process Antipatterns
Specification and Detection of Business Process AntipatternsFrancis Palma
 
Are RESTful APIs Well-designed? Detection of their Linguistic (Anti)Patterns
Are RESTful APIs Well-designed? Detection of their Linguistic (Anti)PatternsAre RESTful APIs Well-designed? Detection of their Linguistic (Anti)Patterns
Are RESTful APIs Well-designed? Detection of their Linguistic (Anti)PatternsFrancis Palma
 
Detection of REST Patterns and Antipatterns: A Heuristics-based Approach
Detection of REST Patterns and Antipatterns: A Heuristics-based ApproachDetection of REST Patterns and Antipatterns: A Heuristics-based Approach
Detection of REST Patterns and Antipatterns: A Heuristics-based ApproachFrancis Palma
 
Detection of Process Antipatterns: An BPEL Perspective
Detection of Process Antipatterns: An BPEL PerspectiveDetection of Process Antipatterns: An BPEL Perspective
Detection of Process Antipatterns: An BPEL PerspectiveFrancis Palma
 
Specification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsSpecification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsFrancis Palma
 

Plus de Francis Palma (11)

Using Interactive GA for Requirements Prioritization
Using Interactive GA for Requirements PrioritizationUsing Interactive GA for Requirements Prioritization
Using Interactive GA for Requirements Prioritization
 
Using Interactive Genetic Algorithm for Requirements Prioritization
Using Interactive Genetic Algorithm for Requirements PrioritizationUsing Interactive Genetic Algorithm for Requirements Prioritization
Using Interactive Genetic Algorithm for Requirements Prioritization
 
Interactive Requirements Prioritization Using Search Based Optimization Techn...
Interactive Requirements Prioritization Using Search Based Optimization Techn...Interactive Requirements Prioritization Using Search Based Optimization Techn...
Interactive Requirements Prioritization Using Search Based Optimization Techn...
 
Specification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsSpecification and Detection of SOA Antipatterns
Specification and Detection of SOA Antipatterns
 
Recommendation System for Design Patterns in Software Development
Recommendation System for Design Patterns in Software DevelopmentRecommendation System for Design Patterns in Software Development
Recommendation System for Design Patterns in Software Development
 
Unifying Service Oriented Technologies for the Specification and Detection of...
Unifying Service Oriented Technologies for the Specification and Detection of...Unifying Service Oriented Technologies for the Specification and Detection of...
Unifying Service Oriented Technologies for the Specification and Detection of...
 
Specification and Detection of Business Process Antipatterns
Specification and Detection of Business Process AntipatternsSpecification and Detection of Business Process Antipatterns
Specification and Detection of Business Process Antipatterns
 
Are RESTful APIs Well-designed? Detection of their Linguistic (Anti)Patterns
Are RESTful APIs Well-designed? Detection of their Linguistic (Anti)PatternsAre RESTful APIs Well-designed? Detection of their Linguistic (Anti)Patterns
Are RESTful APIs Well-designed? Detection of their Linguistic (Anti)Patterns
 
Detection of REST Patterns and Antipatterns: A Heuristics-based Approach
Detection of REST Patterns and Antipatterns: A Heuristics-based ApproachDetection of REST Patterns and Antipatterns: A Heuristics-based Approach
Detection of REST Patterns and Antipatterns: A Heuristics-based Approach
 
Detection of Process Antipatterns: An BPEL Perspective
Detection of Process Antipatterns: An BPEL PerspectiveDetection of Process Antipatterns: An BPEL Perspective
Detection of Process Antipatterns: An BPEL Perspective
 
Specification and Detection of SOA Antipatterns
Specification and Detection of SOA AntipatternsSpecification and Detection of SOA Antipatterns
Specification and Detection of SOA Antipatterns
 

Dernier

The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)codyslingerland1
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsDianaGray10
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applicationsnooralam814309
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch TuesdayIvanti
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Alkin Tezuysal
 
IT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced ComputingIT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced ComputingMAGNIntelligence
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxNeo4j
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxKaustubhBhavsar6
 
Keep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES LiveKeep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES LiveIES VE
 
TrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie WorldTrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie WorldTrustArc
 
Planetek Italia Srl - Corporate Profile Brochure
Planetek Italia Srl - Corporate Profile BrochurePlanetek Italia Srl - Corporate Profile Brochure
Planetek Italia Srl - Corporate Profile BrochurePlanetek Italia Srl
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FESTBillieHyde
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdfThe Good Food Institute
 
Where developers are challenged, what developers want and where DevEx is going
Where developers are challenged, what developers want and where DevEx is goingWhere developers are challenged, what developers want and where DevEx is going
Where developers are challenged, what developers want and where DevEx is goingFrancesco Corti
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2DianaGray10
 
UiPath Studio Web workshop series - Day 1
UiPath Studio Web workshop series  - Day 1UiPath Studio Web workshop series  - Day 1
UiPath Studio Web workshop series - Day 1DianaGray10
 
From the origin to the future of Open Source model and business
From the origin to the future of  Open Source model and businessFrom the origin to the future of  Open Source model and business
From the origin to the future of Open Source model and businessFrancesco Corti
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTxtailishbaloch
 
Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Muhammad Tiham Siddiqui
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4DianaGray10
 

Dernier (20)

The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projects
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applications
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch Tuesday
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
 
IT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced ComputingIT Service Management (ITSM) Best Practices for Advanced Computing
IT Service Management (ITSM) Best Practices for Advanced Computing
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptx
 
Keep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES LiveKeep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES Live
 
TrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie WorldTrustArc Webinar - How to Live in a Post Third-Party Cookie World
TrustArc Webinar - How to Live in a Post Third-Party Cookie World
 
Planetek Italia Srl - Corporate Profile Brochure
Planetek Italia Srl - Corporate Profile BrochurePlanetek Italia Srl - Corporate Profile Brochure
Planetek Italia Srl - Corporate Profile Brochure
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FEST
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf
 
Where developers are challenged, what developers want and where DevEx is going
Where developers are challenged, what developers want and where DevEx is goingWhere developers are challenged, what developers want and where DevEx is going
Where developers are challenged, what developers want and where DevEx is going
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2
 
UiPath Studio Web workshop series - Day 1
UiPath Studio Web workshop series  - Day 1UiPath Studio Web workshop series  - Day 1
UiPath Studio Web workshop series - Day 1
 
From the origin to the future of Open Source model and business
From the origin to the future of  Open Source model and businessFrom the origin to the future of  Open Source model and business
From the origin to the future of Open Source model and business
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
 
Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4
 

A Study on the Taxonomy of Service Antipatterns

  • 1. A Study on the Taxonomy of Service Antipatterns Francis Palma and Naouel Moha PPAP 2015, Montreal, Canada
  • 2. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 3. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 4. Service-based Systems (SBSs) “Service-based Systems (SBSs) are built on top of SOA principles and are composed of services implemented with heterogeneous technologies as their building blocks” [1] A Study on the Taxonomy of Service Antipatterns 2 [1] Francis Palma, Mathieu Nayrolles, Naouel Moha, Yann-Gaël Guéhéneuc, Benoit Baudry, and Jean-Marc Jézéquel, SOA Antipatterns: An Approach for their Specification and Detection, International Journal of Cooperative Information Systems (IJCIS, 2013). - SOAP Web Services - SCA Systems - REST Services, and so on…
  • 5. Service Antipatterns Multi Service Tiny Service “A common solution to a recurring problem that is usually ineffective and highly counterproductive" [Andrew Koenig] A Study on the Taxonomy of Service Antipatterns 3
  • 6. Why their Detections are Important?  to assess the design and quality of service of SBSs  to ease the maintenance and evolution of SBSs An in-depth understanding and relationships among different service antipatterns is the first and crucial step to perform their detection A Study on the Taxonomy of Service Antipatterns 4
  • 7. Benefits of Taxonomy (1) assists in the specification and detection of service antipatterns (2) reveals the relationships among various groups of service antipatterns (3) groups together antipatterns that are fundamentally related (4) provides an overview of various system-level design problems, etc. A Study on the Taxonomy of Service Antipatterns 5
  • 8. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 9. Related Work According to Fowler: “a code smell is a surface indication that usually corresponds to a deeper problem in the system” 6
  • 10. Related Work According to Fowler: “a code smell is a surface indication that usually corresponds to a deeper problem in the system”
  • 11. Related Work 6 According to Fowler: “a code smell is a surface indication that usually corresponds to a deeper problem in the system”
  • 12. Related Work  previous contributions addressed OO code/design smells  service smells/antipatterns (in the service domain) holds the same notion to OO smells/antipatterns, but at the service-level - service is coarser-grained and at higher-level of abstraction than OO classes  no taxonomy is proposed for service antipatterns in the literature A Study on the Taxonomy of Service Antipatterns 7
  • 13. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 14. Catalog of Service Antipatterns Online resources, Articles: Books A Study on the Taxonomy of Service Antipatterns 8
  • 15. Catalog of Service Antipatterns 13 SCA-specific antipatterns 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 13 SCA-specific antipatterns 1. Multi Service 2. Tiny Service 3. Sand Pile 4. Chatty Service 5. The Knot 6. Nobody Home 7. Duplicated Service 8. Bottleneck Service 9. Service Chain 10. Data Service 11. God Component 12. Bloated Service 13. Stovepipe Service 10 Web service-specific antipatterns 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 10 Web service-specific antipatterns 1. God Object Web Service 2. Fine Grained Web Service 3. Ambiguous Name 4. Duplicated Web Service 5. Chatty Web Service 6. Low Cohesive Operations 7. Redundant Port-types 8. Maybe It is Not RPC 9. Data Web Service 10. CRUDy Interface A Study on the Taxonomy of Service Antipatterns 9
  • 16. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 17. Classification of Service Antipatterns  Classification of service antipatterns in two categories: - Existential - Intra-service (e.g., Multi Service) - Inter-service (e.g., Service Chain) - Analytical - Static service antipatterns (e.g., Low Cohesive Operation) - Dynamic service antipatterns (e.g., Bottleneck Service) - Compound service antipatterns (e.g., Chatty Web Service)  Service smells - indicators of the presence of service antipatterns in SBSs - lower-level design problems than antipatterns - can be classified as measurable, structural, or lexical A Study on the Taxonomy of Service Antipatterns 10
  • 18. Classification of Service Smells in Web Services A Study on the Taxonomy of Service Antipatterns 11
  • 19. Classification of Service Smells in SCA A Study on the Taxonomy of Service Antipatterns 12
  • 20. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 21. Relationships among Service Antipatterns measurable, structural, and lexical properties service smells operator service antipatterns connector
  • 22. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 23. Proposed Service Metrics Static vs. Dynamic Structural vs. Behavioral Web services vs. SCA vs. Both A Study on the Taxonomy of Service Antipatterns 14
  • 24. Detection of Service Antipatterns  Step 1 (Specification): - from metrics to metrics-based rule cards  Step 2 (Generation) - from rule cards to automatic generation of detection algorithms  Step 3 (Detection) - apply detection algorithms on SBSs A Study on the Taxonomy of Service Antipatterns 15
  • 25. Outline - Introduction - Related Work - Current Catalog - Classification of Service Antipatterns - Relationships among Service Antipatterns - Proposed Service Metrics - Conclusion and Future Works
  • 26. Conclusion A Study on the Taxonomy of Service Antipatterns 16
  • 27. Conclusion A Study on the Taxonomy of Service Antipatterns 16
  • 28. Conclusion A Study on the Taxonomy of Service Antipatterns 16
  • 29. Conclusion A Study on the Taxonomy of Service Antipatterns 16
  • 30. Future Work  analyse the taxonomy of other SBSs technologies - RESTful services or WCF services  develop a taxonomy visualisation tool - interactive dynamics for visual analysis A Study on the Taxonomy of Service Antipatterns 17