La gestion de configuration logicielle : un maillon important de l’Application Life Management

La gestion du cycle de vie des applications suppose que les applications soient mises à la disposition des utilisateurs de façon organisée et efficace. La Gestion de la Configuration Logicielle a un rôle à jouer dans ce domaine.

La gestion du cycle de vie des applications, qui implique la mise en œuvre d'un ensemble d'outils et de processus, suppose que les applications soient mises à la disposition des utilisateurs de façon organisée et efficace. La Gestion de la Configuration Logicielle (SCM) fait partie intégrante de tout bon environnement d'ALM car une Gestion de Configuration inappropriée est un facteur de risque important pour la gestion du cycle de vie des applications.

En effet, la Gestion de Configuration est un "réservoir" de fichiers, textes comme binaires, de leur histoire à chacun comme de leurs inter-relations au sein des applications et l'ensemble des modifications survenues lors du cycle de développement y est stocké.

Cette importance de la Gestion de Configuration au sein de l'infrastructure d'ALM est connue depuis longtemps, mais avec le développement des technologies Agiles la place de la GCL au sein de l'ALM est devenue essentielle.

De nombreuses entreprises sont aujourd'hui amenées à changer leur logiciel de Gestion de Configuration pour permettre à leur infrastructure d'ALM d'être à la fois compatible avec les anciennes méthodes de développement, et avec les nouvelles méthodes agiles, qui doivent bien souvent cohabiter.

Pour permettre cette double compatibilité, et maintenir ainsi tous les développements et les métadonnées en un seul lieu, le modèle idéal d'ALM doit englober l'ensemble des bonnes pratiques d'un large ensemble de processus de développement.

A ce titre  la gestion des versions et la gestion des modifications apportées à chaque fichier sont essentielles. De plus, parce que différentes méthodes supposent l'utilisation de différents outils, le logiciel de Gestion de configuration doit être compatible avec de multiples environnements de développement, différents langages de programmation, différents OS... Il doit aussi s'intégrer aisément avec les différents outils qui concourent à l'Application Life Management (outils de build, de suivi de bugs...).

Enfin, pour de grandes sociétés qui mènent de nombreux projets, avec des centaines de milliers de développeurs répartis dans le monde entier, la Gestion de Configuration doit être capable de tenir la charge de très nombreux développements menés simultanément dans le monde.