SlideShare une entreprise Scribd logo
1  sur  57
Télécharger pour lire hors ligne
On Feature Interaction
among Web Services
Michael Weiss et Babak Esfandiari
Présenté par Pierre CHALFOUN
INF-6251 :: Automne 2005
Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Présentation
• Introduction
• Concepts
• Article
• Conclusion
• Discussion
Introduction
Concepts
Article
Conclusion
Discussion

v
v

Contexte
Bref historique

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Contexte
• Affaire (Business)
• Processus d’affaire (Business Process)
• Intégration de processus d’affaire
• Distance ZERO
Introduction
Concepts
Article
Conclusion
Discussion

v
v

Contexte
Bref historique

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Bref historique
• Document Web
– Le partage des travaux de recherche
• Application Web
– Les transactions entre l’entreprise et ses clients
• Service Web
– L’intégration des processus d’affaire
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

˜™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web
• Problème à résoudre
Serveur de la
compagnie aérienne

Serveur de la
compagnie Pierre Inc

Le classique : Copier - Coller
HTTP/HTML

HTTP/HTML

Interface Web de la
compagnie Pierre Inc.

Interface Web de la
compagnie aérienne
Vous !
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

˜™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web
• Problème à résoudre
Serveur de la
compagnie aérienne

Serveur de la
compagnie Pierre Inc

Le classique : Copier - Coller
HTTP/HTML

HTTP/HTML

Interface Web de la
compagnie Pierre Inc.

Interface Web de la
compagnie aérienne
Vous !
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

™˜™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web (2)
• Solution apportée par le service web
Serveur de la
compagnie aérienne

Serveur de la
compagnie Pierre Inc
HTTP/SOAP/XML

HTTP/HTML

HTTP/HTML

Interface Web de la
compagnie Pierre Inc.

Vous !
v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

™™˜™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web (3)
• Et si on poussait le vice ?
Serveur de la
compagnie aérienne

Serveur de la co. de
location d’auto

HT
ML

Serveur de la
compagnie Pierre Inc

Serveur Web de
l’Hôtel

HT
TP
/

Introduction
Concepts
Article
Conclusion
Discussion

W
AP
/

W
ML

Serveur de la bourse

Vous … encore !
Interface Web de la
compagnie Pierre Inc.
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

™™™˜™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web (4)
• Composante logicielle accessible à travers Internet
• XML comme moyen de représentation des données
<?xml version ¨1.0¨?>
<methodCall>
<methodName> PrixDe </methodName>
<params>
<param>
<value><string> DollarCanadien </string></value>
</param>
</params>
</methodCall>
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

™™™™˜™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web c’est « In » ? (5)
• Accessible à travers les protocoles standards (HTTP et
SMTP par exemple).
• Centralisé « write once run everywhere ».
• Utilisable par différentes applications peu importe le
langage utilisé.
• Interopérabilité des processus d’affaire
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B

™™™™™˜

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Service Web - Éléments (6)
• XML : représentation des messages et résultats
• Standards
– SOAP : échange de messages (sur HTTP par ex.)
– WSDL : description de l’interface du service web
– UDDI : dépôt des description WSDL (indexage)
UDDI
Rechercher

Client

Publier WSDL
Connecter (Bind)

HTTP / SOAP / XML

Fournisseur
de service
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP ˜™™
WSDL
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

S.O.A.P.
• Simple Object Access Protocol.
• Standard de communication (des messages) entre
l’application et son composant.
• L’échange de messages est basé sur XML. SOAP
encapsule ces messages.
• Véhiculer par HTTP, donc traverse les pare-feux (à
moins de restrictions particulières à ce sujet).
• Analogie : SOAP encapsule XML comme que TCP
encapsule IP.
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP ™˜™
WSDL
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

S.O.A.P. - Message (2)
Message SOAP
Entêtes HTTP
Enveloppe SOAP
Corps du message SOAP
Appel de méthodes &
description des données

POST /StockQuote HTTP/1.1
Host: www.stockquoteserver.com
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
SOAPAction: "http://example.com/stockquote.xsd"
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://...lope/"
SOAP-ENV:encodingStyle="http://...ng/">
<SOAP-ENV:Body>
<m:GetLastTradePrice xmlns:m="http://.../Ex.xsd">
<symbol>DIS</symbol>
</m:GetLastTradePrice>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Code exemple inspiré de : Understanding Web Services, Arthur Ryman
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP ™™˜
WSDL
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

S.O.A.P. - Exemple (3)

Code exemple tiré de : A. Obaïd, Développement d’applications réparties
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL ˜™™™
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

