Précédent : Logiciels Remonter : Projet RESEDAS, Outils
Logiciels pour Suivant : Actions
industrielles
Résumé : Les travaux du groupe ont porté cette année sur quatre points:
- simplification de l'accès aux bibliothèques de communications par passage de messages,
- définition d'un formalisme et d'un environnement logiciel permettant la spécification et l'exploitation des communications au sein d'une application parallèle,
- expérimentation et validation du formalisme et de l'environnement logiciel associé sur des cas d'études réels,
- utilisation de la spécification des communications dans des environnements de placement de tâches.
Une seconde contribution sur la simplification de l'accès aux bibliothèques de communication porte sur l'échange de données complexes et quelconques (graphes, arbres, structures complexes) et le développement d'outils logiciels qui automatisent le transfert de ces données au dessus des bibliothèques normalisées (PVM, MPI) [23].
Cependant, une extension des bibliothèques de communication souffre de quelques lacunes. Elle permet certes une approche plus rapide de la programmation par échange de messages et apporte une structuration de l'application mais elle n'ajoute aucune assurance supplémentaire sur l'optimisation des communications et ne permet pas de mettre en place des mécanismes de validation ou de prédiction sur l'application finale.
Pour permettre cela, nous avons envisagé la conception et le développement d'une approche plus globale à la programmation par échange de messages. Dans cet objectif, nous avons conçu le formalisme MeDLey permettant d'exprimer les communications au sein d'une application parallèle. Associé à ce formalisme, un générateur automatique de fonctions de communications se charge du choix de l'implantation des communications, laissant l'utilisateur se consacrer à l'implantation parallèle de son modèle sans avoir à se soucier de l'efficacité des communications [3,8,7].
Un des objectifs de l'année était également de mettre l'environnement MeDLey en situation réelle afin de valider le formalisme ainsi que l'environnement associé vis-à-vis de cas d'études complexes. Cette année, une première étude de taille a été réalisée dans le cadre du Centre Charles Hermite sur la re-spécification en MeDLey et le re-codage d'un algorithme de modélisation des plasmas [18]. Ces travaux ont d'une part montré l'intérêt de MeDLey et ont abouti à quelques extensions du formalisme.
Le quatrième point développé dans le groupe autour de la communication par passage de messages porte sur la conception et le développement d'un environnement de placement de tâches appelé PlaTo. Cet environnement se greffe sur les outils MeDLey exploitant les informations fournies sur l'application parallèle par le compilateur MeDLey. D'autre part PlaTo puise les informations sur le réseau de stations disponible pour l'exécution de l'application d'un système de gestion de réseaux [16,22].
Résumé : Les travaux du groupe ont porté cette année sur cinq points:
- la validation de modèles de l'information de grande taille,
- l'enrichissement des notations pour la spécification des modèles de l'information,
- le développement d'outils logiciels pour la manipulation de spécifications,
- la conception et la réalisation d'applications de gestion exploitant ces spécifications,
- la réalisation d'interfaces simples pour l'accès aux services du RGT.
Parallèlement à ce travail de validation, nous nous sommes penchés sur l'extension des notations existantes en modélisation des ressources de gestion pour la prise en compte des aspects comportementaux. Ce travail a abouti au formalisme GRM+ [13], étendant les notations GDMO+ et GRM au travers de primitives de spécification de comportement inter-objets gérés. GRM+ est en cours de normalisation à l'ISO (International Standard Organization). Notre groupe y est éditeur du document. GRM+ devrait atteindre le statut de norme internationale dans le courant de l'année 1998.
Un troisième point largement abordé cette année dans le
groupe, porte sur la conception et le développement
d'environnements logiciels pour la gestion de réseaux et
services. Le principal environnement développé est MODERES Java
(voir section ) [19] [20] [21]. Dans sa version actuelle
l'environnement supporte différentes notations pour la
modélisation des ressources gérées et propose plusieurs
applicatifs. Entièrement développé en Java, MODERES représente
actuellement environ 35.000 lignes de code.
Au dessus de cet environnement, nous avons développé un point d'accès CMIS en Java (CmisOverJava) ainsi qu'une application de gestion appelée RelMan exploitant les informations issues des spécifications GRM sur les dépendances entre objets gérés. RelMan fournit un service de relations simple, extensible et dynamique permettant de traiter l'ensemble des dépendances entre ressources gérées au niveau du service et d'alléger ainsi les applications de gestion [12].
Dans le cadre des travaux sur la spécification et la vérification formelles des systèmes concurrents, nous avons défini deux sémantiques de parallélisme vrai. La première exploite la structure causale du processus et la deuxième repose sur l'hypothèse de la durabilité abstraite des occurrences d'action. Les modèles définis représentent des algèbres de processus. Par conséquent, cela nous fournit des formalismes de description explicite et de vérification algébrique du vrai parallélisme.
Le pouvoir descriptif de ces algèbres de processus a été enrichi en introduisant algébriquement le concept de raffinement d'actions. Ce dernier permet de relier des spécifications à des niveaux différents d'abstraction, en implantant une action abstraite par une activité concrète. Le concept de raffinement d'actions s'apparente à l'appel de procédure dans le cas de la programmation séquentielle [6].
Finalement nous avons étendu les deux modèles algébriques incluant le raffinement d'actions avec le mécanisme d'abstraction des actions inobservables, sachant que celui-ci représente un outil crucial pour la vérification dans l'algèbre de processus [2].
Dans le cadre des travaux sur le test de conformité, nous avons précisément défini la H-couverture et identifié le besoin de disposer d'un système d'écriture des hypothèses pour rendre cette mesure effective. Nous avons apporté une solution au problème sur un modèle particulier de systèmes : les automates à entrées-sorties. Nous avons notamment proposé deux représentations des hypothèses : l'une basée sur des ensembles de traces, l'autre sur des transformateurs d'automates [5][1].