Avant-projet : ECOO

previous up next contents
Précédent : Résultats nouveaux Remonter : Résultats nouveaux Suivant : Mise ne oeuvre des applications


Sous-sections


   
Modèles de coopération

Résumé :

Nous fondons la correction des exécutions coopératives sur un modèle de transactions coopératives qui met en oeuvre un nouveau critère de correction (la COO-sérialisabilité) asurant l'atomicité à la concurrence et un modèle de contraintes adapté pour assurer la cohérence individuelle dans ce contexte. Dans la continuité de ce travail, nous avons défini la disCOO-sérialisabilité qui est version locale de ce critère (qui se suffit d'informations locales pour son évaluation). Dans le même temps, nous avons démarré un travail d'analyse pour mettre en évidence de nouveaux patrons de coopération, les classer et les confronter à la COO-sérialisabilité et la disCOO-sérialisabilité. Enfin nous démarrons un travail à destination du Workflow avec l'idée d'encapsuler nos patrons de coopération comme des opérateurs de workflow.

   
Introduction

Nous avons dans les années précédentes développé un nouveau critère de correction (la COO-sérialisabilité [[3]]) asurant l'atomicité à la concurrence et un modèle de contraintes adapté [Ska97],[[18]] pour assurer la consistence individuelle dans ce contexte. Ce modèle intègre quatre comportements primitifs de coopération (client/serveur, écriture coopérative rédacteur/relecteur et concurrence) que nous avons mis en oeuvre au travers d'un protocole [Mol96] dans l'environnement de développement de logiciels COO [GCC+96].

Partant de là, l'essentiel du travail réalisé cette année sur ce thème a eu pour objectif de répondre à deux questions :

Critères de correction des interactions



Participants : Khalid Benali, Gérôme Canals, Claude Godart, Pascal Molli, Manuel Munier.

La COO-sérialisabilité

caractérise les traces d'exécution correctes de transactions coopératives par 4 axiomes (dernière occurence, propagation des commit, condition de groupage, convergence de groupe) [[3]]. La COO-sérialisabité s'appuie sur la connaissance de traces d'exécution globales (de l'exécution imbriquée de toutes le stransactions).

La DisCOO-sérialisabilité

est une version localisée de la COO-sérialisabilité. la disCOO-sérialisabilité caractérise les traces d'exécution correctes d'une transaction par rapport aux transactions adjacentes (celles avec lesquelles elle échange des objets). Concrétement, les axiomes de condition de groupage et de convergence de groupe sont remplacés par deux axiomes. L'un garantit qu'avant de terminer une tâche est bien « à jour » par rapport aux transactions qui lui sont adjacentes. L'autre axiome impose que les transactions adjacentes dont dépend la transaction soient validées avant, ou éventuellement en même temps, que cette tâche.

La notion de groupe de la COO-sérialisabilité qui nécesitait une vue globale est remplacée par deux propriétés propagées de proche en proche entre les tâches. L'intérêt est que cela permet de garantir des propriétés globales, équivalentes à celles garanties par la COO-sérialisabilité, par une évaluation locale de la correction et simplifie la mise en oeuvre d'un protocole dans un contexte dsitribué. La disCOO-sérialisabilité,décrite dans [Mun99], est en cours de vérification et de validation (cf 5.3).

Nouveaux patrons de coopération



Participants : Claude Godart, Daniela Grigori, Olivier Malcurat, Olivier Perrin, Samir Tata.

L'objectif est de mettre en évidence de nouveaux patrons de coopération en confrontant une approche combinatoire de critères système et une approche analyse des usages dans le cadre des projets COCAO et AEE  (cf 7). Ces patrons permettrons d'étendre le champ d'application de la COO-sérialisabilité et la COO-sérialisabilité elle-même.

Une première réflexion considérant trois critères de synchronisation (relation read/write, relation synchrone/asynchrone, relation de terminaison synchrone ou pas) est décrite dans [[13]]. Cette proposition est en cours de confrontation à la réalité du domaine architectural dans le cadre du projet COCAO (cf. 7.1).

Modèles de workflows coopératifs



Participants : Francois Charoy, Claude Godart, Daniela Grigori, Olivier Perrin, Hala Skaf.

L'objectif ici est d'intégrer notre travail de modélisation de la coopération à la modélisation des workflows. l'approche est d'encapsuler la COO-sérialisabilité dans un opérateur (coo) au sens des opérateurs (and-join, and-split ...) définis par la workflow management coalition et combinable à ces opérateurs. L'intéret est de mieux prendre en compte les activités conceptuelles que ne le permettent les opérateurs actuels. La difficulté est, outre la mise en oeuvre de cet opérateur (cf. 6.2), l'étude des relations entre opérateurs. Celle-ci se traduit par l'étude des relations entre transactions coopératives (opérateur coo) et transactions classiques (autres opérateurs).

Ce travail est dans une phase préliminaire mais les premiers contacts sont encourageants [GPS99].



previous up next contents
Précédent : Résultats nouveaux Remonter : Résultats nouveaux Suivant : Mise ne oeuvre des applications