54
Examinatric e Marie-Christine ROUSSET, Professeur UJF, Grenoble Rapporteur Carlo MONTANGERO, Professeur à l’Université de Pise, Pise Rapporteur Claude GODART, Professeur à l’Université Henri Poincaré, Nancy Examinatric e Claudia RONCANCIO, Professeur à l’INPG, Grenoble FOCAS : UN CANEVAS EXTENSIBLE POUR LA CONSTRUCTION D’APPLICATIONS ORIENTÉES PROCÉDÉ Gabriel PEDRAZA FERREIRA Jury:

FOCAS : un canevas extensible pour la construction d’applications orientées procédé

  • Upload
    takoda

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

FOCAS : un canevas extensible pour la construction d’applications orientées procédé. Gabriel PEDRAZA FERREIRA. Jury:. Contexte. 1990. 2000. 2003. Services. Applications orientées procédé Une approche dirigée par les modèles. Approche à services. Procédés. Procédé Logiciel. Workflow. - PowerPoint PPT Presentation

Citation preview

Page 1: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

Examinatrice

Marie-Christine ROUSSET, Professeur UJF, Grenoble

Rapporteur Carlo MONTANGERO, Professeur à l’Université de Pise, Pise

Rapporteur Claude GODART, Professeur à l’Université Henri Poincaré, Nancy

Examinatrice

Claudia RONCANCIO, Professeur à l’INPG, Grenoble

Examinateur

Hervé VERJUS, MdC à l’Université de Savoie, Chambéry

Directeur Jacky ESTUBLIER, Directeur de recherche au CNRS, Grenoble

FOCAS : UN CANEVAS EXTENSIBLE POUR LA CONSTRUCTION D’APPLICATIONS ORIENTÉES

PROCÉDÉGabriel PEDRAZA FERREIRA

Jury:

Page 2: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

CONTEXTE

12/11/2009

2

FOCAS - Gabriel PEDRAZA FERREIRA

ProcédéLogiciel Workflow Orchestration

Modèles Ingénierie dirigée par les modèles

Approche à servicesApplications orientées

procédéUne approche dirigée par

les modèles

Services

Procédés

Modèles

1990 2000 2003

Page 3: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

CONTEXTE

12/11/2009

3

FOCAS - Gabriel PEDRAZA FERREIRA

FOCAS

Un canevas dirigé par les modèles pour la construction d’ orchestrations flexibles de services.

Extensible et adaptable à « toute » application orientée procédé.

Page 4: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre Validation et évaluation Conclusion et perspectives

12/11/2009

4

FOCAS - Gabriel PEDRAZA FERREIRA

Page 5: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART - PROCÉDÉUn procédé est :« A sequence of steps performed for a given purpose »

[IEEE]« A systematic approach to the creation of a product or

the accomplishment of some task » [Osterweil]

12/11/2009

5

FOCAS - Gabriel PEDRAZA FERREIRA

Un modèle de procédé sert à : comprendre et communiquer entre les acteurs, automatiser le procédé.

Page 6: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – LES WORKFLOWS

Un système de workflow est un logiciel qui interprète un modèle (de procédé).

12/11/2009

6

FOCAS - Gabriel PEDRAZA FERREIRA

Act1

Act2

Act3

Act4

Act5

Moteur de workflow

Page 7: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – LES WORKFLOWS

Langages de spécification de procédés1995

Un groupe de standardisation Modèle de référence pour les systèmes de workflows Spécification ~40 pages

2007 10 groupes de standardisation 7 standards pour la modélisation des procédés Chaque spécification ~150 pages

12/11/2009

7

FOCAS - Gabriel PEDRAZA FERREIRA

Page 8: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – LES WORKFLOWS

12/11/2009

8

FOCAS - Gabriel PEDRAZA FERREIRA

Systèmes, langages et Standards de Workflow

Systèmes commerciaux

COSA, VisualWorkflow, Forté Conductor, Lotus Domino Workflow, Mobile, MQSeries/Workflow, Staffware, Verve Workflow, I-Flow, InConcert, Changengine, SAP R/3Workflow, Eastman, FLOWer, etc.

