32
De la livraison continue dans mon organisation? Sébastien Delest

De la livraison continue dans mon organisation?

  • Upload
    coactiv

  • View
    496

  • Download
    4

Embed Size (px)

Citation preview

Page 1: De la livraison continue dans mon organisation?

De la livraison continue dans mon organisation?

Sébastien Delest

Page 2: De la livraison continue dans mon organisation?

Qui sommes nous?

Sébastien DelestFormateur, PO, DevXP, Scrum, Kanban

Automatisation, tests

Page 3: De la livraison continue dans mon organisation?

De la livraison continue dans mon organisation?

• Quel besoin?• A quel niveau?• A quel coût?

Page 4: De la livraison continue dans mon organisation?

De la livraison continue dans mon organisation?

Au fait, c’est quoi?

« Un ensemble de principes et de pratiques permettant de déployer à tout moment une nouvelle version sur un environnement de production »

Page 5: De la livraison continue dans mon organisation?

Le commencement

Equipe dynamique confrontée aux limitations du cycle en V

DélaiAnomaliesFlexibilité

Page 6: De la livraison continue dans mon organisation?

Le commencement

• Demandes de développemento Mail o Longue spécification fonctionnelle

• Développements systématiquement isoléso Une branche par développeur / par

fonctionnalitéo Intégration longue et complexe

Page 7: De la livraison continue dans mon organisation?

Le commencement

• Testso Plus de 3 semaines de tests manuels

• Construction de la solutiono Plus d’une heure pour préparer le

livrable

• Rédaction de la release noteo Difficulté à lister les fonctionnalités

Page 8: De la livraison continue dans mon organisation?

Le déclic

• Trop de gaspillage et de temps perdu• Les mêmes problèmes reviennent souvent• Comment travaillent les autres équipes?• Existe-t-il une solution à ces problèmes?

Premier pas vers l’agile: la rétrospective!Intérêt pour les méthodes itératives

Page 9: De la livraison continue dans mon organisation?

La transition agile

• Découpage des développement en cycles courts

• Mise en place de backlogs• Simplification du dialogue entre le dev /

support / client / marketing• Définition d’une stratégie de version /

roadmap• Elimination des problèmes d’intégration

Intérêt pour l’intégration continue

Page 10: De la livraison continue dans mon organisation?

L’intégration continue

• Check-in quotidien et sur la même branche de dev

• Automatisation:o Build (compilation, tests unitaires, analyse du

code, etc.)o Tests de non régressiono Tests de volume et de performanceo Déploiement (pour test)

Dynamique d’amélioration continue

Succès … et après?

Page 11: De la livraison continue dans mon organisation?

Le déploiement en production

• Déploiement long et manuel• Gestion de configuration complexe

Problèmes de déploiement récurrents

Intérêt pour la livraison continue

Page 12: De la livraison continue dans mon organisation?

De la livraison continue dans mon organisation?

• Faire du déploiement un non-évènement

• Déployer plus souvent et sans risque• Inspiration…

Page 13: De la livraison continue dans mon organisation?

De la livraison continue dans mon organisation?

ops-metametrics« the currency you pay for change »John Allspaw

Page 14: De la livraison continue dans mon organisation?

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 Poppendieck

Lean Software Development

Page 15: De la livraison continue dans mon organisation?

Etat des lieux

Page 16: De la livraison continue dans mon organisation?

Quelle cible pour la livraison continue?

Page 17: De la livraison continue dans mon organisation?

Nouvelle donne

• La livraison continue est-elle compatible avec nos cycles de développement?

• Quelle définition pour « Done »?Done = Livré, déployé?

• Intégrer la livraison dans nos itérations?

• Quelle stratégie de déploiement?

Page 18: De la livraison continue dans mon organisation?

Axes

• Agile• Anticiper• Gérer les risques• Réduire la complexité

Page 19: De la livraison continue dans mon organisation?

Agile

• Procédé compris et encouragé par l’organisation

• Livrer rapidement de nouvelles fonctionnalités => impact stratégie produit

• L’organisation doit devenir agile

Page 20: De la livraison continue dans mon organisation?

Anticiper

Roadmap produitStratégie d’itération

Page 21: De la livraison continue dans mon organisation?

Anticiper

Intégration continue

Page 22: De la livraison continue dans mon organisation?

Anticiper

« Branch by abstraction »

Page 23: De la livraison continue dans mon organisation?

Gérer les risques

Gestions de configuration• Tout doit être versionné• Données, configuration, environnement• Mises à jour incrémentales

Page 24: De la livraison continue dans mon organisation?

Deux environnements de productionPrise de relai sur l’autre• Défauts• Mise à jour

Gérer les risques

Blue-green deploymentMartin Fowler

Page 25: De la livraison continue dans mon organisation?

Architecture hybride• Fonctionnalités fct profil utilisateurs• Migration progressive

Gérer les risques

Page 26: De la livraison continue dans mon organisation?

Gérer les risques

Sécurisation serveurs, données, traitements automatiques

Equipe

Page 27: De la livraison continue dans mon organisation?

Gérer les risques

Tests• Unitaires, non régression, performance,

charge, volume, fonctionnels, etc.• Déploiement, rollback

Page 28: De la livraison continue dans mon organisation?

Gérer les risques

Monitoring / Surveillance

Page 29: De la livraison continue dans mon organisation?

Gérer les risques

Page 30: De la livraison continue dans mon organisation?

Réduire la complexité

• Mutualiser les clients sur une même plateformeo Plateforme critiqueo Plus facile à maintenir qu’un parc

hétérogène

• Chaine de déploiement optimiséeo Chemin critique sur taches automatiséso Paralléliser les tâches manuelles

Page 31: De la livraison continue dans mon organisation?

Outils

Hudson

Page 32: De la livraison continue dans mon organisation?

Pour conclure

• Continuer la transformation agile (organisation)

• Consolider le procédé d’intégration continue

• Rapprocher Développement – Exploitation (Devops)

• Outils