DevOps et livraison continue
DevOps et la livraison continue sont des pratiques qui unifient le développement logiciel et les opérations par l'automatisation, un retour d'information rapide et un pipeline de déploiement qui maintient le logiciel dans un état continuellement livrable.
Definition
DevOps est un ensemble de pratiques culturelles et techniques qui intègrent le développement logiciel et les opérations informatiques pour raccourcir le cycle de livraison, tandis que la livraison continue est la discipline d'ingénierie qui automatise la construction, les tests et le déploiement afin que le logiciel puisse être publié de manière fiable à tout moment.
Scope
Ce sujet couvre l'intégration continue et les pipelines de livraison/déploiement continu; l'automatisation de la construction, des tests et de la publication; l'infrastructure en tant que code; la gestion de configuration; la surveillance et l'observabilité; la collaboration culturelle entre le développement et les opérations; et des métriques telles que la fréquence de déploiement, le temps de cycle, le taux d'échec des changements et le temps moyen de récupération.
Core questions
- Comment un pipeline de déploiement automatise-t-il le chemin du commit à la production ?
- Quelles pratiques maintiennent le logiciel continuellement livrable tout en préservant la qualité ?
- En quoi l'intégration continue, la livraison continue et le déploiement continu diffèrent-ils ?
- Quelles métriques indiquent de manière fiable la performance de la livraison logicielle ?
Key theories
- Pipeline de déploiement
- Chaque changement transite par un pipeline automatisé de construction, de tests automatisés et de déploiement par étapes, offrant un retour d'information rapide et garantissant que toute version qui passe est candidate à la publication.
- Les Trois Voies de DevOps
- Les principes de Kim décrivent l'optimisation du flux du développement aux opérations, l'amplification des boucles de rétroaction et la promotion d'une culture d'expérimentation et d'apprentissage continus comme base des organisations technologiques hautement performantes.
- Métriques de performance de livraison DORA
- La recherche identifie quatre métriques clés — fréquence de déploiement, temps de cycle pour les changements, taux d'échec des changements et temps de restauration du service — qui distinguent statistiquement les organisations de livraison logicielle très performantes des moins performantes.
Clinical relevance
DevOps et la livraison continue raccourcissent les cycles de publication de mois à heures, réduisent les risques de déploiement grâce à l'automatisation et aux petites tailles de lots, et améliorent à la fois la stabilité et le débit; des études empiriques associent ces pratiques à une meilleure performance organisationnelle.
Evidence & guidelines
Les rapports annuels State of DevOps et le programme de recherche Accelerate fournissent des preuves empiriques que les pratiques de livraison continue sont corrélées à la performance de la livraison logicielle et organisationnelle.
History
Le terme DevOps est apparu vers 2009 des mouvements d'administration de systèmes agiles et d'infrastructure en tant que code, cherchant à abattre la cloison entre le développement et les opérations. Humble et Farley ont codifié la livraison continue en 2010, et des recherches empiriques ultérieures ont formalisé les métriques distinguant les équipes hautement performantes.
Debates
- Déploiement continu versus livraison continue
- La question de savoir si chaque changement validé doit être déployé automatiquement en production (déploiement continu) ou attendre une décision de publication manuelle (livraison continue) est débattue; la réponse dépend de la tolérance au risque, du contexte réglementaire et de la maturité de la vérification automatisée.
Key figures
- Jez Humble
- David Farley
- Gene Kim
- Nicole Forsgren
- Patrick Debois
Related topics
Seminal works
- humble2010
- kim2016
- forsgren2018
Frequently asked questions
- Quelle est la différence entre la livraison continue et le déploiement continu ?
- Dans la livraison continue, chaque changement qui passe le pipeline est livrable, mais la décision de déployer en production est une action humaine délibérée; dans le déploiement continu, cette dernière étape est également automatisée, de sorte que chaque changement validé est publié automatiquement.
- DevOps est-il un rôle ou une pratique ?
- DevOps est principalement un ensemble de pratiques culturelles et techniques couvrant le développement et les opérations, et non un titre de poste unique; le considérer comme un simple rôle d'opérations renommé ne tient pas compte de son accent sur la propriété partagée et l'automatisation.