Open Source JBoss JBPM, OW2 Bonita, Active BPEL, Enhydra Shark-JaWE, etc.

Standards BPMN, UML Activities, BPEL, XPDL, SPEM, etc.

Recherche Meteor, ADEPTFlex, OpenFlow, YAWL, APEL, JOpera, etc.

Page 9: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – LES WORKFLOWS

YAWL XPDL jBPM APELNombre de concepts

Grand Grand Petit Petit

Types d’activité

WF-Net, Manual Task, Application Task, Control Tasks

Route, BlockActivity, Implementation

Node (base)Start, End, Task, Control (extension)

Activity

Extensibilité Non documenté

Syntaxique Programmation (PVM)

Délégué

Origine Recherche Consortium Industriel RechercheType Système Standard Système Langage

12/11/2009

9

FOCAS - Gabriel PEDRAZA FERREIRA

Page 10: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – LES WORKFLOWS SYNTHÈSE Deux approches

Solutions génériques contenant un nombre élevé de concepts.

Solutions spécialisées dans un domaine spécifique difficilement adaptables.

Formalismes de bas niveau d’abstraction proches de langages de programmation.

Les workflows sont fortement couplés aux applications qu’ils utilisent.

Capacités d’extension limitées ou inexistantes.

12/11/2009

10

FOCAS - Gabriel PEDRAZA FERREIRA

Page 11: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre Validation et évaluation Conclusion et perspectives

12/11/2009

11

FOCAS - Gabriel PEDRAZA FERREIRA

Page 12: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – L’ORCHESTRATION DE SERVICES

12/11/2009

12

FOCAS - Gabriel PEDRAZA FERREIRA

L’approche à services utilise le concept de service comme bloc de construction d’applications

Fournisseur de service

Client de service

Annuaire de services

?

Hypothèse: Un service est indépendant des autres services et du contexte d’exécution.

Mécanismes• Description• Découverte• Communication

Propriétés• Couplage faible• Liaison retardée

Page 13: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – ORCHESTRATION DE SERVICES

12/11/2009

13

FOCAS - Gabriel PEDRAZA FERREIRA

Invo1Invo2

Invo3Invo4 Invo5

Orchestrateur

Un orchestrateur est un logiciel qui interprète un modèle de procédé pour coordonner l’exécution des services

S1 S2 S3 Sn

Le contrôle est externalisé. Responsabilité de l’orchestrateur.

Client

Fournisseurs

Page 14: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – ORCHESTRATION DE SERVICES

12/11/2009

14

FOCAS - Gabriel PEDRAZA FERREIRA

WS-BPEL JOpera SELF-SERVType de formalisme

Blocs structurés (Type d’activités prédéfinies)

Diagramme d’activités (graphe dirigée)

Diagramme d’états et de transitions

Technologie de services

Services Web Ensemble prédéfini. Extensible.

Services Web

Liaison et sélection de services

Dynamique (Sélection mélangée avec le modèle métier)

Dynamique (Sélection mélangée avec le modèle métier)

Dynamique

Aspects non-fonctionnels

Transactions (Partiellement)

Aucun Aucun

Exécution Centralisé Centralisé Repartie

ExtensibilitéSyntaxique.BPEL4J, SCENE, BPEL4People.

Technologie de services

Aucune

Page 15: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – ORCHESTRATION SYNTHÈSE

Défauts hérités des workflows Formalismes de bas niveau d’abstraction. Couplage fort avec les applications

Supporte un seul type de technologie de services.

Mécanismes de sélection et de liaison mélangés avec le modèle métier.

Pas de support pour les aspects non fonctionnels.

Capacité d’extension limité ou inexistante. 12/11/2009

15

FOCAS - Gabriel PEDRAZA FERREIRA

Page 16: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

ÉTAT DE L’ART – OBJECTIF DE LA THÈSE

Proposer un canevas dirigée par les modèles pour la construction d’applications orientées procédé ayant :

noyau simple système d’orchestration de services, mécanismes d’extension fonctionnelles mécanismes d’extension non-fonctionnelles

