Scrum est aujourd’hui l’approche agile la plus utilisée. Elle se caractérise par des itérations courtes de quatre semaines maximum (des sprints), ainsi que par la distribution des rôles suivants au sein de l’équipe projet :
Son fonctionnement s’articule autour de “timebox” régulières, c’est à dire des périodes de temps limitées. Chacune d'elle est une itération de développement limitée à une courte durée durant laquelle l'équipe devra se concentrer sur des fonctionnalités précises et définies en amont. La méthode Scrum limite la documentation, mais impose un unique document, le Product Backlog. Il contient les différentes fonctionnalités attendues et permet d'organiser le travail.
Envie de devenir un manager Agile ? En 6 semaine formez-vous au Challenge Scrum Master. Plus d'information sur la page Challenge Scrum Master.
Extrem programing est une méthode de gestion de projet fortement axé sur l’aspect réalisation. Les éléments clés de cette méthode sont :
De nombreuses équipes de développement combinent Scrum et Extrem Programing. Cette méthode mixte est à ce jour la deuxième approche agile la plus utilisée au monde, derrière Scrum.
Graphique illustrant la popularité des différentes méthodes agiles, d’après l’enquête 2013 de Version One.
Kanban (littéralement « panneau » en japonais) est une approche qui consiste à faciliter au maximum le workflow d’une équipe et à adapter le volume du travail en cours aux capacités de l’équipe de production. Concrètement il s’agit de placer les items (ou tâches) du projet dans une colonne du tableau Kanban. Chacune des colonnes représente un état (à évaluer, à faire, en cours, etc.). Généralement, cette technique est utilisée en parallèle des autres méthodes et permet une transition progressive des méthodes classiques aux méthodes agiles. Le Kanban est une adaptation à l’univers du logiciel d’une méthode conçue par Toyota dans les années 50 pour mettre en place un système production à flux tendus.
Tout comme le Kanban, le Lean Development est l’application d’une méthode industrielle au secteur du logiciel. En plus des principes de l’agilité, le Lean Development s’appuie sur deux autres prérogatives clés :
Le Feature Driven Development ou FDD s’axe principalement sur le design et le développement. Le développement est réalisé par plusieurs équipes, chacune en charge d’une à deux fonctionnalités du produit. La valeur principalement mise en avant par cette méthode est la qualité du produit fini.
Ces différentes méthodes répondent toutes à des problématiques de développement différentes. Il est donc impossible de les comparer “dans l’absolu”, il faut le faire relativement aux besoins de l’équipe projet. Pour choisir une méthode, il est important de pondérer les critères suivants :
De la même manière, certains critères sont susceptibles de venir invalider l’utilisation de ces méthodes :
Il peut s’avérer également qu’aucune méthode agile ne puisse être appliquée au projet donné. Dans ce cas de figure, le recours aux méthodes traditionnelles comme le cycle en V ou encore le Waterfall s’impose.
Une fois par mois, les tendances de la formation en ligne dans votre boîte e-mail