Comment augmenter la productivité d'équipes de développeurs répartis dans le monde sur des dizaines de projets différents ? C'est à ce besoin complexe que répondent les logiciels de gestion de configurations. Véritables tours de contrôle des directions informatiques, ils unissent les équipes autour d'un référentiel de code unique pour favoriser la réutilisation de composants et faciliter les déploiements. Encore peu utilisés jusqu'à présent, ces outils deviennent incontournables lorsque les entreprises se lancent dans des développements J2EE ou.Net.
« La faible granularité du code et la nécessité de mutualiser les développements au sein de frameworks d'entreprise en sont les deux principaux facteurs d'adoption »,
constate Sami Jaber, architecte chez Valtech.
Chez BNP Paribas Securities Services, ces besoins se sont déjà fait sentir il y a trois ans, lors du passage à Java. Implanté dans dix-sept pays, le fournisseur de services de titres pour les clients institutionnels emploie quatre cent cinquante informaticiens, dont cent quatre-vingts développeurs Java, qui travaillent en permanence sur une soixantaine d'applications. Des prestataires en France et en offshore complètent régulièrement les équipes internes.
Industrialiser les développements
La banque s'appuie sur Starteam, de Borland, pour industrialiser le cycle de vie de ses applications. Elle se lance, en effet, dans un nombre croissant de développements Java. Or, la faible granularité génère de nombreux fichiers cinq cent mille actuellement pour une soixantaine de projets, et la gestion des différentes versions du code en développement, stable, etc. , associée à la nécessité de travailler à plusieurs sur ces fichiers, multiplient les risques écrasement, travail à partir d'une mauvaise version, etc. Le gestionnaire de configurations de Borland participe donc à la coordination des équipes de développement et de production.
« Starteam s'avère indispensable pour organiser les développements J2EE, très atomisés par essence,
analyse Pascal Jarry, responsable de l'architecture technique de BNP Paribas Securities Services.
Il nous aide à les mutualiser au sein d'un ensemble de composants J2EE commun à tous les projets : Sweetdev, de la société Ideo Technologie. En effet, le recours à ce framework nécessite une bonne coordination pour éviter les problèmes de régression. Il est donc important d'industrialiser et de fiabiliser les processus notamment entre les architectes et les développeurs,
analyse Pascal Jarry.
Au-delà de son rôle de gestion des sources, cet outil nous a permis d'imposer en douceur plus de rigueur et de méthodologie. Nous avons ainsi pu augmenter la productivité des équipes tout en améliorant la qualité du code. »
Rodée sur tous les projets J2EE, l'utilisation du gestionnaire de configurations s'est peu à peu étendue à la totalité des technologies employées dans l'entreprise, en dehors des grands systèmes.
« L'outil gère très finement les objets. Il autorise, par exemple, la pose de verrous sur les bibliothèques de fonctions Powerbuilder et leurs classes sous-jacentes »,
constate Pascal Jarry. Au point qu'en plus de servir de référentiel du code source, il facilite le partage des documents d'analyse et de conception aux formats Word, Excel, etc. Chaque nouveau projet est désormais ajouté dans le référentiel.
« Nous avons défini une structure arborescente pour les phases de recette et de production, dans laquelle on trouve des répertoires pour stocker le code Java, les scripts, les requêtes SQL pour la création des index, des déclencheurs d'événements, etc. L'ensemble est versionné afin de conserver l'historique de ce qui est déployé en production »,
explique Pascal Jarry.
Les projets offshore intégrés au dispositif
Les développeurs indiens devant accéder aux sources des développements, l'entreprise a mis en place une architecture web basée sur une zone démilitarisée pour plus de sécurité. Un réseau privé virtuel assure la confidentialité des échanges. Les prestataires offshore et locaux utilisent le client Starteam, plus ergonomique et productif qu'un simple navigateur. Si bien qu'en France comme en Inde, tous les développeurs travaillent avec les mêmes outils et bénéficient des mêmes fonctions : check in/check out en temps réel, accès aux versions compilées plusieurs fois par jour, etc. En revanche,
« pas question que nos prestataires accèdent à tous nos projets. Le module de gestion des droits de l'outil doit donc permettre de coller parfaitement à la politique d'accès définie »,
constate Pascal Jarry.
La fiabilité du serveur a constitué un critère de choix déterminant. Le référentiel devient, en effet, un point de passage obligé pour tous les développeurs. Le coût d'un arrêt de service peut donc se révéler très important. L'équipe chargée de l'exploitation du référentiel sauvegarde les données chaque nuit. Elle a également mis en oeuvre un mécanisme de redondance entre deux serveurs Starteam synchronisés. Mais
« nous n'avons pas de crainte de ce côté-là, car les serveurs Starteam sont très stables »,
rassure Hugo Heitz, qui se charge de leur administration quotidienne.
Aujourd'hui, la banque ne pourrait plus se passer de son gestionnaire de configurations. Au final, conclut Pascal Jarry,
« même s'il reste difficile à chiffrer, car nous sommes près du domaine de l'assurance qualité, le retour sur investissement est très important ».
« Ce cadre méthodologique s'impose de lui-même, en douceur, sans nécessiter une conduite du changement »
Pascal Jarry,
responsable de l'architecture technique de BNP Paribas Securities Services
BNP Paribas Securities Services
Activité :
conservation et règlement de titres pour les clients institutionnels.

Localisation :
siège à Paris.

Effectif :
3 200 personnes ; environ 450 développeurs, dont 180 en Java.

Technologie utilisée :
le logiciel de gestion de configurations Starteam 5.4, de Borland, rassemble une soixantaine de projets, soit 500 000 fichiers représentant 17 Go de données.