Canevas extensible et adaptable différents domaines d’application différents environnements, …12/11/2009

16

FOCAS - Gabriel PEDRAZA FERREIRA

Objectif

Page 17: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre Validation et évaluation Conclusion et perspectives

12/11/2009

17

FOCAS - Gabriel PEDRAZA FERREIRA

Page 18: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PROPOSITION – FOCAS

FOCAS un canevas permettant la construction d’applications orientées procédés:

12/11/2009

18

FOCAS - Gabriel PEDRAZA FERREIRA

FunctionalExtension

FunctionalExtension

FOCAS Core(Flexible

Orchestration)Non-functional extension

Non-functional extension

Non-functional extension

Page 19: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PROPOSITION – FOCAS NOYAU

FOCAS Noyau : un système d’orchestration de services

Spécification abstraite de l’orchestration Séparation des préoccupations: contrôle, données

et services Composition de services implémentés en diverses

technologies Liaison et sélection dynamique de services

12/11/2009

19

FOCAS - Gabriel PEDRAZA FERREIRA

Page 20: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

FOCAS NOYAU – UNE DESCRIPTION ABSTRAITE Trois points de vues dans l’orchestration de

services Le contrôle : ordre des invocations et flot de

données Les données : entités à traiter Les services : traitement des données

12/11/2009

20

FOCAS - Gabriel PEDRAZA FERREIRA

S1S2

S3Sn

xy

Invo1Invo2

Invo3Invo4 Invo5

Chaque point de vue est formalisé en un domaine exécutable

Page 21: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

FOCAS CORE – STRUCTURE D’UN DOMAINE

12/11/2009

21

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur de domaine

Modèle de domaine

Méta-modèle du domaine

Conforme à

Exécute

Un formalisme utilisé pour exprimer des modèles, i.e. méta-modèle.

Un interpréteur qui opérationnalise la sémantique.

Des modèles conformes au méta-modèle et exécutés par l’interpréteur.Modèle

Page 22: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

DOMAINE DU CONTRÔLE

12/11/2009

22

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur de contrôle

Méta-modèle de contrôle

Ensemble minimal de concepts(Activity, Port, Product, ProductType, Dataflow)

Gère le contrôle et le routage des données.Gère le cycle de vie des activités.Maintient l’état du procédé.

Modèle de contrôle

Page 23: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

DOMAINE DES DONNÉES

12/11/2009

23

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur de données

Méta-modèle de données

Typage des données(DataType, SimpleType, ComplexType, Attributes, etc)

Création, élimination, modification des données.Versionnement des données.

Modèle de données

Temperature

+value: Double+unit: String+hour: Hour

Average

+value: Double+number: Integer

Page 24: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

public interface StoreDB { public boolean saveData(Average average);}

DOMAINE DES SERVICES

12/11/2009

24

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur de services

Méta-modèle de services

Description des services(Services, Interface, Operation, Properties)

Modèle de services

SAM (Service Abstract Machine)Description, Découverte, CommunicationHétérogénéité des technologies à services

Propriétés Protocol = DPWS

StoreDB

Page 25: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

LA COMPOSITION DES DOMAINES

12/11/2009

25

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur de contrôle

Modèle de contrôle

Modèle de données

Méta-modèle du contrôle

Méta-modèle des données

Interpréteur de données

Conforme à

Exécute

méta-lien

lien

Conforme à Conforme à

Exécute

Code de synchronisation

Page 26: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

LA COMPOSITION DES DOMAINES

12/11/2009

26

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur du contrôle

Modèle de contrôle

Modèle de données

Méta-modèle du contrôle

Méta-modèle des données

Interpréteur des données

Exécute

méta-lien

lien

Conforme à

Code de synchronisation

Page 27: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

L’ORCHESTRATION DE SERVICES DANS FOCAS

12/11/2009

27

FOCAS - Gabriel PEDRAZA FERREIRA

GetTemperature

DoAverage

StoreDB

Temperature

+value: Double+unit: String+hour: Hour

Average

+value: Double+number: Integer

Interpréteur d’orchestration