W.S.D.L.
• Web Service Description Langage
• Permet de définir pour un services Web
– Son adresse et son identité.
– Les opérations que l’on peut invoquer et leurs
arguments ( Types des données, Valeurs de retour,
etc.).
– Les détails d’implémentation.
– Etc.
• Conçu pour être extensible
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL ™˜™™
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

W.S.D.L. – Exemple (2)
<?xml version="1.0"?>
<definitions name="StockQuote"
targetNamespace="http://example.com/stockquote.wsdl"
xmlns:tns="http://example.com/stockquote.wsdl"
xmlns:xsd1="http://example.com/stockquote.xsd"
xmlns:soap="http://schemas.xmlsoap.org/ wsdl/soap/"
xmlns="http://schemas.xmlsoap.org/ wsdl/">
<types>
<schema targetNamespace="http://example.com/stockquote.xsd"
xmlns="http://www.w3.org/1999/XMLSchema">
<element name="GetLastTradePrice">
<complexType>
<all> <element name="symbol" type="string"/> </all>
</complexType>
</element>
<element name="GetLastTradePriceResponse">
<complexType>
<all> <element name="Price" type="float"/> </all>
</complexType>
</element>
</schema>
</types>

Code exemple tiré de : Understanding Web Services, Arthur Ryman
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL ™™˜™
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

W.S.D.L. – Exemple (3)
<message name="GetLastTradePriceInput">
<part name="body" element="xsd1:GetLastTradePrice"/>
</message>
<message name="GetLastTradePriceOutput">
<part name="body" element="xsd1:GetLastTradePriceResponse"/>
</message>
<portType name="StockQuotePortType">
<operation name="GetLastTradePrice">
<input message="tns:GetLastTradePriceInput"/>
<output message="tns:GetLastTradePriceOutput"/>
</operation>
</portType>

Code exemple tiré de : Understanding Web Services, Arthur Ryman
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL ™™™˜
UDDI
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

W.S.D.L. – Exemple (4)
<binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
<soap:binding style="document" transport="http://.../soap/http"/>
<operation name="GetLastTradePrice">
<soap:operation soapAction="http://example.com/stockquote.xsd"/>
<input>
<soap:body use="encoded" namespace="http://example.com/stockquote.xsd"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<soap:body use="encoded" namespace="http://example.com/stockquote.xsd"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<service name="StockQuoteService">
<documentation>My first service</documentation>
<port name="StockQuotePort" binding="tns:StockQuoteBinding">
<soap:address location="http://www.stockquoteserver.com/StockQuote"/>
</port>
</service>
</definitions>
Code exemple tiré de : Understanding Web Services, Arthur Ryman
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI ˜™™™
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

U.D.D.I.
• Universal Description, Discovery and Integration.
• Spécification pour la description et la découverte de
Services Web.
• Les entreprises enregistrent des informations publiques
les concernant et concernant les services qu’ils offrent.
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI ™˜™™
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

U.D.D.I. (2)
• Pages blanches :
– Noms, adresses, contacts, identifiants
• Pages jaunes :
– Détails sur les activités de l’entreprise, les services
qu’elle propose.
• Pages vertes :
– Informations techniques sur les services proposés.
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI ™™˜™
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

U.D.D.I. – Entités (3)
• Business Entity
– Informations de bases sur l’entreprise.
• Business Service
– Informations décrivant un groupe de services web de
l’entreprise.
• Binding Template
– Détails techniques pour l’invocation du service web.
• Technology Model (tModel)
– Association d’un service à sa description abstraite
WSDL.
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI ™™™˜
B2B

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

U.D.D.I. – Exemple (4)
<businessEntity
authorizedName="Pierre Inc."
businessKey=" r445t6y7-8988-aa05-8895-123edfr5tgh7 "
operator="PC Inc.">
<name>Les entreprises Pierre Chalfoun Inc. </name>
<description xml:lang="fr">
Nous offrons des solutions pour satisfaire les besoins bla, bla et surtout BLA !
</description>
<contacts>
<contact useType="technical">
<description xml:lang="fr"> Solutions e-commerce </description>
<personName> Pierre Chalfoun </personName>
<address>
11 552 Sherbrooke Est, Montreal, Que., Canada
</address>
</contact>
</contacts>
</businessEntity>
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ˜™™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – Pardon ?
• 1 Service Web c’est bien … mais 2 c’est mieux !
UDDI
Rechercher

Client

Publier WSDL
Connecter (Bind)

HTTP / SOAP / XML

• Business To Business
• Collaborer est le mot d’ordre !

