La chaine de déploiement
La chaîne de déploiement décrit dans le cadre du développement logiciel les logiques opérationnelles liées au développement par version d’une application
les 3 maillons indispensables de la chaîne

Votre chaine de déploiement est constituée à minima de:
- l’environnement de réalisation, le domaine de travail de vos développeurs & graphistes,...
- l’environnement de démo, le domaine de travail de vos chefs de projets
- l’environnement d’exploitation, le domaine de travail de vos intégrateurs de contenu et de votre client
la logique de passage d’un environnement à l’autre

Il est important de comprendre que la logique de passage d’un environnement au suivant est sous la responsabilité des personnes de l’environnement en cours:
- Décisionnel => Réalisation
- la décision de mettre en réalisation un Pool de fonctionnalités est le choix tactique ou stratégique des décideurs
- Réalisation => Démo
- la décision de mettre une version de developpement de l’application en démo dépend des Développeurs et est basé sur leur connaissance de la version stable du code de l’application
- Démo => Exploitation
- la décision de mettre une version de démonstration de l’application en exploitation dépend des Chef de projet est basé sur leur analyse de la maturité avérée (recettage) du Pool de fonctionnalités de l’application
La chaîne de production ne s’arrête pas avant que le Pool soit vide

Il est important de comprendre que la logique de passage d’un environnement à l’autre ne doit JAMAIS être court-circuité sous peine de désorganisation de l’ensemble (phénomène d’aller retour en contresens entre les maillons de la chaîne)
Ceci est particulièrement vrai suite à la phase de Démo et d’Exploitation où apparaît la phase d’affinage:
- qui boucle sur l’environnement de Réalisation autant de fois que nécessaire
- qui est constitué:
- de correctifs
- mais aussi d’adaptation ergonomique et fonctionnel du Pool de fonctionnalités initial.
La phase d’affinage:
- Exclut que l’environnement Décisionnel lance un nouveau Pool de fonctionnalités dans l’environnement de Réalisation sous peine de court-circuitage
- Permet au Décisionnel de repenser le prochain Pool de fonctionnalités au regard des résultats du précédent affinage
En résumé:
- Une bonne phase d’affinage détermine la qualité finale de la réalisation
- D’un point de vue pratique un système de ticketing et de tableaux de bord ainsi qu’un système de versionning du code et de déploiement bien organisés sont essentiels pour correctement piloter la phase d’affinage
Pour aller plus loin
Voici, vu par un architecte logiciel, le sypnosys de la suite de la reflexion sur comment mettre en oeuvre la chaine de déploiement d’une application au sein de votre entreprise:
- les poncifs classiques du développement d’une application:
- le système de Milestones pour le contrôle décisionnel & l’affinage
- le test continu en appui feu de la phase de réalisation et du respect des normes
- L’homogénéité des environnements pour diminuer le risque d’exploitation
- Faire éclore à maturité les fonctionnalités de l’application sur l’environnement démo
- Déployer automatiquement un environnement sinon rien
- Corriger en cas réel: I want my data back !
- l’application de ces poncifs sur les outils opérationnels de votre infrastructure:
- de système de ticketing
- de versionning du code
- de système de déploiement
- de tableaux de bord
