Lean code
-
Upload
guillaume-rose -
Category
Technology
-
view
1.260 -
download
0
description
Transcript of Lean code
![Page 1: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/1.jpg)
Lean codeUne idée de Chris Parsons
![Page 2: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/2.jpg)
Lean
L'école de gestion de la production dite lean recherche la performance (en matière de productivité, de qualité, de délais, et enfin de coûts) par l'amélioration continue et l'élimination des gaspillages, au nombre de sept :■ production excessive,■ attentes,■ transport et manutention inutiles,■ tâches inutiles,■ stocks,■ mouvements inutiles■ production défectueuse.
L'école de gestion lean trouve ses sources au Japon dans le Toyota Production System (TPS). Adaptable à tous les secteurs économiques, le lean est actuellement principalement implanté dans l'industrie (et surtout l'industrie automobile).
![Page 3: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/3.jpg)
Application
Le modèle, basé sur le développement itératif et les méthodes agiles met en avant 7 principes :1. Eliminer les gaspillages : comme pour le lean, le gaspillage est défini comme ce qui n'apporte pas de valeur au produit. La valeur étant définie du point de vue de l'utilisateur.2. Améliorer l'apprentissage.3. Retarder l'engagement.4. Livrer aussi vite que possible.5. Donner le pouvoir à l'équipe.6. Intégrer la qualité dès la conception.7. Considérer le produit dans sa globalité.
![Page 4: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/4.jpg)
Essayons !
![Page 5: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/5.jpg)
![Page 6: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/6.jpg)
Itération 0
10 minutes pour trouver un binôme et mettre en place l’environnement de développement
Nous développons un outil en ligne de commande : Lire l’entrée standard et écrire en sortie.
Utilisez le langage de votre choix
Une base est disponible en C et Ruby à l’adresse suivante :https://github.com/guillaumerose/checkout-base
![Page 7: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/7.jpg)
Itération 1
10 minutes pour faire une caisse enregistreuse simple.
Les Pommes coûtent 1€, les Bananes 1.50€ et les Cerises 0.75€.
Acceptez un article par ligne. Afficher le total du panier (en centimes) à chaque fois.
Test d’acceptance :➡ Pommes➡ 100➡ Cerises➡ 175➡ Cerises➡ 250
![Page 8: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/8.jpg)
Livraison 1
Vérification➡ Cerises➡ 75 ➡ Pommes➡ 175➡ Cerises➡ 250➡ Bananes➡ 400➡ Pommes➡ 500
![Page 9: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/9.jpg)
Itération 2
10 minutes pour ajouter les réductions.
Même principe pour la gestion de l’entrée et de la sortie.
2 lots de cerises achetés, 20 centimes de réduction.
Test d’acceptance :➡ Pommes➡ 100➡ Cerises➡ 175➡ Cerises➡ 250 230
![Page 10: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/10.jpg)
Livraison 2
Vérification➡ Cerises➡ 75 ➡ Pommes➡ 175➡ Cerises➡ 230➡ Bananes➡ 380➡ Cerises➡ 455➡ Cerises➡ 510➡ Pommes➡ 610
![Page 11: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/11.jpg)
Itération 3
10 minutes pour ajouter le support du format CSV en entrée.
Les articles peuvent être séparés par des virgules.
Test d’acceptance :➡ Pommes, Cerises, Bananes➡ 325➡ Pommes➡ 425
![Page 12: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/12.jpg)
Itération 3A
Changement de programme ! La deadline ne change pas.Le support du format CSV est repoussé à plus tard.Un article par ligne suffit pour cette itération.
La réduction pour les cerises passe à 30 centimes.Un lot de bananes acheté, le second offert.
Test d’acceptance :➡ Cerises➡ 75➡ Cerises➡ 120➡ Bananes➡ 270➡ Bananes➡ 270
URGENT
![Page 13: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/13.jpg)
Livraison 3
Vérification➡ Cerises➡ 75 ➡ Pommes➡ 175➡ Cerises➡ 220➡ Bananes➡ 370➡ Pommes➡ 470➡ Bananes➡ 470➡ Cerises➡ 545
![Page 14: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/14.jpg)
Itération 4
10 minutes pour ajouter le support de plusieurs langues.
La réduction pour les cerises repasse à 20 centimes.Les mots « Apples » et « Mele » correspondent aux Pommes.
Test d’acceptance :➡ Cerises➡ 75➡ Apples➡ 175➡ Cerises➡ 230➡ Bananes➡ 380➡ Bananes➡ 380➡ Mele➡ 480
![Page 15: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/15.jpg)
Livraison 4
Vérification➡ Cerises➡ 75 ➡ Apples➡ 175➡ Cerises➡ 230➡ Bananes➡ 380➡ Pommes➡ 480➡ Mele➡ 580
![Page 16: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/16.jpg)
Itération 5
10 minutes pour permettre différents types de réduction selon la langue pour chaque article.
Le support du CSV sera demandé à la prochaine itération.3 lots de « Apple » valent 2€2 lots de « Mele » valent 1.50€
Test d’acceptance :➡ Mele➡ 100➡ Apples➡ 200➡ Apples➡ 300➡ Pommes➡ 400
➡ Apples➡ 400➡ Mele➡ 450➡ Cerises➡ 525➡ Cerises➡ 580
![Page 17: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/17.jpg)
Itération 5A
Un déploiement a mal tourné sur des nouvelles caisses.On tente de résoudre le problème.
10 minutes pour permettre différents types de réduction selon la langue pour chaque article.
3 lots de « Apple » valent 2€2 lots de « Mele » valent 1€
Test d’acceptance :➡ Mele, Apples, Apples, Pommes, Apples, Mele, Cerises,
Cerises, Bananes➡ 680
URGENT
![Page 18: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/18.jpg)
Livraison 5
Vérification➡ Cerises, Apples➡ 175➡ Cerises➡ 230➡ Apples, Mele, Bananes➡ 580➡ Apples, Pommes➡ 680➡ Mele➡ 680➡ Pommes➡ 780
![Page 19: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/19.jpg)
Itération 6
10 minutes pour fixer un bug et créer la super-réduction.
Bug : supporter CSV et les articles un par un2 lots de « Mele » valent 1.50€4 Pommes achetés, 1€ de réduction sur la facture globale5 fruits achetés, 2€ de réduction
Tests d’acceptance :➡ Mele, Apples, Apples, Mele➡ 250
➡ Bananes➡ 200
➡ Mele, Apples, Apples, Pommes, Mele➡ 150
![Page 20: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/20.jpg)
Livraison 6
Vérification➡ Mele, Apples, Apples, Pommes, Mele➡ 150➡ Bananes➡ 350
![Page 21: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/21.jpg)
Conclusions
![Page 22: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/22.jpg)
Avez-vous utilisé un système de contrôle de versions ?Auriez-vous voulu retourner en arrière ? CTRL+Z ?
Avez-vous utilisé des tests unitaires ? A partir de quelle itération ?
Avez-vous écrit et maintenu tous les tests d’acceptance ?Vous êtes vous fiés uniquement aux spécifications ?
Qu’avez-vous fait pour le support du CSV lorsqu’il n’était plus nécessaire ?
![Page 23: Lean code](https://reader033.fdocuments.fr/reader033/viewer/2022060123/5596d3881a28ab221e8b4879/html5/thumbnails/23.jpg)
Présentation adaptéehttp://chrismdp.github.com/2011/05/lean-code-slides-and-feedback/
Plus sur le concept « Lean »
En parler ?Paris Software Craftsmanship
@swcraftparis