Skip to content. | Skip to navigation

Emergences

Lettre d'information n° 03

Image emergences pour impression
Personal tools
You are here: Home 2009 Lettre d'information n° 03 L'ingénierie de modèle au service des SSII
Document Actions

L'ingénierie de modèle au service des SSII

AtlanMod est une équipe de recherche commune à l'Inria et à l’Ecole des Mines de Nantes. Sa spécialité : les technologies de modélisation pour la production, le fonctionnement et l'évolution du logiciel. A sa tête : Jean Bézivin, un des précurseurs de ce thème de recherche  dont il s'apprête à co-écrire un nouveau chapitre.

AtlanMod est une équipe de recherche commune à l'Inria et à l’Ecole des Mines de Nantes. Sa spécialité : les technologies de modélisation pour la production, le fonctionnement et l'évolution du logiciel. A sa tête : Jean Bézivin, un des précurseurs de ce thème de recherche  dont il s'apprête à co-écrire un nouveau chapitre.

Le triangle Nantes - Le Mans - Niort est une région qui concentre pléthore de banques, assurances, mutuelles et services administratifs divers. Une forte densité de grands comptes. Des groupes avec des besoins informatiques considérables autour desquels gravite une myriade de SSII. Ces sociétés de services emploient plusieurs milliers d'informaticiens, souvent dans des projets de maintenance et de modernisation externalisés de parcs logiciels parfois anciens.

Pour Jean Bézivin, la modernisation de ce code patrimonial des entreprises constitue "un défi industriel majeur associé à des problèmes durs de recherche." La rapidité des évolutions actuelles des entreprises (changements réglementaires, fusions) ainsi que le départ en retraite annoncé de nombreux collaborateurs, derniers dépositaires de la connaissance profonde sur ce patrimoine logiciel,  créent "une situation d’urgence à laquelle il va falloir répondre dans des délais courts. Entre les deux solutions extrêmes, ne rien faire ou tout reconstruire à partir de zéro, l’option raisonnable est de commencer immédiatement par inventorier le portefeuille des logiciels de chaque entreprise et de définir des stratégies progressives de modernisation ou de migration.

Coûteux et urgents, ces projets nécessitent des méthodes innovantes, basées sur de fortes montées en abstraction. C’est ici que l’ingénierie des modèles vient à la rescousse.  "On pourra construire la carte sémantique d’un système d’information sous forme d’un modèle global. L’un des éléments de cette carte pourra être un programme Cobol que l’on représentera par un autre modèle. Enfin on pourra appliquer une transformation à ce modèle pour en extraire les règles métier, sous forme d’un troisième modèle. On voit assez clairement comment l'ingénierie des modèles va pouvoir aider à extraire, transformer et exploiter ces différentes entités (1) dans des objectifs de modernisation et de migration."

Face aux grands chantiers de refonte des systèmes d’information,  la région de Nantes possède de nombreux atouts. "Les clients sont là qui fournissent des cas d’utilisation réels. Les PME innovantes coopèrent avec les SSII pour définir des techniques avancées d’ingénierie des modèles qui permettront d’offrir aux grands comptes les outils de modernisation et de migration les plus sûrs et les plus économiques. Au-delà des solutions d’aujourd’hui, il faut préparer aussi celles de demain car le problème est difficile et la concurrence forte." C’est ici qu'intervient AtlanMod (2). En toile de fond : le logiciel open source.

L'équipe a été une des premières à parier sur la plate-forme Eclipse, développant tous ses projets sur cette base. "C’est ce qui permet aujourd’hui de transférer vers des PME innovantes (les fournisseurs de technologie)  les prototypes de recherche qui deviennent des produits commerciaux équipant les ingénieurs en modernisation de logiciel." Ce choix explique l’implication d’AtlanMod dans de nombreux pôles de compétitivité comme System@tic, Aerospace Valley, Minalogic ou Images et Réseaux

