Les méthodes Agiles se sont développées avec pour objectif de sortir du carcan méthodologique des méthodes traditionnelles en allégeant ces processus et en privilégiant les aspects collaboratifs entre des équipes pluridisciplinaires et leurs clients.
Ces méthodes mettent en avant la communication et les critères liés à l'humain.
Elles recherchent une planification adaptative, un développement évolutif, une livraison précoce et une amélioration continue.
La flexibilité au changement est un maitre mot de ces méthodes.
C'est en 2001 qu'un premier manifeste de quatre valeurs pose les principes des méthodes Agiles :
De ce manifeste est sortie une liste de 12 principes généraux :
1. Satisfaire le client en priorité,
2. Accueillir favorablement les demandes de changement,
3. Livrer le plus souvent possible des versions opérationnelles de l’application,
4. Assurer une coopération permanente entre le client et l’équipe projet,
5. Construire des projets autour d’individus motivés,
6. Privilégier la conversation en face à face,
7. Mesurer l’avancement du projet en termes de fonctionnalités de l’application,
8. Faire avancer le projet à un rythme soutenable et constant,
9. Porter une attention continue à l’excellence technique et à la conception,
10. Faire simple,
11. Responsabiliser les équipes,
12. Ajuster à intervalles réguliers son comportement et ses processus pour être plus efficace.
En résumé :
Les méthodes Agiles se fondent sur un développement itératif
Une des méthodes les plus utilisées est la méthode Scrum : Le principe est donc basé sur une succession de mini-projets dont les constituants sont :
Le Sprint
Le Sprint planning
Le Daily scrum / mélée
Le Sprint review
Le Sprint retrospective
Product owner
Scrum master
Développeurs
Les différents documents utilisés dans la méthode. Product backlog
Sprint backlog
Product increment
Burndown chart / Tableau d'avancement
Le déroulé de l'avancement du travail dans le cadre d'un sprint est suivi au moyen d'un tableau de bord
Impediment list / Liste des empêchements
Visibilité
Pour évaluer les résultat du processus, ceux-ci doivent être réels et non soumis à interprétation.
Une fonctionnalité est implémentée lorsque tous les acteurs s’entendent sur les modalités d’évaluation du résultat et sur le résultat lui-même.
Inspection
Cela consiste à vérifier les écarts par rapport à l’objectif initial.
Les points de contrôle doivent être nombreux et fréquents.
Adaptation
L’adaptation est nécessaire lorsque des écarts inacceptables sont constatés ; des ajustements doivent être mis en œuvre immédiatement afin d’éviter des dérapages trop importants.