Release management


Le release management, en français la gestion des mises en production, inclut la planification, l’exécution et la surveillance du processus de développement logiciel et de l’infrastructure informatique utilisée. Le release management permet d’avoir une vue d’ensemble du processus de développement de solutions logicielles, d’applications web et de mises à jour, tout en interagissant avec le change management et le configuration management. Cela allie une perspective commerciale (analyse des risques) aux problématiques techniques détaillées du cycle de développement (systems development life cycle ; abrégé : SDLC) d’une infrastructure informatique.

Informations générales[modifier]

L’objectif de la gestion des mises en production est de pouvoir mettre en oeuvre les exigences relatives aux changements de mises à niveau, de patchs, de roll-out ainsi qu'à l’infrastructure utilisée dans le cadre du processus de développement limité dans le temps avec un risque commercial calculable. Cela signifie que

  • la gamme des fonctions d’une application sera fixée,
  • le calendrier sera défini et qu’il sera vérifié qu’on s’y tient,
  • un contrôle qualité sera assuré,
  • l’ensemble des modifications sera documenté et ainsi reproductible.


La gestion des mises en production allie les problématiques de conception, d’organisation et de pratique, comme on les retrouve dans la gestion de projet classique et rassemble ces perspectives dans une seule même section. Pour cela, il est nécessaire de créer un aperçu général des modifications techniques des releases et des roll-outs au sein du processus de développement logiciel. Le release management permet ainsi que le processus de déploiement d'un logiciel soit coordonné par les responsable d'équipe.

Fonctionnalité[modifier]

Un concept clé ici est que la release peut subir des modifications autorisées, qu'elles soient singulières ou plurielles, du moment qu'elles assurent une technique correcte. Cela se caractérise notamment par le numéro de version, (par exemple 10.1). La gestion de versions est souvent menée au moyen de logiciels de contrôle de versions comme Git, Subversion ou Mercurial. Dans certains cas, certains changements sont réunis en ce qu'on appelle un package de release. La distinction est faite principalement entre les releases suivantes :

  • major release : contient de nouvelles fonctions et des modifications au niveau de l'architecture du système, rendant les résolutions de bugs inutiles et remplaçant aussi bien les releases minor et emergency.
  • minor release : contient des extensions et des modifications complétant éventuellement un emergency fix.
  • emergency fix : comprend la correction de conflits et de problèmes singuliers de haute priorité, mais la gamme des fonctions ne se vera pas pour autant modifiée ou élargie.


Le change management adresse des changements au release management. Ces demandes forment le contenu de la release à venir. Le management configuration accompagne la release en documentant les opérations et les processus au sein de l’infrastructure numérique. S’y ajoutent la gestion de versions et le traitement des conflits entre la release et l’infrastructure. Des aspects tels que la documentation et l’implémentation jouent déjà ici un rôle important pour simplifier la migration du release vers le système productif (staging environment) qui prépare ensuite le projet à la release.

Le "release manager" ou le gestionnaire de mise en production est la dernière instance de décision avant la validation d’une release. Il est responsable du processus de release et délègue les fonctions des parties prenantes ou certaines tâches des équipes. Il établit le planning, définit les échéances ainsi que les délais. Il garde également un œil sur le déroulement grâce à des check-listes et réagit au feedback pouvant provenir des utilisateurs ou du service client après le roll-out de la release.

Gestion des mises en production avec ITIL[modifier]

Le concept le plus souvent utilisé dans le domaine des solutions d’entreprise est la structure ITIL, disponible à présent sous la version 4 (ITIL 4). ITIL comprend des définitions et des règles qui décrivent le fonctionnement d’une infrastructure informatique orientée vers le service en ce qui concerne l’organisation et la structuration de processus. D’autres processus partiels peuvent être différenciés au sein du processus de release selon ITIL (depuis la V2) :

  • Planification du roll-out : la totalité du processus est préparée de manière conceptionnelle, conformément aux exigences et prérequis.
  • Conception des méthodes de distribution et de prévention : les composants de la release sont distribués parmi les différents acteurs. On prépare l’infrastructure afin de créer les conditions techniques nécessaires. On définit également une marche à suivre dans le cas où des problèmes devraient survenir, ce qui fait partie de la méthode de prévention.
  • Test de la release : les éléments de la release et les méthodes de distribution et de prévention sont soumis à un test se rapprochant au maximum de la réalité. À l'issu de ce test, il est possible de prendre une décision quant à la date du roll-out.
  • Déploiement/roll-out : tous les éléments de la release passent par les phases du projet, ils sont déployés et sont migrés dans le système de production.

Selon le modèle de procédure choisi (comme le développement de logiciel agile ou scrum), les concepts des phases de développement logiciel peuvent largement varier.

Importance pour la programmation[modifier]

La gestion des mises en production est souvent décrite comme étant la condition la plus importante pour un service informatique efficace et qualitatif. C’est pourquoi il s’agit d’une partie intégrante complète du service informatique, ceci surtout au niveau de l’entreprise. Les petites et moyennes entreprises critiquent souvent le manque d’alternative adaptées aux petites infrastructures. Cette critique se porte en première ligne sur la conception des processus selon la structure ITIL. Cette dernière, considérée comme une norme, serait trop difficile à être utilisée dans les plus petites entreprises. Beaucoup de moyennes entreprises réclament pour cette raison une version allégée allant à l'essentiel. Pour les petites entreprises, le cycle de vie d’une solution informatique et les processus inhérents peuvent être cependant soutenus par d’autres structures comme ISM (Integrated Service Management) et être personnalisées selon les besoins. Les entreprises moyennes ont, grâce à leur infrastructure légère, une plus grande flexibilité, ce qui leur permet d’optimiser la qualité de leurs services informatiques, notamment au niveau de l'efficacité. Cela comprend notamment l'articulation et l'interaction entre les changements, la configuration et la gestion des mises en production ; cet aspect étant décrit actuellement par les grandes entreprises comme essentiel et déterminant pour le succès d’un projet.

Pour aller plus loin[modifier]