![]() |
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||
ProblématiqueLes systèmes informatiques modernes sont distribués, pervasifs (embarqués, enfouis), hétérogènes, déployés sur des réseaux à grande échelle et sur des machines administrées indépendamment. Les environnements qui supportent leur exécution sont instables et les applications doivent faire face à la volatilité des ressources et des services. Elles doivent être flexibles et être capables de s'adapter dynamiquement. Pour concevoir des applications en tenant compte des besoins et des problèmes liés à ce contexte, il est nécessaire de se baser sur des technologies logicielles adéquates. Les principaux besoins à prendre en compte lors du développement sont la localisation des ressources, l'organisation des traitements répartis, la sûreté de fonctionnement et la sécurité. Les objectifs de nos travaux sont de proposer et d'évaluer des technologies logicielles qui contribuent à maîtriser la complexité du développement, du déploiement et de la maintenance d'applications réparties adaptables. Les solutions proposées s'appuient sur une combinaison de technologies : composants, agents logiciels, intergiciels (ou middlewares), systèmes adaptables. Nous proposons un modèle d'agent mobile adaptable configurable statiquement, capable de se reconfigurer dynamiquement pour s'adapter aux variations de son contexte d'exécution, réalisé à partir d'un assemblage de micro-composants remplaçables et spécialisables. A partir de ce modèle d'agent mobile adaptable, nous proposons un patron de conception pour la mise en oeuvre de systèmes répartis à grande échelle, basé sur le mode pair à pair et le déploiement adaptatif de composants logiciels. Enfin, nous proposons un style d'architecture d'agent flexible dans lequel différents assemblages de micro-composants permettent d'engendrer différents modèles d'agents adaptables, selon les besoins applicatifs. La vérification des assemblages s'appuie sur l'utilisation de descripteurs de composants. Pour chaque proposition, nous avons réalisé des prototypes pour valider notre approche (agent mobile adaptable et patron de conception) ainsi qu'un environnement de développement pour la modélisation d'agents, la vérification des assemblages de micro-composants et la génération de leurs squelettes d'architectures. ContributionsProposition d'une architecture d'agent mobile adaptable Les agents mobiles sont par nature des outils d'adaptation et de déploiement. Ils sont a priori destinés à la mise en oeuvre d'applications réparties dont les performances varient avec la disponibilité et la qualité des services et des ressources, et avec le volume des données déplacées. Nous avons proposé une architecture d'agent mobile adaptable -AMA- dans laquelle différents mécanismes élémentaires internes des agents sont réifiés sous forme de micro-composants. Chacun correspond à un aspect non fonctionnel activé par délégation (boîte aux lettres, déplacement...). Les micro-composants sont manipulables et interchangeables, ce qui permet l'évolution et l'adaptation individuelle au contexte d'exécution.
Proposition de frameworks pour le déploiement de composants en P2P Nous proposons un modèle de conception pour les applications P2P basé sur le couplage entre les technologies composants, agents mobiles et pair à pair (P2P). D'une part, l'encapsulation des composants par des agents mobiles permet de simplifier le déploiement par délégation au middleware de la gestion du déplacement et de l'installation. D'autre part, les capacités d'adaptation des agents leur permettent de jouer un rôle de conteneur spécialisable de composants. Aussi, nous avons mis en oeuvre des frameworks à base d'AMA pour le déploiement de composants, qui tirent parti des bénéfices du middleware.
Proposition d'un modèle d'agent flexible Le modèle d’agent flexible étend le modèle d’agent adaptable en ajoutant un niveau de flexibilité dans l’architecture. Cette flexibilité permet d’engendrer des types d’agents différents, dynamiquement adaptables avec des propriétés non fonctionnelles adaptées à leur environnement. De manière similaire au modèle d’agent mobile adaptable, les agents sont constitués d’un ensemble de micro-composants non-fonctionnels reliés à un connecteur. Les architectures engendrées sont plus performantes (taille minimale, meilleure vitesse d’exécution), et leur minimisation offre une meilleure sûreté (vérifications plus simples sur un ensemble de micro-composants minimal).
Ma thèse et les principales démonstrations sont disponibles en ligne sur : http://demo.javact.org. Recherches actuellesJe travaille actuellement sur le projet NeoComputing (projet inter-équipes de l'IRIT qui vient de débuter). Ce projet a pour but de fournir les modèles, outils et infrastructures logicielles nécessaires pour le développement d'applications embarquées distribuées sur des appareils électroniques « prêts à intégrer un environnement d'intelligence ambiante ». Mes travaux visent d'une part à montrer l'adéquation des architectures logicielles d'agents développées dans le cadre de ma thèse, d'autre part à fournir des outils logiciels (middleware agent) pour les autres acteurs du projet. Pour l'instant, j'ai montré qu'il était possible de construire un micro-composant s'intégrant dans les architectures d'agents pour exploiter le middlware IVY, l'intégration a pris moins d'une heure et a permis d'obtenir un composant complètement réutilisable. Actuellement, je travaille avec un groupe d'étudiants sur un projet de domotique qui servira de support d'expérimentation pour mes architectures d'agents. Parcours de rechercheJ'ai débuté la recherche en DEA (2002-2003) dans l'équipe LYRE (ingénierie des Langages pour les sYstèmes Répartis et Embarqués) dirigée par Patrick Sallé (IRIT-ENSEEIHT), en m'intégrant aux travaux de l'équipe située sur le site de l'université Paul Sabatier autour des modèles de programmation et des technologies agent mobile, composants logiciels, systèmes répartis à grande échelle. J'ai poursuivi ces travaux encadrés par Jean-Paul Arcangeli dans ma thèse de doctorat qui a suivi, dans le même contexte. Actuellement, je suis ATER à l'université Paul Sabatier et je poursuis mes recherches dans l'équipe SMAC avec laquelle l'ex-équipe LYRE a fusionné. Encadrement2007 Encadrement
d'un TER (maîtrise d'info) : « Agents et Domotique »
2006 Encadrement d'un étudiant en stage de fin d'étude ENSEEIHT - Projet SINBAD/CNES - Cap Gemini (Toulouse). Technologies Java/Swing/SPRING/HIBERNATE/ANDROMDA 2006 Encadrement
d'un TER (maîtrise d'info) : « Agents
mobiles pour le déploiement et le rendu en pair à
pair d'animations 3D »
2005 Co-encadrement d'étudiants N7 (3è année) avec F. Migeon et S. Rougemaille : « Développement d'un plugin JavAct pour Eclipse » 2004 Encadrement d'un stagiaire d'IUP SI 2 : « Mobilité d'agent et déploiement d'application » 2004 Co-encadrement de 2 TER (maîtrise d'info.) avec J.-P Arcangeli : « Sécurité pour les agents mobiles » et « Mutualisation et recherche d'informations réparties sur Internet » 2004 Co-encadrement d'étudiants ENSEEIHT (2ème année) avec J.-P Arcangeli 2003 Co-encadrement d'un TER (maîtrise d'info) avec J.-P Arcangeli : « Développement d'un outil de recherche et de téléchargement de fichiers répartis à base de sources multiples »
Tableau de synthèseLes enseignements suivants ont été réalisés à l'université de Toulouse III, avec trois statuts différents : vacataire l'année 2002/2003 (je souhaitais pouvoir découvrir l'enseignement supérieur) puis moniteur durant la préparation de mon doctorat (de 2003 à 2006) et enfin ATER depuis le début 2006. Au total, je cumule actuellement environ 350h d'enseignement supérieur, réalisé à des niveaux différents et sur des thématiques variées. La description succincte des enseignements est donnée en page suivante.
Lien vers quelques exemples de sujets réalisés
Expérience professionnelle2006-2007 ATER - Université Paul Sabatier (96h équivalent TD)
2003-2006 Allocataire de recherche - Moniteur - Université Paul Sabatier (3 x 64h équivalent TD)
2005 et 2006 Correcteur du concours commun polytechnique Epreuve d'informatique – classes MP Oct. 2005 Consultant Nouvelles Technologies pour IBM et IB-formations Formations Java/linux à Aix en Provence
Formation2007 Qualification Maître de Conférence, section 27 (Informatique)
2003-2006 Thèse de doctorat en informatique, Toulouse III - IRIT
Mention
« Très Honorable »
2003-2006 Suivi de formations du CIES, Toulouse Pédagogie, psychologie, système éducatif...
Printemps Participation aux Doctoriales de Midi-Pyrénées, Toulouse 2005 Séminaires pour l'insertion du docteur dans l'entreprise
Printemps Ecole de jeunes chercheurs en programmation, Le Croisic 2004 Langages, systèmes répartis, formalismes de spécification/validation, cryptographie...
2002-2003 DEA Programmation & Systèmes, mention Bien, Université Paul Sabatier, Toulouse III Classé
2ème, bourse de mérite universitaire
2001-2002 Maîtrise d’informatique, mention A. Bien, Université Paul Sabatier, Toulouse III
2000-2001 Licence d’informatique, mention Bien, Université Paul Sabatier, Toulouse III
1998-2000 DEUG MIAS, Université Paul Sabatier, Toulouse III Options informatique, astrophysique
1998 Baccalauréat S, spécialité mathématiques, Lycée P. de Fermat, Toulouse
Expérience personnelleInformatique Plongée Hors université et dans un contexte associatif, je suis le directeur technique d'un club de plongée sous-marine, dans lequel je forme et supervise les cadres techniques (25 moniteurs actifs). Depuis 2001 (date de l'obtention de mon diplôme de moniteur fédéral 1er degré) j'ai ainsi formé directement 25 initiateurs (premier diplôme de formateur) et environ 150 plongeurs de tous niveaux. Cela comprend des cours théoriques, des séances de formations en piscine et en mer, la mise en place et la direction de stages de plongées (semaines de formation) ainsi que la participation à de nombreux jurys de niveau régional et national. Autres
![]()
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||