Healthcare Services Specification Project The Business Case for Healthcare SOA Standards
Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu...
Transcript of Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu...
![Page 1: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/1.jpg)
1 LATECE , Département d'informatique, Université du Québec à
Montréal, Canada 2 Ptidej Team, DGIGL, École Polytechnique de Montréal, Canada
3 CESI.eXia, Ecole Supérieur d'Informatique, France
1,3 1,2 1 2
![Page 2: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/2.jpg)
Problem Context (1/2)
2/22
HTTP, SOAP, WSDL, UDDI, WS-Technologies
Service Based Systems (SBSs) evolve to fit new user requirements, execution
contexts:
- may degrade design and quality of service (QoS)
- may cause the appearance of common poor solutions:
Antipatterns
Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Service Requester
Service Provider
Service-based System
![Page 3: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/3.jpg)
Problem Context (2/2)
Examples of SOA Antipatterns:
Tiny Service: Small service with few methods which requires several coupled
services to complete an abstraction.
Multiservice: Implements a multitude of methods, is not easily reusable
because of low cohesion of its methods, is often unavailable due to overload
Tiny Service Multiservice
Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns 3/22
![Page 4: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/4.jpg)
Introduction : Contribution
With the goal to detect SOA Antipatterns in SBSs:
Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
- SODA (Service Oriented Detection for Antipatterns), a novel and innovative
approach
- SOFA (Service Oriented Framework for Antipatterns), a framework,
- to specify SOA antipatterns and detect them automatically
- to perform static and dynamic analysis
- SODA tool to perform detection using a Graphical User Interface (GUI)
SODA Approach
SOFA Framework
SODA tool
GUI
4/22
![Page 5: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/5.jpg)
SODA : Our Approach
SODA: Service Oriented Detection for Antipatterns
Textual
Description of
Antipatterns
1. S
pecif
icati
on
s
Rule
Card
2. G
en
era
tio
n
Detection
Algorithm
3.
Dete
cti
on
Suspicious
Services
Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
SBS Template
5/22
![Page 6: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/6.jpg)
Approach (7/9): Underlying Framework
1
Mathieu Nayrolles Specification and Detection of SOA Antipatterns
Main Components:
(1) Automated generation of detection algorithms
(2) Computation of static and dynamic metrics
(3) Specification of rules
SOFA : UNDERLYING FRAMEWORK (1/3)
6/22
![Page 7: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/7.jpg)
Approach (8/9): Underlying Framework
2
Mathieu Nayrolles Specification and Detection of SOA Antipatterns
Main Components:
(1) Automated generation of detection algorithms
(2) Computation of all static and dynamic metrics
(3) Specification of rules
SOFA : UNDERLYING FRAMEWORK (2/3)
7/22
![Page 8: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/8.jpg)
Approach (9/9): Underlying Framework
3
Mathieu Nayrolles Specification and Detection of SOA Antipatterns
Main Components:
(1) Automated generation of detection algorithms
(2) Computation of all static and dynamic metrics
(3) Specification of rules
SOFA : UNDERLYING FRAMEWORK (3/3)
8/22
![Page 9: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/9.jpg)
SODA Tool: Principal Features
Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
- Direct import of an scripted SBS
- Straight forward detection interface
- Expose all the detection details, e.g., metric values, rule cards and textual
descriptions of antipatterns
- Supports both well-known metric based & execution traces based analysis
- Exposes all the execution traces, association rules and related details
9/22
![Page 10: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/10.jpg)
Associations Rules
2 layers of abstraction : - By service : ServA -> ServB - By methods : ServA.mA->ServB.mB
10/22
![Page 11: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/11.jpg)
SODA Tool (1/7)
11 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Enlists the SOA
antipatterns
that can be
detected.
11/22
![Page 12: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/12.jpg)
SODA Tool (2/7)
12 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Textual
description
for selected
antipattern.
12/22
![Page 13: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/13.jpg)
SODA Tool (3/7)
13 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Corresponding
rule card.
13/22
![Page 14: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/14.jpg)
SODA Tool (3/7): Rule Card
14 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Corresponding
rule card.
“Multi Service corresponds to a service that implements a multitude of methods related
to different business and technical abstractions. This aggregates too much into a single
service, such a service is not easily reusable because of the low cohesion of its methods
and is often unavailable to end-users because of its overload, which may induce a high
response time”
Multi Service example definition:
1 RULE CARD: MultiService {
2 RULE: MultiService { INTER MultiMethod HighResponse LowAvailability LowCohesion };
3 RULE: MultiMethod { NMD VERY HIGH };
4 RULE: HighResponse { RT VERY HIGH };
5 RULE: LowAvailability { A LOW };
6 RULE: LowCohesion { COH LOW };
7 };
Corresponding Rule Card:
14/22
![Page 15: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/15.jpg)
SODA Tool (4/7)
15 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Results,
i.e., suspicious
service(s)
15/22
![Page 16: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/16.jpg)
SODA Tool (5/7)
16 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Values for all metrics
(from the associated
rule card), for each
service
16/22
![Page 17: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/17.jpg)
SODA Tool (6/7)
17 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Exposes the
generated
association
rules.
17/22
![Page 18: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/18.jpg)
SODA Tool (7/7)
18 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns
Helps to visualize
the suspicious
service(s) within
the analyzed SBS.
18/22
![Page 19: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/19.jpg)
Experiments (4/5): Objects
Two different versions of Home-Automation:
- Original version with 13 services
- A version modified by adding & modifying services to inject Antipatterns
Mathieu Nayrolles Specification and Detection of SOA Antipatterns
SODA Tool (7/7) Results (1/3): Detection
19/22
![Page 20: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/20.jpg)
Results (2/3): Detection
Detection of Multiservice: Mediator
Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns 20/22
![Page 21: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/21.jpg)
Results (3/3): Detection
Detection of Duplicated Service: Mediator and Communication
21 Mathieu Nayrolles SODA: A Tool Support for the Detection of SOA Antipatterns 21/22
![Page 22: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/22.jpg)
Demonstration
- Video
- Posters
- Live demo
22/22
![Page 23: Specification and Detection of SOA Antipatternssofa.uqam.ca/media/icsoc2012Short.pdf · Mathieu Nayrolles Specification and Detection of SOA Antipatterns Main Components: (1) Automated](https://reader033.fdocuments.net/reader033/viewer/2022052001/6013859c5f733108cd418b62/html5/thumbnails/23.jpg)
Thank you
More about SODA at www.sofa.uqam.ca/tool.html
Mathieu Nayrolles | [email protected]
Francis Palma | [email protected]
Naouel Moha | [email protected]
Yann-Gaël Guéhéneuc | [email protected]