DPWS WS Java

GetHumidity

StoreFile

Humidity

+value: Double+hour: Hour

AbstraiteFlexibleHétérogèneDynamique

Page 28: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

FOCAS NOYAU - CONTRIBUTION

Formalismes de bas niveau d’abstraction

Couplage fort avec les applications

Support pour un seul type de technologie des services

Mécanismes de sélection et liaison mélangés avec le modèle métier

12/11/2009

28

FOCAS - Gabriel PEDRAZA FERREIRA

Description abstraite de l’orchestration

Flexibilité de la spécification

Hétérogénéité des technologies à services (SAM)

Séparation des préoccupations

Support des aspects non-fonctionnels

Extensibilité de l’orchestration

Page 29: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre Validation et évaluation Conclusion et perspectives

12/11/2009

29

FOCAS - Gabriel PEDRAZA FERREIRA

Page 30: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PROPOSITION – EXTENSIONS FONCTIONNELLES

12/11/2009

30

FOCAS - Gabriel PEDRAZA FERREIRA

Workflow

Bureautique

Applications à médiation

FOCAS Noyau

Autres …

Applications orientées procédé

Extensions

Objectifétendre le canevas pour supporter la création d’autres applications orientée procédé

Page 31: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXTENSIONS NON-FONCTIONNELLES : AJOUT D’ACTIVITÉS HUMAINES

Dans les applications de Workflow les tâches peuvent être effectuées par des humains.

Dans les applications d’orchestration toutes les tâches sont effectuées par des services automatiques

12/11/2009

31

FOCAS - Gabriel PEDRAZA FERREIRA

Object i f de l ’extens ion : supporter la réa l isat ion par des humains des tâches d ’un

procédé

Page 32: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXTENSION FONCTIONNELLE – COMPOSITION DOMAINES

12/11/2009

32

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur d’orchestratio

n

Modèle d’orchestration

Modèle d ’assignation de ressources

Méta-modèle noyau

(orchestration)Méta-modèle

ressources

Interpréteur de ressources

Conforme à

Exécute

méta-lien

lien

Conforme à Conforme à

Exécute

Code de synchronisation

Page 33: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

12/11/2009

33

FOCAS - Gabriel PEDRAZA FERREIRA

Director : Rolename = Director

Student : Rolename = Student

Jacky : Humanname = Estublier

Philippe : Humanname = Lalanda

Idrissa : Humanname = Dieng

Issac : Humanname = Garcia

Mod

èle

Mét

a-m

odèl

e Domaine d’orchestration Domaine de ressources

EXEMPLE : AJOUT DES ACTIVITÉS HUMAINES

Activity

-name: String

Port

+name: String+isAutomatic: Boolean

+entry0..*

+exit0..*

Role

+name: String

Human

+name: String+email: String+birthdate: Integer

0..* 0..*

Page 34: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXTENSION FONCTIONNELLE – CONTRIBUTION

Le langage (méta-modèle) est étendue tout en gardant les outils de spécification.

Un modèle peut être spécifié en réutilisant les modèles existants.

L’interpréteur des modèles composites est créé en composant les interpréteurs existants. Réutilisation des interpréteurs.

12/11/2009

34

FOCAS - Gabriel PEDRAZA FERREIRA

Réutilisation des langages et des éditeursCompromis entre approche spécifique et

générique

Séparation des préoccupations

Construction d’interpréteurs modulaire

Page 35: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre Validation et évaluation Conclusion et perspectives

12/11/2009

35

FOCAS - Gabriel PEDRAZA FERREIRA

Page 36: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PROPOSITION – EXTENSIONS NON-FONCTIONNELLES

12/11/2009

36

FOCAS - Gabriel PEDRAZA FERREIRA

Orchestration de services

Sécurité

Gestion de transactions

Distribution

Autres

Objectif:Proposer un mécanisme permettant le support des aspects non-fonctionnels pour l’orchestration.

Page 37: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

SCHÉMA GÉNÉRAL EXTENSION NON-FONCTIONNELLE

12/11/2009

37

FOCAS - Gabriel PEDRAZA FERREIRA

