Skip to content. | Skip to navigation

Emergences

Lettre d'information n° 08

Image emergences pour impression
Personal tools
You are here: Home 2010 Lettre d'information n° 08 Tocea, un service de refactoring Java
Document Actions

Tocea, un service de refactoring Java

Issue des recherches de l'équipe-projet ALF de l'UMR IRISA et de l'Inria Rennes - Bretagne Atlantique, une nouvelle entreprise s'apprête à lancer une offre de services outillés permettant d'auditer et d'automatiser la correction ou la modification des applications du monde Java.

Issue des recherches de l'équipe-projet ALF de l'UMR IRISA et de l'Inria Rennes -  Bretagne Atlantique, une nouvelle entreprise s'apprête à lancer une offre de services outillés permettant d'auditer et d'automatiser la correction ou la modification des applications du monde Java.

C'est l'histoire d'une technologie qui fait un ricochet. Tout commence il y a deux ans avec Serenitec, un projet de recherche, dans le cadre du pôle de compétitivité  Images et Réseaux, sur un logiciel de réécriture automatique de code capable de contribuer à une meilleure sécurité des applications Java. On appelle cela du ‘refactoring’. "Durant ces travaux, il nous est apparu que l'outil développé pouvait, en fait, servir à autre chose, en dehors du contexte de la sécurité", constate Sylvain Leroy, ingénieur-expert Inria.(1)

À partir de là, "l'idée a consisté à sortir du cadre Serenitec et constituer une start-up" pour permettre à cette technologie de connaître un usage plus large. "Cela dit, nous conservons notre focus sur les applications écrites en Java." Ce langage de programmation concerne énormément d'applications dans le domaine web. Dernier exemple en date : le Kindle, le livre électronique de la librairie en ligne Amazon. Mais beaucoup de ces programmes sont plus anciens. Ils doivent donc évoluer. Et c'est là que les outils de refactoring présentent tout leur intérêt. "Le cas de figure classique ? l'entreprise dotée d'une application qu'elle veut remettre au goût du jour en rajoutant une fonctionnalité. Elle contacte son prestataire informatique, une SSII. À première vue cela ressemble à une petite modification, de la maintenance. Le prestataire estime la charge de travail à  un homme/mois. Mais en cours de réalisation, il apparaît que la fonctionnalité touche à une partie critique de l'application. Les technologies auparavant utilisées doivent être mise à jour." Mauvaise surprise : "le changement impacte de nombreuses fonctions. Au total, le chantier se chiffre à... 40 hommes/mois ! La SSII se retrouve face à une grosse sous-estimation des coûts et des tâches répétitives dues à la la migration de l'application. Elle s'expose à des pénalités de retard..."

Audit, puis ré-écriture

Tocea intervient à deux niveaux pour éviter ce scénario. "Dans un premier temps, nous proposons d'effectuer un audit en lien avec le cahier des charges du client. Cet audit nous donne une visibilité et un état sur le code et les modifications à effectuer. Ensuite, nous pouvons engager une automatisation de la mise à jour, soit pour des problèmes particuliers que nous avons détectés, soit pour les dysfonctionnements signalés par le client. L'audit réalisé et la technologie permettent grâce à l'automatisation une réécriture du code plus rapide." Ce logiciel de refactoring n'est pas un outil que l'on peut acheter sur CD et lancer ex abrupto. "Son emploi demeure assez complexe. Donc notre intervention prendra la forme d'une prestation outillée." C'est un ingénieur qui se rendra chez le client.

"Nous pensons d'abord nous adresser aux SSII qui vont pouvoir nous recruter pour des prestations auprès de leurs clients, explique Marie-Anne Bussière, porteuse du projet. Mais les DSI, les directions des systèmes d'information dans les entreprises, elles aussi vont pouvoir faire appel à nous. Nous entrons en prospection pour trouver des partenaires afin d'affiner le service à travers des études de cas." Cette mission est dévolue à Florent Leray, un ingénieur récemment recruté dans le cadre du fond de maturation de la Région Bretagne. "Mon travail va consister à aller sur le terrain à la rencontre d'entreprises qui peuvent nous présenter des cas d'étude d'applications, pour déterminer si nous pouvons proposer une solution d'audit et de refactoring ou pas. Cette approche nous permet de mesurer les problèmes rencontrés au quotidien, puis de tester et calibrer notre proposition."  Ensuite, le démarrage effectif aura lieu en septembre 2010.

-------
Note :

(1) Ingénieur-expert sur le projet Serenitec, Sylvain Leroy intervient dans Navis en tant que conseiller scientifique. Autre conseiller scientifique : François Bodin, professeur à l'Université de Rennes 1, membre de l'équipe-projet ALF et directeur de l'IRISA.

Lire également :
Sécurité et maintenance des applications web en Java