Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Devoxx 2016 - L'odyssée du Continuous Delivery

860 views

Published on

Retour d'expérience sur un an de transformation Continuous Delivery à la SGCIB.

Published in: Software
  • Be the first to comment

Devoxx 2016 - L'odyssée du Continuous Delivery

  1. 1. #DevoxxFR#DevoxxFR L’odyssée du Continuous Delivery Nicolas Bourgeois David Caramelo @David_Caramelo Diego Lemos @dlresende 1
  2. 2. #DevoxxFR#DevoxxFR Hello 2 Nicolas Bourgeois IT Manager domaine finance DSI de GBIS David Caramelo Tech Lead / Scrum Master Diego Lemos Tech coach
  3. 3. #DevoxxFR Au départ... 3 Techno : Java, JEE, JSF 1.2, Rich Faces, Oracle Orga : 2 équipes mixtes Paris / Bangalore (Inde) orientées composant Mise en production : 1 fois par trimestre Et quelques applications datant d’il y a 10 ans...
  4. 4. #DevoxxFR 4 Pourquoi maintenant ? Coté Métier : ● Un SI “Financement” vieillissant (2006 - 2008) ● Un business qui repart mais l’incertitude demeure ● Beaucoup de processus réglementaires non informatisés
  5. 5. #DevoxxFR 5 Mais aussi... Coté DSI : Évolution du niveau d’exigence des utilisateurs (iPad, iPhone, etc.) Département IT en pleine transformation agile / continuous delivery Volonté de s’inspirer des géants du web & Fintech
  6. 6. #DevoxxFR 6 Nos challenges
  7. 7. #DevoxxFR Mais attention ! 7 ● Maintien du service ● Rupture technique ● Éviter l’effet big bang ● Se “fondre dans la masse” ● Répondre aux besoins des utilisateurs
  8. 8. #DevoxxFR 8
  9. 9. #DevoxxFR#DevoxxFR 9 Vers le Continuous Delivery et au-delà...
  10. 10. #DevoxxFR Les fondations 1
  11. 11. #DevoxxFR Le fonctionnement 1 Demandes PO Sprint Demo Product Backlog Sprint Backlog Poker Planning Retro
  12. 12. #DevoxxFR Le whiteboard 1
  13. 13. #DevoxxFR Avant : component team Application A BAs, TLs / Dev, PMs… BAs, TLs / Dev, PMs… Application B 13
  14. 14. #DevoxxFR Maintenant : feature team ! 1
  15. 15. #DevoxxFR#DevoxxFR Mais comment crée- t-on des feature teams ? 1
  16. 16. #DevoxxFR L’équipe lab 1 TL PO UX QA DEV DEVDEVDEV DEV DEV DEVQAUXPO
  17. 17. #DevoxxFR Découpage en deux équipes 1 TL PO UX QA DEV DEVDEVDEV DEV DEV DEVQAUXPOTL DEV
  18. 18. #DevoxxFR Un produit unique 1 TL PO UX QA DEV DEVDEVDEV TL PO UX QA DEV DEVDEVDEV
  19. 19. #DevoxxFR Réduire la boucle de feedback 19
  20. 20. #DevoxxFR could you help me with my application? 2 mother of god!
  21. 21. #DevoxxFR 2
  22. 22. #DevoxxFR 2
  23. 23. #DevoxxFR 2
  24. 24. #DevoxxFR#DevoxxFR 2 La complexité accidentelle
  25. 25. #DevoxxFR#DevoxxFR expectation reality 2 Il fallait revoir nos attentes
  26. 26. #DevoxxFR#DevoxxFR Stratégie de tests unitaire intégration e2e 26 e2e intégration unit e2e intégration unit
  27. 27. #DevoxxFR On paie la dette technique 2 80 20 fonctionnel technique
  28. 28. #DevoxxFR 2
  29. 29. #DevoxxFR Réduire la boucle de feedback 29
  30. 30. #DevoxxFR 42 branches 3
  31. 31. #DevoxxFR 62 branches 3
  32. 32. #DevoxxFR 62 branches 3
  33. 33. #DevoxxFR 26 branches 33
  34. 34. #DevoxxFR >192 branches ! 3
  35. 35. #DevoxxFR Branching hell 3
  36. 36. #DevoxxFR Trunk Based Development 3 DEV DEV DEV code freeze livraison DEV release branch trunk
  37. 37. #DevoxxFR 3
  38. 38. #DevoxxFR Réduire la boucle de feedback 38
  39. 39. #DevoxxFR Réduire la boucle de feedback 39
  40. 40. #DevoxxFR#DevoxxFR Qui livre quand ? 4
  41. 41. #DevoxxFR#DevoxxFR Release Train 4
  42. 42. #DevoxxFR it n it n+2 it n+4it n+3it n+1 3 semaines non reg uat certif 4 time to deliver : 12 semaines ! development development Les applications legacy
  43. 43. #DevoxxFR development validation development validation development validation development validation time to deliver: 3 semaines Nouvelle plateforme 4 it n it n+2 it n+4it n+3it n+1 3 semaines
  44. 44. #DevoxxFR it n it n+2 it n+4it n+3it n+1 3 semaines legacy nouvelle plateforme development validation development validation development validation development validation development non reg uat certifdevelopment Nouvelle plateforme + legacy 4
  45. 45. #DevoxxFR 4
  46. 46. #DevoxxFR Calendrier de livraisons 46
  47. 47. #DevoxxFR 47
  48. 48. #DevoxxFR Fonctionnalités à livrer 4
  49. 49. #DevoxxFR 4 Applications à livrer
  50. 50. #DevoxxFR 50 Tâches pour chaque livraison
  51. 51. #DevoxxFR 5
  52. 52. #DevoxxFR 52 Code freeze ?! MAIS NOUS N’AVONS PAS ENCORE FINI !!!
  53. 53. #DevoxxFR Réduire la boucle de feedback 53
  54. 54. #DevoxxFR Pas le droit à l’erreur 54
  55. 55. #DevoxxFR Feature Toggle 5
  56. 56. #DevoxxFR#DevoxxFR A B C A B C B 56 team 1 team 2 B C C
  57. 57. #DevoxxFR /* */ Toggle 1.0 5
  58. 58. #DevoxxFR Toggle 2.0 5
  59. 59. #DevoxxFR Toggle 3.0 (en cours) 5
  60. 60. #DevoxxFR Réduire la boucle de feedback 60
  61. 61. #DevoxxFR 61
  62. 62. #DevoxxFR Environment pipeline 6 intégration homologation UAT pré-production production 1 push = 1 deploy nombreux déploiements/jour teste le déploiement feedback très rapide 1 deploy/jour plus stable dernières fonctionnalités disponibles 1 deploy/sprint branche de release validation de la part de l’utilisateur validation de l’équipe Ops validation de l’équipe Support c’est là ça se pa$$e ze place to be, quoi
  63. 63. #DevoxxFR#DevoxxFR Après tout cela, la question de la pérennité se pose 6
  64. 64. #DevoxxFR 6
  65. 65. #DevoxxFR#DevoxxFR Recrutement 2.0 6 4 principes : ● les développeurs recrutent leurs pairs ● état d’esprit plus important que telle ou telle techno ● créer une nouvelle culture basée sur un cercle vertueux ● tu sais coder, prouve-le !
  66. 66. #DevoxxFR 66
  67. 67. #DevoxxFR#DevoxxFR Et les résultats ? 6
  68. 68. #DevoxxFR 6 Qu’est-ce que l’on a gagné ? ● Nouvelle culture ● Prise de conscience de la valeur métier des demandes ● Amélioration de la qualité globale ● Amélioration du TTM
  69. 69. #DevoxxFR 69 Où sommes-nous maintenant ? construire le bon produit construire correctement le produit construire rapidement le produit endroit idéal aujourd’hui nous sommes ici
  70. 70. #DevoxxFR#DevoxxFR C’est fini ? 7
  71. 71. #DevoxxFR 7 Nouveaux défis ● Rendre le TTM pérenne dans le temps ● Mieux mesurer la valeur métier ● Mieux anticiper les problèmes ● Explorer le comportement utilisateur ● Reproduire le même modèle à l’étranger ● Renforcer la culture
  72. 72. #DevoxxFR 7 Comment ? ● Infra as code, déploiement automatisé ● Blue/Green deployment ● Culture DevOps ● Monitoring ● Plus d’automatisation des tests (tests de chaîne/distribués)
  73. 73. #DevoxxFR#DevoxxFR 7 Devops
  74. 74. #DevoxxFR#DevoxxFR Merci / Thank you 7
  75. 75. #DevoxxFR#DevoxxFR Questions ? 7

×