Interpréteur d’orchestration

Modèle d’orchestration

Annotations(Modèle abstrait)

Méta-modèle d’orchestratio

n

Méta-modèle aspect non-fonctionnel

Conforme à

Exécute

méta-lien

lien

Conforme à Conforme à

Bibliothèque support non-fonctionnel

Code de tissage

Générateur

Page 38: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

12/11/2009

38

FOCAS - Gabriel PEDRAZA FERREIRA

Mod

èle

Mét

a-m

odèl

e

Domaine d’orchestration Aspect de sécurité

EXEMPLE – L’ORCHESTRATION SÉCURISÉE

Activity

-name: StringPort

+name: String+isAutomatic: Boolean

+entry0..*

+exit0..*

Product

-name: String

contains

port0..*

Authentication

-type: String

Integrity

Confidentiality

:Authentication

:Confidentiality

:Integrity

Page 39: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

L’ORCHESTRATION RÉPARTIE

12/11/2009

39

FOCAS - Gabriel PEDRAZA FERREIRA

FOCAS RuntimeFOCAS (Nœud 1) FOCAS (Nœud 2) FOCAS (Nœud 3)

Objectifs: Performance (communication, distribution de la

charge, ..) Souplesse (choix de la répartition au niveau modèle) Évolutivité (changement de topologie du réseau) Adaptabilité (différents environnement clients)

Une architecture centralisée Problèmes de performance Robustesse de l’application Passage à l’échelle

Page 40: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

12/11/2009

40

FOCAS - Gabriel PEDRAZA FERREIRA

Mod

èle

Mét

a-m

odèl

e

Domaine d’orchestration Aspect de distribution

L’ORCHESTRATION RÉPARTIE

DBServer:Node

ApplicationServer:Node

EdgeServer:Node

Activity

-name: String

Port

+name: String+isAutomatic: Boolean

+entry0..*

+exit0..* Node

+name: StringNetwork

1..*

ApplicationServer:Node

Page 41: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXEMPLE – L’ORCHESTRATION RÉPARTIE

12/11/2009

41

FOCAS - Gabriel PEDRAZA FERREIRA

DBServer

AppServer

AppServer

EdgeServer

EdgeServer

AppServer

ODS

IDS

DBServer

ODS

IDS

Transformateur

Extension non fonctionnelle mais: Algorithme de partition de modèles Composants de communication pour supporter la

distribution

Page 42: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXTENSIONS NON-FONCTIONNELLES - CONTRIBUTION Spécification abstraite des propriétés non-

fonctionnelles L’utilisateur peut ne pas être expert des

technologies d’implémentation

Séparation entre la partie métier et non fonctionnelle Différentes annotations pour le même modèle

métier

Génération automatique du code de support

Une architecture répartie pour l’orchestration12/11/2009

42

FOCAS - Gabriel PEDRAZA FERREIRA

Approche d’annotations de modèles

Séparation des préoccupations

Adaptation à la technologie d’implémentation

Page 43: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre Validation et évaluation Conclusion et perspectives

12/11/2009

43

FOCAS - Gabriel PEDRAZA FERREIRA

Page 44: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

DÉMONSTRATION

CADSE-FOCAS

CADSE (Computer Aided Domain Specific Engineering environment)

FOCAS (Framework for Orchestration, Composition and Aggregation of Services)

12/11/2009

44

FOCAS - Gabriel PEDRAZA FERREIRA

Page 45: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre L’environnement de spécification CADSE-FOCAS

Validation et évaluation Conclusion et perspectives

12/11/2009

45

FOCAS - Gabriel PEDRAZA FERREIRA

Page 46: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

VALIDATION ET EVALUATION

Projet ITEA – S4ALL Validation de l’approche de base

Project ITEA SODA Validation d’extension non fonctionnelle: la

sécurité de l’orchestration Évaluation de l’utilisabilité de l’environnement

Approche d’orchestration répartie Validation d’extension NF : la distribution Évaluation : Performance de l’exécution répartie

12/11/2009

46

FOCAS - Gabriel PEDRAZA FERREIRA

