SlideShare une entreprise Scribd logo
1  sur  21
La mise en production
Comment être plus efficace ?
Qui suis-je ?
● Développeur
● Back-end, cloud
Une mise production
‘classique’
Du temps, de la sueur et des
larmes...
Comment en est-on arrivé là ?
1 Des procédures
adéquates
Des opérations manuelles dans une
documentation :
● Risques d’erreurs
● Documentation obsolète
● Long et fastidieux
2 On va dans le même sens
● Pas de vision partagée
● Des environnements différents
suivant les équipes
● Beaucoup d'énergie perdue
3 Tout va très vite
1. Releases peu fréquentes
2. Beaucoup de contenu
3. Gros risque de casse
Bref… On est serein
● On freine devant les évolutions
● Image de l’entreprise dégradée
● Grosse sollicitation des
équipes
Comment peut-on faire autrement ?
Un changement de
culture
● Un partage des responsabilités
● Des équipes autonomes
● Moins de conflits, plus de
coopération
Des tests automatisés
et une usine de CI
● 80 % des problèmes potentiels
détectés automatiquement
● Des tests manuels plus orienté
vers l’utilisateur, l’ergonomie
● Une protection contre les
régressions
Refactoring, revue de
code, pair programming
et TDD
● Code plus lisible, homogène
● Meilleur compréhension de
l’application
● Des bugs plus facile à identifier
puis corriger
De l’automatisation.
Partout...
● Des livraisons en continue
● Des déploiements en continu
● La configuration des serveurs,
des sous-réseaux, c’est aussi
du code
Aller vers un déploiement
de type ‘blue green’
● Pas de temps d’indisponibilité
● Un retour en arrière est
toujours possible
● La bascule finale est faite
après toutes les vérifications
En utilisant si possible
des conteneurs et
orchestrateurs
● Isolation des dépendances
● Surveillance, montée en
charge et redondance plus
facile
● Des services plus robustes
C’est la culture DevOps
Et maintenant,
une démonstration ?
Démonstration d’une mise en production
sans indisponibilité
entièrement automatisé
avec un mécanisme de retour
en arrière
https://github.com/sogilis/matinal
e-tech
Des questions ?

Contenu connexe

Similaire à La mise en production, comment être plus efficace

Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...nostradamnit
 
Trucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinementTrucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinementLaurence Vagner
 
La relecture de code : avant tout des pratiques
La relecture de code : avant tout des pratiquesLa relecture de code : avant tout des pratiques
La relecture de code : avant tout des pratiquesEric SIBER
 
Software Craftsmanship
Software CraftsmanshipSoftware Craftsmanship
Software Craftsmanshipylemoigne
 
Conférence bioteams curitiba (Version française)
Conférence bioteams curitiba (Version française)Conférence bioteams curitiba (Version française)
Conférence bioteams curitiba (Version française)Claude Emond
 
2009 scrum&xp
2009 scrum&xp2009 scrum&xp
2009 scrum&xpdecsdeco
 
2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers
2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers
2021 l’Odyssée des méthodologies: from The Kardashians to The AvengersRelax In The Air
 
Le développement logiciel expliqué à votre patron en 24 slides
Le développement logiciel expliqué à votre patron en 24 slidesLe développement logiciel expliqué à votre patron en 24 slides
Le développement logiciel expliqué à votre patron en 24 slidesYassine CHAOUCHE
 
Maitriser l'incertitude des projets ERP - presentation annecy par PCSOL
Maitriser l'incertitude des projets ERP - presentation annecy par PCSOLMaitriser l'incertitude des projets ERP - presentation annecy par PCSOL
Maitriser l'incertitude des projets ERP - presentation annecy par PCSOLPCSol SA
 
La crise Agile chez les Developpeurs (AGrenoble2019) (1).pdf
La crise Agile chez les Developpeurs (AGrenoble2019) (1).pdfLa crise Agile chez les Developpeurs (AGrenoble2019) (1).pdf
La crise Agile chez les Developpeurs (AGrenoble2019) (1).pdfGuillaume Saint Etienne
 
Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)
Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)
Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)Lucien Boix
 
Talk - Devenir un Lead Dev : Echecs et Succès - FR - 20 mins
Talk - Devenir un Lead Dev : Echecs et Succès - FR - 20 minsTalk - Devenir un Lead Dev : Echecs et Succès - FR - 20 mins
Talk - Devenir un Lead Dev : Echecs et Succès - FR - 20 minsRomain Monceau
 
Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?Pyxis Technologies
 
12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agile12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agileChristophe Addinquy
 

Similaire à La mise en production, comment être plus efficace (20)

Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...Travailler avec l'existant : ou comment s'en débarrasser -  Agile Tour Paris ...
Travailler avec l'existant : ou comment s'en débarrasser - Agile Tour Paris ...
 
Rémy génin - keynote
Rémy génin - keynoteRémy génin - keynote
Rémy génin - keynote
 
Trucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinementTrucs et astuces pour débuter sereinement
Trucs et astuces pour débuter sereinement
 
La relecture de code : avant tout des pratiques
La relecture de code : avant tout des pratiquesLa relecture de code : avant tout des pratiques
La relecture de code : avant tout des pratiques
 
Petite histoire du Lean
Petite histoire du LeanPetite histoire du Lean
Petite histoire du Lean
 
Software Craftsmanship
Software CraftsmanshipSoftware Craftsmanship
Software Craftsmanship
 
Conférence bioteams curitiba (Version française)
Conférence bioteams curitiba (Version française)Conférence bioteams curitiba (Version française)
Conférence bioteams curitiba (Version française)
 
2009 scrum&xp
2009 scrum&xp2009 scrum&xp
2009 scrum&xp
 