Fournisseur
de service
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™˜™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – Modéliser les BP ? (2)
• Pourquoi modéliser des besoins logiciels ? (UML)
• BPM – Business Process (Management / Modeling)
– Conception, implémentation, évaluation,
optimisation, etc.
• Notations disponibles
– Event Process Chains (EPC), Business Process
Execution Language for Web Services (BPEL4WS),
Activity-Decision Flow (ADF) diagram, etc.
• BPMI.org : Business Process Management Initiative
v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™™˜™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – Vue d’ensemble (3)
Goals,
Evironmental
Analysis,
Organizational
Analysis

Process
Design

Process Models

Process
Evaluation

other reporting
purposes

Process
Metrics

Process
Enactment

Process
Metrics

Process
Monitoring

Process
Implementation

I mplemented
Processes

Metrics,
Targets

Measure
-m ents

Animation,
Simulation

Target Values

Measures for
Improvement

Introduction
Concepts
Article
Conclusion
Discussion

Source: M. zur Muehlen:
Workflow
Workflow-based Process
Controlling, 2004
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™™™˜™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – Collaboration (4)
Message A

Orchestration

Processus d’affaire

BPEL4WS
Message B

ebXML
WS
Choreography

Source: Richard C. Gronback, Borland Conference 2004
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™™™˜™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – Collaboration (4)
Message A

Processus d’affaire

BPEL4WS

Orchestration

Message B

1.

Processus

Chorégraphie

Message A

2.

Message B

d’affaire
A

Processus
d’affaire

3.

Message C

ebXML
WS
Choreography

B

Source: Richard C. Gronback, Borland Conference 2004
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™™™™˜™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – BPEL4WS (5)

Andrews et al.:
BPEL4WS 1.1., 2003
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™™™™™˜™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – BPEL4WS (6)
Points
d’intéractions
États

Comportements

Andrews et al.:
BPEL4WS 1.1., 2003
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Service Web
SOAP
WSDL
UDDI
B2B ™™™™™™˜

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

B.2B. – BPEL4WS (7)

Andrews et al.:
BPEL4WS 1.1., 2003
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – vue d’ensemble
• Problématique
• Interaction de caractéristiques (Feature Interactions)
– Fonctionnelles
– Non-fonctionnelles
• Méthodologie de détection d’interactions
– Analyse orientée objectif
– Modélisation de scénarios
• Cas d’étude
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
˜™
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – problématique
• Introduction rapide + dynamisme = Intéractions négatives
– Coordination difficile des caractéristiques (services)
• Conflits de buts.
• Compétition pour des ressources.
• Changements concernant les suppositions faites sur
les services.
• L’évolution de la conception.
– Composition des Services Web
• Seule la mécanique a été largement exploitée.
• Et les fonctionnalités offertes par les services ?
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
™˜
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – problématique (2)
• Problèmes à différentes étapes de la composition de SW
– Données, types et séquences logiques
– Besoins non-fonctionnelles tel que la sécurité,
confidentialité, interopérabilité, etc.
• Origine : déploiement rapide et décentralisé des SW
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

˜™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – Fonctionnelle et non-fonctionnelle
• Caractéristique fonctionnelle (CF)
– Les fonctions / services que le produit devrait fournir.
• Caractéristique non-fonctionnelle (CNF)
– Sécurité, confidentialité, performance, etc.
• On ne parle d’interaction que lorsqu’on a une
composition.
• Distinction nécessaire entre les caractéristiques
fonctionnelles (CF) et les caractéristiques nonfonctionnelles (CNF).
– CF est motivée, au niveau des affaires, par une CNF
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

™˜™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – CCF (composition de caractéristiques fonctionnelles)
• Peut se produire suite à
§ L’ordre d’invocation
§ Condition à atteindre

§ Réaction simultanée
§ Erreurs de supposition
§ Gestion de la ressource
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

™˜™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – CCF (composition de caractéristiques fonctionnelles)
• Peut se produire suite à
§ L’ordre d’invocation
§ Condition à atteindre

§ Réaction simultanée
§ Erreurs de supposition
§ Gestion de la ressource
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

™™˜

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – CCNF (composition de caractéristiques non-fonctionnelles)
Interaction non désirée entre les
caractéristiques nonfonctionnelles de l’utilisabilité et
de la confidentialité !
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude

™™˜

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – CCNF (composition de caractéristiques non-fonctionnelles)
Interaction non désirée entre les
caractéristiques nonfonctionnelles de l’utilisabilité et
de la confidentialité !
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions ˜™™
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – Détection d’interactions
• Modéliser les caractéristiques selon la notation User
Requirements Notation ( URN )
– Conflits entre objectifs avec Goal-Oriented
Requirement Langage ( GRL )
• Modéliser les buts de l’entreprise
• Modéliser les CNF
– Déploiement de caractéristiques avec Use Case Maps
( UCM )
• Décrire les CF sous forme de scénarios
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions ™˜™
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – GRL
• Construit selon les techniques d’analyse orienté objectif
– Les CF et CNF sont tous deux modélisés comme
objectifs à atteindre par l’architecture du système.
– Introduction d’un graphe d’objectifs durant la phase
d’analyse.
• But ultime de la conception : résoudre les conflits de
façon à atteindre tous les objectifs initiaux (CF et CNF).
CNF

Solutions pour atteindre les CF et/ou CNF

CF

Entité requise pour compléter une tâche
(Task) ou un but (Goal)
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions ™˜™
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – GRL
• Construit selon les techniques d’analyse orienté objectif
– Les CF et CNF sont tous deux modélisés comme
objectifs à atteindre par l’architecture du système.
– Introduction d’un graphe d’objectifs durant la phase
d’analyse.
• But ultime de la conception : résoudre les conflits de
façon à atteindre tous les objectifs initiaux (CF et CNF).
CNF

Solutions pour atteindre les CF et/ou CNF

CF

Entité requise pour compléter une tâche
(Task) ou un but (Goal)
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions ™™˜
Cas d’étude

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Article – Méthodologie
• Modéliser les CF comme des objectifs, les CNF comme
des objectifs-souples et les solutions pour y parvenir
comme des tâches.
• Analyser le graphe à la recherche de conflits entre
objectifs. Exemple: sécurité versus performance,
utilisabilité versus confidentialité.
• Résoudre les interactions en utilisant l’une des
techniques proposées. À titre d’exemple notons :
– Regroupement d’objectifs
– Changement dans l’ordre d’invocation des services
– Mise sur pied d’un service indépendant
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ˜™™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Personnaliser un SW
• Objectif : analyser l’impact de l’implémentation d’un
service tierce dans l’application.
La gestion de l’identification
est un objectif et non une
tâche puisqu’on aimerait
l’implémenter via un service
tierce, soit le SW Passport
de Microsoft.

Examinons le
fonctionnement de
ce service
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ˜™™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Personnaliser un SW
• Objectif : analyser l’impact de l’implémentation d’un
service tierce dans l’application.
La gestion de l’identification
est un objectif et non une
tâche puisqu’on aimerait
l’implémenter via un service
tierce, soit le SW Passport
de Microsoft.

Examinons le
fonctionnement de
ce service
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ™˜™™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Personnaliser un SW (2)
Vue globale du service Passeport de Microsoft
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ™™˜™™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Personnaliser un SW (3)
Technique utilisée ici :
refactoring

NB: Cette technique est
décrite dans GRL
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ™™™˜™™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Personnaliser un SW (4)
Modélisation du Profiling
de tâche à objectif !

Recours à une
implémentation
supplémentaire (P3P)
pour résoudre le conflit.
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ™™™™˜™™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Traitement de texte (5)
• Objectif : analyser la conséquence du masquage
d’information sur l’exactitude du service.
La maintenabilité nous
suggère de déléguer les
responsabilités de correction
et de formatage à d’autres
services.

Problème: Les deux services
de correction peuvent utiliser
deux langues différentes.

Exactitude est touchée !!!
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ™™™™™˜™

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – Traitement de texte (6)
• Les conflits ne sont jamais tous résolus !
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v
v
v

Vue d’ensemble
Problématique
Fonctionnelle et non-fonctionnelle
Détection d’interactions
Cas d’étude ™™™™™™˜

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Cas d’études – 3 types d’interactions (7)
• Conflits d’objectifs
– L’analyse orienté objectif permet d’obtenir un
nouveau regard sur les CCF et CCNF
• Déploiement et propriété
– Quel service, Qui en est le propriétaire et Où doit-on
déployer les SW ?
• Cacher l’information
– Réduire la complexité de l’application
– La personnalisation devient plus difficile
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v

Résumé
Le +
Le -

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Conclusion - résumé
UDDI
Rechercher

Client

Publier WSDL
Connecter (Bind)

HTTP / SOAP / XML

Fournisseur
de service

Message A

GRL

Message B

Processus d’affaire
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v

Résumé
Le +
Le -

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Conclusion - résumé
collaboration

UDDI
Rechercher

Client

Publier WSDL
Connecter (Bind)