Page 47: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

VALIDATION – CAS D’UTILISATION SODA

Cas d’utilisation : système de surveillance L’application observe les conditions physiques

d’une usine et prend des mesures en conséquence

Objectif 1 : valider l’ajout non fonctionnel Étendre le canevas afin d’introduire l’aspect

sécurité dans une orchestration de services

Objectif 2 : valider l’utilisabilité et l’approche générative Expérience d’ajout de sécurité pour notre cas

d’utilisation.

12/11/2009

47

FOCAS - Gabriel PEDRAZA FERREIRA

Page 48: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EVALUATION CADSE-FOCAS

Expérience: ajout de la sécurité 3 scénarios de sécurisation de l’application 8 développeurs ont réalisé les scénarios 2 fois 2 experts technologie sécurité ont réalisé les

scénarios sans CADSE-FOCAS

12/11/2009

48

FOCAS - Gabriel PEDRAZA FERREIRA

Scénario Session 1

Session 2

Experts % Session 1

% Session 2

1 13:20 05:21 23:00 44% 79%2 07:49 05:33 24:00 71% 79%3 03:22 02:10 15:00 80% 86%

Page 49: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXPÉRIENCE ORCHESTRATION RÉPARTIE

12/11/2009

49

FOCAS - Gabriel PEDRAZA FERREIRA

FOCAS –Nœud 1 FOCAS –Nœud 2

S1 S2 S3 S4

Nœud 1 Nœud 2 Total %Cas 0 349,20 0,00 349,20Cas 1 262,27 50,07 318,55 8,78%Cas 2 216,53 66,93 286,87 17,85%Cas 3 161,93 91,47 256,46 26,56%Cas 4 130,20 120,33 256,03 26,68%

Objectif: Réduire le temps de communication de l’orchestrationMoyen: Déplacer des fragments vers le nœud où les services sont locaux

Page 50: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

EXPÉRIENCE ORCHESTRATION RÉPARTIE

12/11/2009

50

FOCAS - Gabriel PEDRAZA FERREIRA

Objectif: Réduire le temps d’exécution d’une orchestration parallèleMoyen: Exécuter chaque branche dans un nœud différent

FOCAS –Nœud 1

FOCAS –Nœud 3

FOCAS –Nœud 2

Nœud 1

Nœud 2

Nœud 3

Total %

Cas 0 550,81 0,00 0,00 550,81Cas 1 420,73 193,88 0,00 420,73 23,62%Cas 2 265,76 187,14 171,23 265,76 51,75%

Page 51: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PLAN État de l’art

Les systèmes de workflow L’orchestration de services

Proposition FOCAS Noyau Les extensions fonctionnelles Les extensions non-fonctionnelles

Mise en œuvre L’environnement de spécification CADSE-FOCAS

Validation et évaluation Conclusion et perspectives

12/11/2009

51

FOCAS - Gabriel PEDRAZA FERREIRA

Page 52: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

CONCLUSIONS

Une approche IDM pour la construction des applications orientées procédés qui préconise: Séparation des préoccupations Réutilisation Langages de haut niveau d’abstraction

Un système de base pour l’orchestration de services Technologies de services hétérogènes Mécanismes de sélection et de liaison dynamique

Des mécanismes d’extension fonctionnelle Des mécanismes d’extension non fonctionnelle Une implémentation du canevas FOCAS

12/11/2009

52

FOCAS - Gabriel PEDRAZA FERREIRA

Page 53: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

PERSPECTIVES

Un ensemble de CADSE pour supporter le cycle de vie du génie logiciel.

Des applications orientées procédés dynamiques qui peuvent s’adapter à l’exécution.

Une approche pour la chorégraphie de services.

Expérimenter avec d’autres aspects non-fonctionnels.

Expérimenter d’autres domaines d’application.12/11/2009

53

FOCAS - Gabriel PEDRAZA FERREIRA

Page 54: FOCAS : un canevas extensible pour la construction d’applications orientées procédé

12/11/2009

54

FOCAS - Gabriel PEDRAZA FERREIRA

MerciQuestions ?