Un système de gestion de configuration (CM) est essentiel au contrôle des nombreux produits réalisés par les nombreuses
personnes qui travaillent sur un projet commun. Ce contrôle permet d'éviter une confusion coûteuse et garantit que les
produits créés n’entrent pas en conflit en raison des problèmes suivants :
Mise à jour simultanée
Lorsque deux ou plusieurs membres de l'équipe travaillent séparément sur le même produit, le dernier à effectuer
des changements détruit le travail de celui qui le précède. Le problème de base est que, si un système ne supporte
pas la mise à jour simultanée, ceci peut conduire à des changements en série et ralentit le processus de
développement. Toutefois, avec la mise à jour simultanée, le défi consiste à détecter les mises à jour effectuées
simultanément et à résoudre les problèmes d'intégration lorsque ces changements sont incorporés.
Notification limitée
Lorsqu'un problème a été résolu dans les produits partagés par plusieurs développeurs, et que l'un d'entre eux n'a
pas été averti du changement.
Versions multiples
La plupart des grands programmes sont développés en versions évolutives. Une version peut être en cours
d'utilisation par le client alors qu'une autre version se trouve en cours de test et que la troisième se trouve en
cours de développement. Si des problèmes sont détectés dans l'une de ces versions, les correctifs doivent être
propagés à toutes. Une confusion peut surgir, conduisant à des correctifs et des reprises coûteux, à moins que les
changements ne soient soigneusement contrôlés et supervisés.
Un système CM est utile pour la gestion de plusieurs variantes de systèmes logiciels évolutifs, le suivi des versions
utilisées dans les constructions logicielles, la réalisation de constructions de programmes individuels ou de versions
entières selon des spécifications de version définies par l'utilisateur et la mise en application de règles de
développement spécifiques à un site.
Certains des avantages offerts par un système CM sont :
-
la prise en charge de méthodes de développement
-
le maintien de l'intégrité du produit
-
l'assurance de l'intégralité et de la correction du produit configuré
-
la mise à disposition d'un environnement stable dans lequel le produit est développé
-
la restriction des changements aux produits reposant sur les règles du projet
-
la mise à disposition d'une trace de contrôle indiquant pourquoi et quand un produit a été changé, et par qui.
Par ailleurs, un système CM stocke des données 'comptables' détaillées sur le processus de développement lui-même : qui
a créé une version particulière (et quand et pourquoi), quelles versions des sources ont été utilisées dans une
construction particulière et autres informations pertinentes.
Le système CM d'une organisation est utilisé à travers tout le cycle de vie d'un produit, de la création au
déploiement. En tant que référentiel des actifs d'une organisation, le système CM contient les versions actuelles et
historiques des fichiers sources des exigences, et des artefacts de conception et d'implémentation qui définissent une
version particulière d'un système ou d'un composant du système.
La structure du répertoire du produit, représentée dans le système CM, comporte tous les artefacts nécessaires à
l'implémentation du produit. A ce titre, la discipline de gestion de la configuration et des changements (CCM) se
rapporte à toutes les autres disciplines du processus et sert de référentiel aux ensembles de produits qui en
résultent, à savoir :
|