De la livraison continue dans mon organisation?
Transcript of De la livraison continue dans mon organisation?
DE LA LIVRAISON CONTINUE DANS
MON ORGANISATION?
Sébastien Delest
LE FSUG remercie ses sponsors pour leur soutien
coactiv – qui sommes nous?
Coach agile
Product ownerScrumMaster
Facilitateur
De la livraison continue dans mon organisation?
C’est quoi?Le bon moment?Comment?
C’est quoi?
« Un ensemble de principes et de pratiques permettant de déployer à tout moment une nouvelle version sur un environnement de production »
C’est quoi??
Livraison LivraisonLivraison•Déploiement Livraison
Déploiement automatisés
Les managers choisissent du bon moment
Le déploiement avant…
Ce qui va manquer
De la livraison continue dans mon organisation?
• Pourquoi ce besoin aujourd’hui?• Quelle maturité d’équipe?• Quel chemin pour y aller?
Le chemin
« À chaque problème sa solution»
Commencer par lister les problèmes
Equipe dynamique confrontée aux limitations du cycle en V
DélaiAnomaliesFlexibilité
Demandes de développement
Développements isolés
Tests
3 semaines
Couverture limitée
Manuel
Construction du logiciel
1 heure
Manuel
Contenu de la version
« Qu’est ce qu’on a mis dedans déjà? »
Déclic
• Trop de gaspillage• Mêmes problèmes• Comment font les autres?• Solutions?
Notre première rétrospective!!
Méthodes itératives
Cycles courts
Itération 1
Itération 2
Itération 3Release
Backlog
Stratégie de version
1.2.3.4Version technique
1.2.3Version commerciale
Intégration continue
Check-in quotidien et sur la même branche de devAutomatisation:
Build (compilation, tests unitaires, analyse du code, etc.)Tests de non régressionTests de volume et de performanceDéploiement (pour test)
Dynamique d’amélioration continueSuccès … et après?
Déploiement en production
• Long et manuel• Gestion de configuration complexe
Problèmes récurrents
Livraison continue
De la livraison continue dans mon organisation?
• Faire du déploiement un non-évènement• Déployer plus souvent et sans risque• Inspiration…
ops-metametrics« the currency you pay for change »John Allspaw
Etat des lieux
« Combien de temps mon organisation met-elle pour déployer un changement qui n’implique qu’une seule ligne de code? »
« Est ce que le procédé est répétable et repose sur des bases fiables? »
Mary et Tom PoppendieckLean Software Development
Nouvelle donne
• La livraison continue est-elle compatible avec nos cycles de développement?
• Quelle définition pour « Done »: livré, déployé ?• Intégrer la livraison dans nos itérations?• Quelle stratégie de déploiement?
AxesAgile Anticiper
Gérer les risques
Réduire la complexité
Axe « Agile »
• Procédé compris et encouragé par l’organisation• Livrer rapidement de nouvelles fonctionnalités
(impact stratégie produit)• L’organisation doit devenir agile
« Anticiper »
• Roadmap produit• Stratégie d’itération
Stratégie de gestion de branches
Intégration continue
Branch by abstraction
Gérer les risques
Gestions de configuration• Tout doit être versionné• Données, configuration, environnement• Mises à jour incrémentales
1.2.3.4
Blue-green deployment
Architecture hybride
• Fonctionnalités fct profil utilisateurs• Migration progressive
Sécurisation• Traitements automatiques• Serveurs• Données
Equipe
Tests• Unitaires• Non régression• Performance• Charge, volume, etc.
Déploiement, rollback
Monitoring / Surveillance
Réduire la complexité
Mutualiser les clients sur une même plateforme• Plateforme critique• Plus facile à maintenir qu’un parc hétérogène
Chaine de déploiement optimisée• Chemin critique sur taches automatisés• Paralléliser les tâches manuelles
Pour conclure
• Continuer la transformation agile (organisation)• Consolider le procédé d’intégration continue• Rapprocher Développement – Exploitation (Devops)• Outils