M2

L'approche Agile

Rappel sur le cycle en V

Partie gauche (définition du besoin) :

Milieu : développement

Partie droite (tests et intégration) :

Approche agile

Privilégier "approche" par rapport à "méthode".

Les 4 valeurs

Valoriser :

Les 12 principes

  1. Notre plus haute priorité est de satisfaire le client en livrant rapidement et régulièrement des fonctionnalités à grande valeur ajoutée
  2. Accueillez positivement les changements de besoins, même tard dans le projet. Les processus agiles exploitent le changement pour donner un avantage compétitif au client.
  3. Livrez fréquemment un logiciel opérationnel avec des cycles de quelques semaines à quelques mois et une préférence pour les plus courts.
  4. Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet.
  5. Réalisez les projets avec des personnes motivées. Fournissez-leur l’environnement et le soutien dont elles ont besoin et faites-leur confiance pour atteindre les objectifs fixés.
  6. La méthode la plus simple et la plus efficace pour transmettre de l’information à l'équipe de développement et à l’intérieur de celle-ci est le dialogue en face à face.
  7. Un logiciel opérationnel est la principale mesure d’avancement.
  8. Les processus agiles encouragent un rythme de développement soutenable. Ensemble, les commanditaires, les développeurs et les utilisateurs devraient être capables de maintenir indéfiniment un rythme constant.
  9. Une attention continue à l'excellence technique et à une bonne conception renforce l’agilité.
  10. La simplicité – c’est-à-dire l’art de minimiser la quantité de travail inutile – est essentielle.
  11. Les meilleures architectures, spécifications et conceptions émergent d'équipes auto-organisées.
  12. À intervalles réguliers, l'équipe réfléchit aux moyens de devenir plus efficace, puis règle et modifie son comportement en conséquence.

La méthode Scrum

3 piliers :

3 niveaux hiérarchiques :

Le product owner

Le Scrum master

L'équipe de développement

Les user-stories sont contenues dans des epics, elles même contenues dans des backlogs. Les epics contiennent les user-stories mais aussi les éventuelles tâches annexes ou les bugs.

On travaille par phases incrémentales (sprints). Au départ, on réalise une phase de répartition pour déterminer la faisabilité et la difficulté des tâches. Le Spring Backlog définit ce que l'on réalise dans le sprint à venir.

Le scrum board permet de voir l'avancement du projet et le burdown chart représente le graphique d'avancement.

A la fin de chaque spring, on réalise une rétrospective. Le but est de définir ce qui s'est bien et mal passé et de définir un plan d'action. Tous les aspects peuvent être abordés (humains, techniques, etc.).

Le centre de tout est la communication avec le client. Le fait que les phases d'itération soient courtes permet de solliciter le client plus souvent et de remarquer les problèmes plus rapidement.

Les user stories

Principes INVEST :

Les critères d'acceptance

Ils définissent quand une US pour être considérée comme terminée.

Ces critères doivent être SMART :