HTTP / SOAP / XML

Fournisseur
de service

Message A

GRL

Message B

Processus d’affaire
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v

Résumé
Le +
Le -

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Conclusion - résumé
collaboration

UDDI
Rechercher

Client

Publier WSDL
Connecter (Bind)

HTTP / SOAP / XML

Fournisseur
de service

composition

Message A

GRL

Message B

Processus d’affaire
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v

Résumé
Le +
Le -

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Conclusion - résumé
collaboration

UDDI
Rechercher

Client

Publier WSDL
Connecter (Bind)

HTTP / SOAP / XML

Fournisseur
de service

composition

Message A

interaction

GRL

Message B

Processus d’affaire
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v

Résumé
Le +
Le -

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Conclusion – le +
• Traitement nouveau des CNF
• Nouvelle présentation basée sur un principe fondé et
éprouvé
• Intéressant de présenter les CF et les CNF dans le même
diagramme !
Introduction
Concepts
Article
Conclusion
Discussion

v
v
v

Résumé
Le +
Le -

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Conclusion – le • Méthodologie un peu… ad hoc… pas suffisamment
éprouvée et expliquée.
• Section 2.3 souligne le problème « où tracer la ligne ? »
et y répond par « où tu veux ! ».
• Deuxième cas est un peu faible et suppose que la
performance sera minée si on appelle deux fois le même
service web !
• Les + et le – sur le graphe d’objectifs pourraient être
enrichis par une note.
Introduction
Concepts
Article
Conclusion
Discussion

Pierre CHALFOUN
on Feature Interactions among Web Services
Lundi le 7 novembre 2005

Discussion – à nous la parole !
• Quelques questions non résolues par l’article
– Composition de caractéristiques non-fonctionnelles
(CCNF) et les Aspects en POA ?
– Interaction des aspects et conflits d’objectifs ?
Pouvons-nous modéliser les interactions des aspects
(donc leur composition) comme nous le faisons avec
les objectifs ? (penser peut-être à Aspect-UML)

MERCI !

Contenu connexe

Similaire à on feature interactions among web services.ppt

Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
ConFoo
 

Similaire à on feature interactions among web services.ppt (20)

Azure Mesh Et Surface
Azure Mesh Et SurfaceAzure Mesh Et Surface
Azure Mesh Et Surface
 
HTML5, le web de demain - BNSA
HTML5, le web de demain - BNSAHTML5, le web de demain - BNSA
HTML5, le web de demain - BNSA
 
[RedHat Forum 2019] REX - COMMENT MONTER UNE OFFRE DE CLOUD EN MARQUE BLANCHE...
[RedHat Forum 2019] REX - COMMENT MONTER UNE OFFRE DE CLOUD EN MARQUE BLANCHE...[RedHat Forum 2019] REX - COMMENT MONTER UNE OFFRE DE CLOUD EN MARQUE BLANCHE...
[RedHat Forum 2019] REX - COMMENT MONTER UNE OFFRE DE CLOUD EN MARQUE BLANCHE...
 
Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeurs
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
Vincent biret azure functions et flow #AosCanadianTour (quebec)
Vincent biret azure functions et flow #AosCanadianTour (quebec)Vincent biret azure functions et flow #AosCanadianTour (quebec)
Vincent biret azure functions et flow #AosCanadianTour (quebec)
 
Mobilité && SAP
Mobilité && SAPMobilité && SAP
Mobilité && SAP
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
Web dev open door
Web dev   open doorWeb dev   open door
Web dev open door
 
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteGab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
 
Axis2 services fr
Axis2 services frAxis2 services fr
Axis2 services fr
 
Normes avancées du Web - GTI780 & MTI780 - ETS - A08
Normes avancées du Web  - GTI780 & MTI780 - ETS - A08Normes avancées du Web  - GTI780 & MTI780 - ETS - A08
Normes avancées du Web - GTI780 & MTI780 - ETS - A08
 
De A à Z : Choisir une architecture pour sa solution applicative
De A à Z : Choisir une architecture pour sa solution applicativeDe A à Z : Choisir une architecture pour sa solution applicative
De A à Z : Choisir une architecture pour sa solution applicative
 
Nodali
NodaliNodali
Nodali
 
Nodali
NodaliNodali
Nodali
 
Les nouveautés de Microsoft BizTalk Server 2013
Les nouveautés de Microsoft BizTalk Server 2013Les nouveautés de Microsoft BizTalk Server 2013
Les nouveautés de Microsoft BizTalk Server 2013
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans Drupal
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
 

on feature interactions among web services.ppt