Le blog de A.Boyarm
Dans le cadre de la gestion des applicatifs des clients, il m'est arrivé de gérer des situations très délicates (production bloquée avec pour conséquence impossibilité pour les utilisateurs de travailler) suite à la livraison en environnement de production d'un correctif, d'une évolution ou d'un nouveau projet. Ce problème est généralement dû à une non maîtrise des changements sur le périmètre des applicatifs.
Pour y remédier, il est nécessaire d'avoir une gestion rigoureuse des changements sur les environnements en mettant en place une GCL : Gestion de la Configuration Applicative.
Les gains que j'ai constaté chez les clients, lors de la mise en place d'une GCL sont principalement les suivants :
- Maîtrise des évolutions du système informatique. La GCL trace chacune des évolutions du système applicatif et a un instant T, on sait dire tels composants dans sa version X est dans tels environnements
- Visibilité pour la réutilisation des composants. Comme on sait exactement les versions des composants qui sont dans les différents environnements, on peut si besoin les réutiliser pour de nouveaux développements.
- Maîtrise de la qualité (performance, fiabilité, robustesse) et évolutions/corrections,
- Suivi de l’évolution des composants et favorisant des études d’impact
- Surveillance du respect des méthodologies projet mis en place par la DSI
- Réduction des charges des livraisons (car rationalisation par lot en fonction des développement en cours ou prévus)
Plus généralement la GCL couvre les activités suivantes :
- Gestion des environnements (hébergeant les applications (production, recette, développement)
- Gestion des livraisons
- Gestion des composants applicatifs
Selon l'activité de développement du service informatique, la GCL peut nécessiter une personne à plein temps. Sinon, l'activité est rattachée à un développeur qui la prend en charge un certain nombre d'heure par semaine.
Je pense que les entreprises ayant un service informatique réalisant des modifications de leur applicatif doivent mettre en place une GCL, afin de sécuriser les modifications de la production et de maîtriser l'évolution de ses applicatifs.
Ci-dessous la définition théorique de la GCL :
La gestion de configuration est définie par une norme (ISO 10007) adoptée par le Comité Européen de Normalisation et se définit comme suit:
Activités d'ordre technique et organisationnel comprenant
• l'identification de la configuration[1], c'est-à-dire :
• à identifier les constituants du logiciel
• à déterminer quels constituants seront suivis
• à allouer un identifiant aux constituants et à leurs documents
• à documenter les caractéristiques physiques et fonctionnelles des constituants du logiciel
• la maîtrise de la configuration, ie gérer les évolutions des articles de configuration par :
• des demandes de changement
• des comités de contrôle des changements (CCB…)
• la coordination des changements
• l'enregistrement de l'état de la configuration, ie enregistrer sous une forme définie :
• les documents établis pour la configuration,
• l'état des demandes d'évolution,
• la mise en œuvre des évolutions approuvées
• l'audit de la configuration, afin de s’assurer de la conformité d'un article de configuration avec ses documents de configuration
• l'audit de la configuration, afin de s’assurer de la conformité d'un article de configuration avec ses documents de configuration
[1] La configuration d’un logiciel correspond à l’ensemble des versions, des composants du logiciel, valides à un moment donné