2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers
2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers
2021 l’Odyssée des méthodologies: from The Kardashians to The Avengers
 
Startup driven development
Startup driven developmentStartup driven development
Startup driven development
 
Le développement logiciel expliqué à votre patron en 24 slides
Le développement logiciel expliqué à votre patron en 24 slidesLe développement logiciel expliqué à votre patron en 24 slides
Le développement logiciel expliqué à votre patron en 24 slides
 
Maitriser l'incertitude des projets ERP - presentation annecy par PCSOL
Maitriser l'incertitude des projets ERP - presentation annecy par PCSOLMaitriser l'incertitude des projets ERP - presentation annecy par PCSOL
Maitriser l'incertitude des projets ERP - presentation annecy par PCSOL
 
Initiation Scrum
Initiation ScrumInitiation Scrum
Initiation Scrum
 
La crise Agile chez les Developpeurs (AGrenoble2019) (1).pdf
La crise Agile chez les Developpeurs (AGrenoble2019) (1).pdfLa crise Agile chez les Developpeurs (AGrenoble2019) (1).pdf
La crise Agile chez les Developpeurs (AGrenoble2019) (1).pdf
 
presentation MediaMed
presentation MediaMedpresentation MediaMed
presentation MediaMed
 
Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)
Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)
Comment s'adapter à la croissance d'une startup ? (ConFoo 2017 Montréal)
 
Talk - Devenir un Lead Dev : Echecs et Succès - FR - 20 mins
Talk - Devenir un Lead Dev : Echecs et Succès - FR - 20 minsTalk - Devenir un Lead Dev : Echecs et Succès - FR - 20 mins
Talk - Devenir un Lead Dev : Echecs et Succès - FR - 20 mins
 
Agile Tour Lille 2008
Agile Tour Lille 2008Agile Tour Lille 2008
Agile Tour Lille 2008
 
Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?Comment être agile dans un contexte non lié aux TI ?
Comment être agile dans un contexte non lié aux TI ?
 
12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agile12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agile
 

La mise en production, comment être plus efficace

  • 1. La mise en production Comment être plus efficace ?
  • 2. Qui suis-je ? ● Développeur ● Back-end, cloud
  • 3. Une mise production ‘classique’ Du temps, de la sueur et des larmes...
  • 4. Comment en est-on arrivé là ?
  • 5. 1 Des procédures adéquates Des opérations manuelles dans une documentation : ● Risques d’erreurs ● Documentation obsolète ● Long et fastidieux
  • 6. 2 On va dans le même sens ● Pas de vision partagée ● Des environnements différents suivant les équipes ● Beaucoup d'énergie perdue
  • 7. 3 Tout va très vite 1. Releases peu fréquentes 2. Beaucoup de contenu 3. Gros risque de casse
  • 8. Bref… On est serein ● On freine devant les évolutions ● Image de l’entreprise dégradée ● Grosse sollicitation des équipes
  • 9. Comment peut-on faire autrement ?
  • 10. Un changement de culture ● Un partage des responsabilités ● Des équipes autonomes ● Moins de conflits, plus de coopération
  • 11. Des tests automatisés et une usine de CI ● 80 % des problèmes potentiels détectés automatiquement ● Des tests manuels plus orienté vers l’utilisateur, l’ergonomie ● Une protection contre les régressions
  • 12. Refactoring, revue de code, pair programming et TDD ● Code plus lisible, homogène ● Meilleur compréhension de l’application ● Des bugs plus facile à identifier puis corriger
  • 13. De l’automatisation. Partout... ● Des livraisons en continue ● Des déploiements en continu ● La configuration des serveurs, des sous-réseaux, c’est aussi du code
  • 14. Aller vers un déploiement de type ‘blue green’ ● Pas de temps d’indisponibilité ● Un retour en arrière est toujours possible ● La bascule finale est faite après toutes les vérifications
  • 15. En utilisant si possible des conteneurs et orchestrateurs ● Isolation des dépendances ● Surveillance, montée en charge et redondance plus facile ● Des services plus robustes
  • 18. Démonstration d’une mise en production sans indisponibilité entièrement automatisé avec un mécanisme de retour en arrière https://github.com/sogilis/matinal e-tech
  • 19.
  • 20.

Notes de l'éditeur

  1. Pertes de temps, impact possible sur le temps d’indisponibilité Perte de confiance dans le processus de mise à jour Génère beaucoup de stress Impact sur la qualité de service
  2. => evolutivité fonctionelle et technique faible et lente (peur du changement) => taux d’indisponibilité, bugs, peu de nouvelle fonctionnalité, utilisateur peu satisfait => fatigue, stress, moins de temps pour les features
  3. la plupart des plateformes / langages possèdent des outils de test unitaire abouti ci : solutions saas : travis, circle-ci, teamCity,
  4. Objectif => faire en sorte
  5. deploiements : Meilleur Réactivité aux changements clients Les mises en productions deviennent banales Moins de stress, moins d’erreurs Infrastructure as Code pour : Des environnements reproductibles La doc, c’est le code outils : Vagrant, terraform, ansible, puppet, chef, salt, etc...
  6. Possibilité d’avoir d’ultimes vérifications directement sur l’environnement de production sans impact utilisateur Outils : docker, rkt, kubernetes, amazon ECS, docker swarm...
  7. Définition des conteneurs et des orchestrateur d’autres avantages comme la scalabilité plus facile, optimisation des ressources et environnement de dev Isolation des dépendances. automatisation des déploiements + faciles indépendance des services les uns des autre Outils : docker, rkt, kubernetes, amazon ECS, docker swarm...
  8. le presenter comme un pre-requis. Mouvement lié à l'agilité. Org (limitation des silots dev / ops), infra as code, automatisation.