Discipline: Gestion de la configuration et des changements
Cette discipline explique comment contrôler et synchroniser l'évolution de l'ensemble des produits qui composent un système logiciel.
Relations
Description principale

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 :



Plus d'informations