SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
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 ?

Más contenido relacionado

Similar a 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 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 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
 

Similar a 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
 
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
 
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 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 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
 

Más 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
 

Más 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
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 

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