L’histoire d'AtlanMod commence dans les années 1980. "On avait fait le pari de la technologie des objets avec des collègues comme Pierre Cointe (2)". Puis "tout le monde  a commencé à l'utiliser avec l'émergence de langages comme C++ ou Java. Il fallait donc se fixer de nouveaux défis de recherche". À partir de 1990, "nous avons été parmi les premières équipes internationales à orienter nos travaux de recherche vers l'ingénierie de modèles."  Cette discipline considère les systèmes logiciels comme des graphes typés. Elle  fournit deux gammes d'outils. D'abord les métamodèles. "Ce sont des ontologies, des graphes de concepts et de relations entre ces concepts. Un métamodèle peut être vu comme définissant la syntaxe abstraite d’un langage spécialisé. Il caractérise, de façon précise et calculable, une facette d'un système."  Ensuite il y a les outils de transformation de modèles qui permettent de définir toutes les formes de conversions nécessaires pour le développement, le fonctionnement ou la maintenance d’un système logiciel. "Ce sont souvent des langages déclaratifs à base de règles. Une transformation permettra par exemple en fin de chaîne de générer du code terminal (en langage Java par exemple), à partir d’un modèle abstrait. Une autre transformation pourra prendre en entrée du code patrimonial (en ADA, COBOL ou en PL/1 par exemple)  et le traduire en un modèle conforme à un métamodèle de règles métier." C’est ce que l’on appelle le reverse engineering, ou la rétro-ingénierie.

Le premier projet de l’équipe en 1993 a été le transfert d'un prototype de recherche vers la société Sodifrance. "Très vite, nous avons développé une collaboration industrielle intéressante avec cette société. Nous avions nos techniques mais ils nous ont apporté un problème concret à résoudre. C’est ce qui a permis de proposer les premiers prototypes  d’ingénierie des modèles de l’époque basés sur des réseaux sémantiques (sNets).  En développant un outil industriel (Semantor) à partir  de nos prototypes de recherche, ils ont pu aborder les marchés grands comptes locaux, nationaux et même internationaux." Cette nouvelle technologie est arrivée à point nommé pour deux moments critiques : le passage à l'an 2000 et le basculement vers l'Euro. "Il a fallu aller fouiller dans les programmes Cobol pour effectuer l'actualisation des dates et des devises. Grâce à l'ingénierie de modèles, Sodifrance a abordé le marché en position de leadership avec des outils d'automatisation qui lui ont permis, à l'époque, de prendre une longueur d’avance dans le domaine de la modernisation de logiciels."

Dans les années 90 l’équipe collabore aussi avec le consortium OMG (Object Management Group) sur la définition de langage UML, puis sur la proposition MDA. "En novembre 2000, l’OMG a changé de direction. L'idée, c'était de considérer le système d'information pour en extraire un modèle indépendant de la plate-forme (PIM) à partir duquel on puisse générer vers une plate-forme spécifique (PSM)."

Le passage de ces PIMs aux PSM a mis en évidence l'importance  des techniques de transformation de modèles proposées par l'équipe dès 1998.  "L'OMG a validé et accompagné cette intuition. Elle a soutenu ces approches."  Ceci a donné naissance à ATL (AtlanMod Transformation Language), un langage de transformation de modèles diffusé sur la plate-forme Eclipse. Comme souvent, le recours à l’open source donne à ces technologies une grande visibilité. "Beaucoup d'industriels dans le monde utilisent ATL et les outils associés."

Depuis la période des sNets et de Semantor, le paysage s'est diversifié. Sodifrance, a créé Mia-Software, une filiale spécialisée en transformation industrielle des systèmes d’information. D'autres PME innovantes se sont  affirmées sur le même créneau comme Sodius, Cofluent Design, Blue XML, Obeo... "Nous travaillons avec toutes ces sociétés, souvent dans des projets nationaux ou internationaux. Il y a aussi les entreprises de service comme CAP Gemini, Sogeti, ATOS-Origin et d'autres qui développent dans leur centre de Nantes des compétences fortes sur l’ingénierie des modèles."

Les prototypes élaborés par AtlanMod sont "internationalement connus et utilisés" : KM3, AMW, AM3, TCS, MoDisco, sans oublier ATL, un langage dont le succès "a amené beaucoup d’industriels et d’académiques à l’utiliser quotidiennement." Puis, "cette communauté a commencé à demander de la stabilité, de la documentation finalisée et du service." Pour AtlanMod, ces demandes devenaient incompatibles, son statut d’équipe de recherche visant essentiellement l’évolution et l’innovation. "Il fallait une solution. C'est un partenariat avec la société Obeo qui a permis de la trouver." Cette société prend en charge l’industrialisation d’ATL tout en lui conservant son statut en open source. Elle développe des services autour de la transformation de modèles et  conforte encore sa position de leader industriel international des technologies de modélisation. De son côté, AtlanMod peut libérer de la ressource pour travailler sur de nouveaux prototypes de recherche.

