# Gestion de projet Agile Notes: Utiliser minecraft http://cubesuisse.weebly.com/papercraft-minecraft.html ou du lowpoly https://fr.animapapir.com/modelinfo?mod_id=9 --- ## Objectif de la capsule Savoir gérer un projet avec une méthode agile. --- ## Réalisation - Simulation de méthode Kanban - Simulation de méthode Scrum --- ## Programme - La **gestion de projet** : vue d'ensemble - Objectifs - État des lieux sur les méthodes existantes - Les écueils de la gestion de projet - Zoom sur l'agilité - Méthode **Kanban** - Méthode **Scrum** # La gestion de projet --- ### Recherche - Quels sont les objectifs de la gestion de projet ? - Que gère t-elle ? Notes: - [Sur Wikipedia](https://fr.wikipedia.org/wiki/Gestion_de_projet) - [Sur Apvizer](https://www.appvizer.fr/magazine/operations/gestion-de-projet/avantages-de-la-gestion-de-projet-1470066377) - [Sur un blog](http://www.blog-gestion-de-projet.com/definition-gestion-de-projet/) - [Sur aml-groupe](https://www.amj-groupe.com/un-planning-mais-pour-quoi-faire/) - [Sur Youtube](https://www.youtube.com/watch?v=KstwnJm4OO0) - [Sur Youtube](https://www.youtube.com/watch?v=Q1RZ2fnqngA) --- ## Objectifs - Bien définir le projet - Gérer le temps et le délais et les coûts - Mieux travailler ensemble - Piloter l'équipe - Limiter les risques - Mettre en rapport le besoin et la réalisation ![management](./images/project-management.jpg) Notes: - Notion de chemin critique --- ## Ce qu'il faut gérer - Spécification - Conception - Développement - Tests unitaires - Validation - Documentation --- ### Recherche Quelles méthodes pouvez-vous citer ? Notes: - [Sur Wikipedia](https://fr.wikipedia.org/wiki/Cat%C3%A9gorie:M%C3%A9thode_de_d%C3%A9veloppement_logiciel) - [Sur wikipedia](https://en.wikipedia.org/wiki/Software_development_process) - [Sur Wikipedia](
) - [Sur wikipedia](https://fr.wikipedia.org/wiki/Cycle_en_V) - [Sur wikipedia](https://fr.wikipedia.org/wiki/Crystal_clear) - [Sur wikipedia](https://fr.wikipedia.org/wiki/M%C3%A9thode_agile) - [Sur wikipedia](https://en.wikipedia.org/wiki/Test-driven_development) - [Sur Planzone](https://www.planzone.fr/blog/methodologies-gestion-projet) - [La méthode Rache ?](https://www.la-rache.com/) --- ## De nombreuses méthodes - Cycle en V / Cascade - TDD - Kanban - L’agilité - Itératif - XP - SCRUM - Et tellement plus... - Rache ? --- ## Question Quels sont les risques de la gestion de projet ? --- ## Les écueils - Passer trop de temps à gérer le projet - Process trop complexe - Ne pas exploiter les retours du terrain - Conflit coût/réalisation - Perdre l'objectif initial --- ## Focus sur l'Agilité --- ### Recherche Qu'est-ce que l'Agilité ? Notes: - [Sur wikipedia](https://fr.wikipedia.org/wiki/M%C3%A9thode_agile) - [Le manifeste](http://agilemanifesto.org/iso/fr/manifesto.html) - [Sur un blog](http://www.blog-gestion-de-projet.com/gerez-vos-projets-informatiques-avec-les-methodes-agiles/) - [Sur Youtube](https://www.youtube.com/watch?v=-QD7_lIqqlY) --- ## L'agilité ? ![agile](./images/agileprincipe.png) --- ## Son manifeste - Le [manifeste agile](http://agilemanifesto.org/iso/fr/manifesto.html)... - ... et ce qu'il implique. - Un ensemble de bonnes pratiques. ![agilecloud](./images/agile-development.png) --- ## Conclusion ![goagile](./images/goagile.png) # La méthode Kanban --- ## Recherche - D'où vient-elle ? - Comment fonctionne-t-elle ? Notes: - [Sur wikipedia](
) - [Sur Savoir agile](http://savoiragile.com/2017/11/21/introduction-a-kanban/) - [Sur planview](https://www.planview.com/resources/articles/what-is-kanban-board/) - [Sur Youtube](https://www.youtube.com/watch?v=ueVXZUaWhYw) - [Sur Youtube](https://www.youtube.com/watch?v=jf0tlbt9lx0) --- ## C'est léger - Des lignes de production de Toyota. - Une méthode de lean management (et pas agile). ![Kanban](./images/kanbantoyota.png) --- ## Ses objets - Le kanban == panneau - Les tâches - Les états... --- ## Un kan-board ![Kanban board](./images/kanban-board.png) --- ## Les tâches - Ce qu'il faut faire - À déplacer sur le Kan-board - Pour suivre l'avancement - Pas de formalisme officiel - Un post-it, un ticket, ... --- ## Ses états - Nouveau (New) - **À faire** (To Do) - **En cours** (In progress) - À tester (Ready for test) - **Fait** (Done) - Archivé --- ## Son fonctionnement - Quand quelqu'un n'a plus de tâche en cours - Il prend une tâche de la colonne « To Do » - Et la dépose dans la colonne « Doing » - Puis, quand il a terminé la tâche - Il la déplace en « Done » --- ## Testons la méthode **Activité** : mettre en place un kanban... --- ## Testons la méthode **Activité** : ...et l'utiliser. --- ## Conclusion --- ## Kanban, mon amour ! - Simple et Flexible - Visuel - Auto-organisation - Traçabilité - Adapté au flux tendu --- ## Kanban, ça suffit ! - Pas d'outil de suivi - Pas de prévisionnel --- ## Quand l'utiliser ? - Pas de planning prévisionnel - Projet simple - Projet en production # La méthode Scrum --- ### Découvrons la méthode **Activité** : consulter les nombreuses ressources sur Internet. Notes: - [Sur Youtube](https://www.youtube.com/watch?v=Rx11lSvyKK8) - [Sur wikipedia](
) - https://www.thierry-pigot.fr/scrum-en-moins-de-10-minutes/ - https://agiliste.fr/guide-de-demarrage-scrum/ - https://www.youtube.com/watch?v=UkjZDTyRAz4 - https://www.youtube.com/watch?v=2Vt7Ik8Ublw - https://www.youtube.com/watch?v=9TycLR0TqFA - http://www-igm.univ-mlv.fr/~dr/XPOSE2008/SCRUM/index.php --- ## La mêlée - Analogie avec le rugby - Un framework agile ![melee](./images/melee.jpg) Notes: C'est toulousain forcément. --- ## Quels sont les concepts importants ? --- ## Ses artefacts - Produit - User stories - Planning poker - Release - Sprint - Backlog --- ## Le produit - C'est ce qui est livré au client - Il évolue dans le temps - Chaque story vise à l'améliorer - L'important c'est la valeur --- ## Raconte moi une histoire - Formalisme à respecter - Orienté feature client - Division en sous-tâches techniques - Notion de difficulté --- ## Formalisme ![US](./images/user-stories.jpg) --- ## Planning poker - Évaluation de la difficulté - Difficulté **relative** - En groupe - Pas de correspondance jour - Permet ensuite de suivre l'avancement --- ## Product Backlog - Contient toutes les stories d'une version - Ordonné chronologiquement ![backlog](./images/backlog.png) --- ## Release - Une version du produit - Composé d'un nombre définit de sprints - Avec le release backlog --- ## Sprint - Une itération du produit - Durée constante - 1~4 semaines en général - Un livrable à la fin - Viser le MVP --- ## Pourquoi cette division ? ![agile is better](./images/agile_better.png) --- ## Sprint Backlog - Contient un sous-ensemble du product/release backlog - Division en sous-tâches - Kanban inside --- ## Construisons un backlog **Activité** : construire le backlog d'un projet. Notes: Projet fil blanc avec l'outil d'alimentation de la base. 1 board sur github.com par groupe de 4-5 Puis on compare et on en garde qu'un seul. --- ## Quels sont les rôles ? --- ## Les rôles - Product owner - Scrum master - L'équipe - Ce n'est pas une hiérarchie ![hierachie](./images/selfteam.png) --- ## Product owner - Responsable du produit - Doit maximiser la valeur du produit - Représente les utilisateurs - Construit et maintient le product backlog - Utilise les indicateurs Notes: Il doit aimer son produit. --- ## Scrum master - Fait respecter la méthode - Construit le sprint backlog - Participe à l'évaluation des stories - Participe à la division en tâche --- ## L'équipe - Réalise le sprint - Auto-organisée - Participe à l'évaluation des stories - Participe à la division en tâche --- ## Comment fonctionne-t-elle ? --- ## Les réunions - Planification de release - Planification de sprint - Stand up meeting - Revue et rétrospective de sprint --- ## Planification de release - Au début d'une release - Pour préparer les sprints - Construction du release backlog - Avec tout le monde --- ## Planification de sprint - Avant le sprint - Scrum Poker si besoin - Élaboration des sprints backlogs - Avec tout le monde --- ## Stand up meeting - Chaque jour - Suivi quotidien de la réalisation - Pour lever les lièvres - Mais pas de résolution - Brièveté - L'équipe + SM --- ## Revue et rétrospective de sprint - Après le sprint - Démonstration du logiciel - Vérification des stories - Améliorations ? - Tout le monde --- ## Le déroulement ![cycles](./images/scrum.gif) --- ## Une release 1. Scrum poker 1. Élaboration du release backlog 1. Division en Sprints 1. Réalisation des sprints 1. Nouvelle version --- ## Les sprints 1. Lancement du sprint 2. Les stand-up meeting 3. Revue et rétrospective de sprint 4. Livrable --- ## Coup de poker - Prendre une issue - S'assurer que tout le monde a la même compréhension de la tâche - Premier vote - Si convergence, on garde l'évaluation - Sinon on essaye de justifier les valeurs dissidentes - et on revote jusqu'au consensus - Le SM tranche si besoin - En cas de doute -> évaluation la plus haute --- ## Une évaluation Prend en compte : - La difficulté technique - L'incertitude - La longueur --- ## Évaluons le backlog **Activité** : évaluer le backlog précédent. --- ## Comment suivre l'avancement ? --- ## Les indicateurs - Vélocité - Burndown chart ![burndown](./images/burndown.png) Note: [burdown](http://www.agilenutshell.com/burndown) --- ## Dans la pratique --- ## IRL 1 ? - Exploiter les indicateurs - PO proxy - Les outils - Au forfait ???? - ... --- ## IRL 2 ? - ... - Difficile à respecter - Savoir s'adapter - Sprint 0 - Pb de la dette technique --- ## Quand l'utiliser ? --- ## C'est adapté pour - Développement long - Projet un minimum bien défini - PO participatif - Projet changeant - Contraintes réalistes --- ## Points importants - Définition de fini - Protection de l'équipe - Respect de la méthode --- ## Simulons la méthode **Activité** : À partir du product backlog, faire les sprints. --- # Des questions ?