Ratez vos revue de code en 5 lecons devoxx fr 2016

Post on 13-Jan-2017

1.568 views 1 download

Transcript of Ratez vos revue de code en 5 lecons devoxx fr 2016

#DevoxxFR #CultureCode @mdomenjoud

Ratez vos revues de code

en 5 leçons

Michel Domenjoud @mdomenjoud

1

#DevoxxFR #CultureCode @mdomenjoud

Développeur, in love with code since 2003.

Tech Lead – Coach Craft @OctoTechnology

@mdomenjoud #CultureCode #BetterPlaces #BetterCode

MICHEL DOMENJOUD

#DevoxxFR #CultureCode @mdomenjoud

La première pratique d’équipe à mettre en place

3

… la revue de code !

#DevoxxFR #CultureCode @mdomenjoud

Software Craftsmanship : pratiques indispensables

4

Clean CodeTests

automatisésTest Driven

Development

Feedback

Revue de code

+ Intégration continue, Standards, Refactoring, Design, etc.

#DevoxxFR #CultureCode @mdomenjoud

Efficace depuis la nuit des temps

#DevoxxFR #CultureCode @mdomenjoud

• Objectif : détecter les défauts le plus tôt possible• Jusqu’à 65% des défauts détectés• ROI de 4 pour 1

• 1h de revue → 4h de debug économisées

• Des bénéfices conséquents• Partager des standards • Renforcer la propriété collective du code• Faciliter l’apprentissage• Améliorer la communication autour du code

The Impact of Code Review Coverage and Code Review Participation on Software Quality

NATIONAL SOFTWARE QUALITY EXPERIMENT - A LESSON IN MEASUREMENT

#DevoxxFR #CultureCode @mdomenjoud

Pair programming

Revue par un pair

Revue collective

7

#DevoxxFR #CultureCode @mdomenjoud

Fail #1 : On croule toujours sous les bugs !

http://thelinkedinman.com/wp-content/uploads/sites/2/2013/10/surprised-man.jpg

#DevoxxFR #CultureCode @mdomenjoud

Allez le plus vite possible !

Allez-y les mains dans les poches !

Ne demandez à personne comment s’y prendre !

- Prenez le temps, à un rythme soutenable- Demandez une revue dès que possible

- Préparez la revue via une lecture à tête reposée

- Utilisez des standards et checklists partagés- Formez vous ensemble

Pour passer à côté des défauts Et pour les détecter ?

#DevoxxFR #CultureCode @mdomenjoud

Fail #2 Mon équipe ne progresse pas

http://taxiblog.fr/wp-content/uploads/2013/01/crossing_the_road.jpg

#DevoxxFR #CultureCode @mdomenjoud

Ne vous parlez surtout pas !

Corrigez tout à la place de l’auteur !

N’écrivez pas vos standards

- Échangez de vive voix pendant les revues

- L’auteur corrige, en binôme si nécessaire

- Ecrivez vos standards- Faites les évoluer au fil des revues

Pour stagner au fil des revues Et pour progresser ?

#DevoxxFR #CultureCode @mdomenjoud

Fail #3 : On se tape dessus

http://i.huffpost.com/gen/1789693/images/o-DISPUTE-FAMILIALE-facebook.jpg

#DevoxxFR #CultureCode @mdomenjoud

Critiquez en priorité les personnes !

Lancez toujours une language / framework war !

- Critiquez le code, pas le développeur- Appuyez vous sur les principes EgolessProgramming

- Ce n’est pas le moment- Trouvez des compromis- Choisissez un standard et écrivez-le

Pour être sûr de s’engueuler Et pour une revue sereine ?

#DevoxxFR #CultureCode @mdomenjoud

Revue par un pair

Revue collective

Pair programming

Démarrer une User Story,Code complexe,

Code Legacy, Debug,Apprendre

Etablir des standardsCode critique

Nouvelles technos

Tout le tempsRégulièrement A la demande

Trois formats complémentaires

#DevoxxFR #CultureCode @mdomenjoud

• 1 - Prenez le temps

•Préparation à tête reposée

•Rythme soutenable (max 1h30 & 300 LoC à la fois)

• 2 - Progressez ensemble

•Échangez de vive voix pendant les revues

•L’auteur corrige, en binôme si nécessaire

• 3 - Utilisez des standards

•Utilisez des standards et checklists partagés

•Faites les évoluer au fil des revues

• 4 - Critiquez le code, pas le dév.

•Principes Egoless Programming

• 5 - Trouvez le(s) formats qui vous conviennent et adaptez les à vos besoins

5 leçons à retenir pour réussir vos revues

#DevoxxFR #CultureCode @mdomenjoud

• Un livre collectif sur la culture et les pratiques Software Craftsmanship

• Disponible gratuitement au téléchargement http://www.octo.com/fr/publications/20-culture-code

Culture CodeSoftware Craftsmanship : Better Places with Better Code

http://blog.octo.com/tag/software-craftsmanship