Dégagés des contingences quotidiennes de la fourniture d'outils finalisés et de services, les chercheurs restent ainsi "focalisés sur l'innovation et capables de prendre des risques pour arriver la prochaine fois encore avec quelque chose en avance de phase." Au passage, le récent déménagement dans l'Ecole des Mines marque aussi un rapprochement avec l'univers industriel. Les chefs d'entreprises sont nombreux à pousser la porte.

Chez les grands comptes, le paysage lui aussi, continue d'évoluer. "Avec la mondialisation, les entreprises fusionnent de plus en plus. Or, leurs systèmes d'informations reposent sur des technologies différentes." Pour gagner en compétitivité, en économie d'échelle, il faut donc réussir la refonte et la modernisation des systèmes d'information patrimoniaux (3). "Dans les entreprises, les systèmes se sont construits au fil des ans en empilant des couches successives en fonction des besoins du moment et des multiples intervenants. J'appelle cela le Tchernobyl du logiciel. Quand on soulève le sarcophage d'encapsulation logicielle, on ne sait pas très ce qu'on va trouver en dessous. Parfois, c'est du très vieux !" Cette ouverture est souvent différée car très coûteuse. Les directions ne voient pas toujours clairement le retour sur investissement.  "Fréquemment, la migration est iso-fonctionnelle. On refond avec une nouvelle technologie, mais l'utilisateur retrouve les fonctions dont il disposait avant, sans plus." Quant à la facture, même en iso-fonctionnel, elle s'avère très lourde, "mettre le nez là-dedans coûte parfois très cher : il y a des millions de lignes... Du code hétérogène, complexe, évolutif. Et on ne peut pas arrêter le système et le service au client pour raisons de migration."

Le défi, c'est aussi "de faire fonctionner tout cela sur les nouvelles plate-formes en permettant l'intégration de  notions nouvelles comme par exemple le cloud computing ou le peer-to-peer (5). Ce marché est très convoité partout dans le monde. Pas un hasard si on voit des entreprises indiennes s'y intéresser." Or, pour gérer l'évolution des systèmes d'information patrimoniaux, l'ingénierie de modèle "offre une technologie idéale. Elle permet de calculer un point de vue sur le système, de le traiter à travers un modèle et ensuite de le transformer automatiquement. C'est un avantage considérable."

On compte des dizaines de milliers d'informaticiens impliqués dans la gestion de l'évolution des parcs de logiciels des entreprises. "Il faut leur apporter l'aide automatisée dont ils vont avoir de plus en plus besoin. Un seul type d'acteur ne peut pas répondre à tous ces besoins. Il faut des partenariats forts et stables où se retrouveront les clients et les fournisseurs de solutions. Les laboratoires de recherche publics ne peuvent pas se permettre d'être absents." AtlanMod a déjà répondu présent avec l'appui des collectivités et en partenariat avec tous les acteurs de l'écosystème nantais.

---

Notes :


(1) On parle d'artefacts logiciels de natures diverses.

(2) AtlanMod signifie Atlantic Modeling.  Elle est issue de l'équipe projet Atlas dirigée par Patrick Valduriez et commune à l'Inria et l'Université de Nantes. AtlanMod a reçu en 2004, le prix international IBM de l'innovation pour sa proposition du langage ATL dans l'environnement Eclipse.

(3) Pierre Cointe est directeur du Lina, Laboratoire d'Informatique de Nantes Atlantique et membre de l'équipe projet ASCOLA commune à l'Inria et à l'EMN. Les deux chercheurs sont à l'origine de la création d'Ecoop, la conférence européenne sur la programmation objet.

(4) En anglais : Legacy Modernization.

(5) Cloud computing : l'informatique reposant sur des systèmes dispersés interconnectés. Le peer-to-peer ou pair-à-pair a permis une décentralisation des systèmes, auparavant basés sur quelques serveurs, en permettant à tous les ordinateurs de jouer le rôle de client et serveur.

 atlanmod

Jean Bézivin et son équipe : Hugo Brunelière, Benoit Combemale, Jean-Sébatien Sottet, Mathias Kleiner, Massimo Tisi, Cauê Avila Clasen, Kelly Garces, Guillaume Doux, Daniel Perovich, Frédéric Jouault et Narendra Jussien (responsable du département d'informatique de l'EMN).

L’équipe Atlanmod dans l’Ecole des Mines de Nantes