Retour d expériences avec UML UML pour les systèmes biologiques Marie-Hélène Moirez-Charron, UMR AGIR, équipe MAGE INRA Toulouse mailto:marie-helene.charron@toulouse.inra.fr
PLAN Contexte de travail UML, dans quelles situations? Exemples Autres approches En résumé Remarque : cette présentation est une version «allégée» de la présentation présentée au cours de l école. Les schémas UML ont été retirés afin de les protéger car ils n ont pas encore été publiés.
Structure & Contexte de recherche UMR AGIR, Agrosystèmes et agricultures, Gestion des ressources, Innovations & Ruralités Unité Mixte de Recherche AGIR INP(ENSAT-ENFA-EIP)/ INRA(EA-SAD) Mots clés : agroécologie & innovation Effectif : ~ 100 agents «de longue durée» ( ~60 titulaires) 3 équipes en sciences agro-écologiques: Mage, Orphée, Vasco Production de connaissances et de méthodes: pour la conception et le diagnostic de systèmes techniques (grande culture, prairiaux et pastoraux) par l expérimentation et la simulation: pour la gestion de ressources (eau, biodiversité, ressources génétiques) 2 équipes en sciences sociales: Médiations, Ioda dispositifs d action collective appropriation des connaissances concertation et apprentissage gouvernance des filières et des coopératives =>Équipe MAGE : Modélisations Appliquées à la Gestion de l Eau développement et spatialisation de modèles biodécisionnels, conception et évaluation de systèmes de cultures à différentes échelles spatiales, de scénarios.
UML, pour qui, pour quoi faire? Faut-il utiliser UML? Ça dépend Quand, comment utiliser UML? Pas de recette : ça dépend des situations (humaines) Il est utile de connaître UML en tant qu outil parmi les outils disponibles dans sa boite à outils personnelle pour être capable de le mobiliser Point de vue de cette présentation : Vous présenter des situations où UML a été utile aux projets
UML : quelques situations expérimentées Tout seul : en tant qu informaticien en programmation orientée objet, dans les phases d analyse, de conception, d évolution/maintenance Ça marche bien en général en analyse et conception mais pas toujours en maintenance maintien à jour des schémas! A plusieurs entre thématiciens et/ou informaticiens, pour échanger avec un langage commun sur un projet informatique ou de modélisation Ça nécessite une bonne connaissance d UML, de la bonne volonté de tous documentation!
UML 2 : les 13 diagrammes En couleur, ceux que j utilise le plus fréquemment. Source Wikipedia
Toute seule Analyse Conception Maintenance/ évolutions Utilisation de UML au quotidien : En analyse, pour faire émerger les besoins avec le «client», pour mettre au clair mes idées sur le projet ou le domaine => faire émerger des questions En conception : En tant que doc : pour réutiliser du code ou le faire évoluer Pour mettre à profit les design pattern
Démarche de modélisation : représentation simplifiée du monde réel en vue ou pas d une implémentation UML n est pas qu un outil pour ou avec les informaticiens UML peut également être utilisé par d autres disciplines, dans un travail de modélisation Deux exemples : Ontologie, système d information MAGE (Projet Spacss) Modélisation, ontologie (Thèse assolement, J. Dury)
SI MAGE Contexte : Nécessité de capitaliser et partager les données acquises ou produites par les projets de l équipe Projet décidé suite aux limites identifiées à la fin du projet SPACSS (spatialisation des systèmes de culture à l échelle du territoire et gestion quantitative de l eau) Il faudrait définir un système d information commun Il est impératif de s accorder sur les concepts => Animation dans l équipe MAGE autour de la définition du système d information (travail mené avec Pierre Casel)
Animation dans l équipe MAGE autour de la définition du système d information : Bilan : mon point de vue (1/2) En chiffres : Participation à l organisation d une formation UML (INRA- Acta) suivie par une quinzaine de personnes dont 7 de l équipe MAGE Une douzaine de réunions «plénières», 8 participants potentiels, en moyenne 5 personnes par réunion 11 versions du modèle UML Une petite centaine de classes élicitées dont une vingtaine de concepts bien documentés
Animation dans l équipe MAGE autour de la définition du système d information : Bilan : mon point de vue (2/2) Points positifs : - A créé une dynamique dans l équipe : davantage d échange inter projets - A permis aux nouveaux arrivants d avoir + rapidement une vision des travaux de l équipe - Pour moi, meilleure intégration dans l équipe, meilleure connaissance des questions de recherche - UML adopté par l équipe, un thésard l a mobilisé tout au long de sa thèse, le bouche à oreilles fonctionne => des personnes intéressées pour se former en 2012 Limites : - Projet ontologie très intéressant mais pas financé, nécessite encore beaucoup de travail pour être valorisable : difficile de mobiliser les chercheurs au delà de 4 mois - On maîtrisait collectivement davantage UML que les concepts des ontologies : UML outil pour l animation puis conversion UML=> OWL pas totalement automatique - UML favorable à l objectif opérationnel (SI pour le projet SPACSS) : lien classestables relativement facile à faire : objectif opérationnel a pris le pas sur objectif ontologie - Schéma UML insuffisant => documentation insuffisante : objectif SI atteint, objectif ontologie pas atteint
Animation dans l équipe MAGE autour de la définition du système d information : Bilan : point de vue des agronomes (1/2) A créé une dynamique dans l équipe => davantage d échange inter projets, meilleure connaissance mutuelle des différents projets Discussions intéressantes sur les concepts manipulés => des définitions claires et partagées mais on n a pas fait l effort de les écrire toutes! Formalisme (UML, ontologie) très intéressant pour discuter, mais non totalement maitrisé par les chercheurs =>on a eu besoin des informaticiens pour tenir la plume et arbitrer entre différentes représentations : ces discussions sur des questions de formalisme peuvent perturber les échanges sur le fond mais aussi pour nous pousser à lever des ambiguïtés Projet pas financé : temps limité à y consacrer, non prioritaire une fois les schémas réalisés =>valorisation non faite Difficulté aussi à voir comment valoriser ce travail collectif qui a été couteux en temps: publier sur une vue? Sur l ensemble des vues? il nous a semblé difficilement valorisable sans un travail supplémentaire (enquête autour d un concept)
Animation dans l équipe MAGE autour de la définition du système d information : Bilan : point de vue des agronomes (2/2) Une question à se poser, en fonction des participants à la démarche de modélisation Faut-il initier la modélisation avec UML ou avec un formalisme plus accessible pour les thématiciens et ensuite réduire les ambiguïtés avec UML?
Assolement Exemples issus de la thèse de Jérôme Dury sur la modélisation du processus de décision lié à la définition de l assolement par un agriculteur UML utilisé pour représenter, pour aider à réfléchir, à généraliser, à conceptualiser, voire à implémenter Avantages : + Assure la consistance tout au long du processus de modélisation Les diagrammes documentent l état du modèle au cours du processus de modélisation Ils permettent les retours en arrière, de garder le lien entre les différentes étapes de la modélisation + Favorise la cohérence entre le modèle conceptuel et le modèle implémenté + Facilite le passage à l implémentation Représentation /transcription Modélisation Méta-modélisation Implémentation Monde Représentation Modèle Méta-modèle réel Modèle implémenté
Assolement Exemples issus de la thèse de Jérôme Dury 1 er exemple : représentation d une rotation =>Diagramme d état : pour représenter, pour aider à réfléchir, à généraliser, à conceptualiser 2 nd exemple : modéliser le processus de décision Différents diagrammes UML mobilisés au cours du processus de modélisation : Diagramme d état d objet : pour aider à identifier les concepts utilisés par les agriculteurs (cas issus d enquête) Diagramme d activité : pour représenter le processus de décision (cas issus d enquête) Diagramme de classes d analyse : pour aider à faire émerger un modèle par généralisation Diagramme de classes de conception : pour la représentation du modèle implémentable Réf : Thèse de J. Dury : The cropping-plan decision-making: A farm level modelling and simulation approach.
Assolement Pour davantage d informations, se reporter à : -Thèse de J. Dury : The cropping-plan decision-making: A farm level modelling and simulation approach, soutenance le 9/12/2011 à 14h INRA Toulouse Auzeville - Dury, J., F. Garcia, A. Reynaud, O. Thérond, JE. Bergez, 2010. A case-based methodology for modelling decision-making processes: cropping-plan choices. Environmental Modelling and Software (soumis) - Dury, J., F. Garcia, A. Reynaud, O. Thérond, JE. Bergez, 2010. Modelling the Complexity of the cropping-plan Decision-making. In Environmental Modelling and Software, ed. International Environmental Modelling and Software Society. Ottawa, Canada, p. 8.
Autres approches, en modélisation UML est un langage : ce n est pas une méthode. Il existe d autres «outils» pour dialoguer entre disciplines et/ou avec des acteurs et arriver à modéliser un domaine Il existe également d autres langages de modélisation. BMPN (Business Process Modeling Notation), pour la modélisation des processus métier EA (Architecture d Entreprise), modélisation du SI SysML (System Modeling Language), modélisation des systèmes pilotés Ref : Workshop «Modélisation des processus Ecole IDL2011, métiers La Londes (BPM) Les en Maures, agriculture», 18-21/10/2011, RMT Modélisation
Autres approches en modélisation Démarche ARDI Dans le projet MAELIA, on a mobilisé la démarche ARDI pour construire, entre partenaires et chercheurs de différentes disciplines, un modèle de fonctionnement du territoire sur la question de la gestion de l eau dans le bassin Adour-Garonne. De ce modèle, on a déduit, par itérations successives, À l aide d UML, un modèle de classes restreint à la question traitée et tenant compte de la démarche retenue (Système Multi Agent) un modèle conceptuel de données correspondant aux données disponibles pour traiter la question retenue Ces deux modèles seront implémentés et instanciés dans la plateforme SMA Gama afin de pouvoir tester des scénarios relatifs à la gestion quantitative de l eau sur un territoire dans le bassin Adour-Garonne. Références :«ARDI : a co-construction method for participatory modelling in natural ressources management», M. Etienne, D. Du Toit and S. Pollard Guide ARDI sur internet : cormas.cirad.fr/pdf/guideardi.pdf (Michel Etienne, COMMOD)
En résumé Il est utile de connaître UML en tant qu outil parmi les outils disponibles dans sa boite à outils personnelle pour être capable de le mobiliser, seul ou à plusieurs, dans une démarche de modélisation et/ou de développement Mais d autres «outils» complémentaires peuvent faciliter le travail avec les thématiciens Les diagrammes UML ne suffisent pas : => il faut maintenir à jour, versionner et documenter les schémas