Thèse soutenue

Methodologie de conception de composants logiciels cooperatifs : une approche pour l'observation, la mise au point et la maintenance evolutive d'applications reparties

FR
Auteur / Autrice : Daniel Prun
Direction : Pascal Estraillier
Type : Thèse de doctorat
Discipline(s) : Sciences et techniques
Date : Soutenance en 1998
Etablissement(s) : Paris 6

Résumé

FR

L'activite de maintenance represente plus de 80% du cycle de vie d'un logiciel. Cette part est croissante car les environnements d'execution sont de plus en plus complexes, et car l'inter-operation de composants applicatifs, d'extensions enfichables et de service de la plate-forme est beaucoup plus difficile a comprendre que l'execution d'une application monolithique. De plus, l'activite de maintenance n'apparait qu'a posteriori dans le cycle de vie du logiciel. Nous proposons une approche methodique centree sur l'interaction ou la mise au point et la maintenance sont prises en compte des la conception. Les applications visees sont celles que nous qualifions de cooperatives. Elles utilisent des organisations en groupe, des techniques d'appels d'offres, de prise de decisions collectives, de negociation. Elles utilisent au mieux la gestion du parallelisme, de la repartition et des phenomenes dynamiques (courtage de requetes, nomadisme des utilisateurs ou mobilite du code). L'approche que nous proposons : - est centree sur l'interaction : un composant s'execute dans le contexte d'une collaboration formalise par un squelette d'interaction. - favorise adaptation et re-utilisation : la demarche consiste a structurer l'application de maniere a faire apparaitre des problemes recurrents pour lesquels des patrons de conception existent. Les patrons de conceptions documentent les squelettes. - favorise la maintenance : les composants integrent des mecanismes d'observation et de re-execution de leur comportement. Cette methode est mise en oeuvre dans la conception et la realisation de structures de controle et d'outils d'observation et de re-execution dans le cadre de la plate-forme mathilda dont nous discutons les limites et les possibilites d'evolution.