Exemple d'outils agiles

Remarque

Le vocabulaire et les outils présentés sont en grande partie issus de la méthode Scrum qui est l'une des plus répandues en termes de mise en œuvre des méthodes agiles.

DéfinitionTimeboxing

Principe du timeboxing : La gestion par "blocs de temps" consiste à donner des échéances fixes pour chaque livraison intermédiaire. Le projet est divisé en "blocs de temps" (aussi appelés Sprints) ayant tous la même durée. Cette durée doit être courte (< 1 mois). Elle correspond à ce qu'on appelle une itération du projet. A la fin de chaque sprint, on évalue l'itération et on réajuste la planification du travail pour le sprint suivant en fonction des résultats.

DéfinitionProduct backlog

On établit en début de projet la liste des besoins exprimés, par exemple sous forme fonctionnelle. Ces fonctions sont hiérarchisées par facteur d'importance en terme d'usage et par délais, difficulté et/ou coût de réalisation. C'est le product backlog.

Avant chaque timebox le product backlog sert d'outil d'arbitrage, il permet de commencer par le plus important, le moins coûteux, le plus urgent, le plus simple, ...

Après chaque itération le product backlog est mis à jour : fonctions réalisées, évolution de l'importance relative d'un besoin, évolution du coût de réalisation étant donné le chemin parcouru ou l'apparition d'une nouvelle technologie, ajoute de nouvelles fonctionnalités, modification de la priorisation des besoins, etc.

Exemple

Timeboxing & product backlog

DéfinitionThe Product Tree

Le product backlog peut être représenté sous la forme d'un arbre. Cette représentation permet d'organiser et de prioriser de manière visuelle les différentes fonctionnalités du produit. du projet :

  • Les racines correspondent au pré-requis,

  • les fonctionnalités clés son positionnées sur le tronc,

  • les branches accueillent fonctionnalités secondaires.

L'activité consistant à produire cet arbre est appelée Prune the Product Tree. Elle est réalisée avec le client. Chaque fonctionnalité est formalisée sur une carte. Les cartes sont ensuite posées collaborativement sur les différentes parties de l'arbre.

Product TreeInformations[1]

DéfinitionKanban

La méthode Kanban est, à l'origine, une méthode de gestion des flux physiques dans le domaine industriel. Elle fait partie des outils Lean issus du TPS[2]. Elle a pour objectif de réduire les quantités de stocks au stricte nécessaire en "tirant" le flux à partir des commandes des clients. Le mot kanban est un terme japonais qui signifie "étiquette". Lorsqu'un lot de pièces est consommé, l'étiquette correspondant à ce lot est transmise au poste de production amont afin de déclencher la production d'un nouveau lot. La méthode kanban est un outil de management visuel qui remplace la traditionnelle planification de production réalisée sur la base de prévisions de ventes.

En méthodes agiles, le terme de kanban est utilisé pour désigner le mode de suivi des tâches du projet. Chaque tâche (ou lot de tâches) correspond à une "étiquette" que l'on déplace dans les colonnes d'un tableau en fonction de son avancement. Le kanban permet de suivre la réalisation des tâches de manière visuelle et partagée.

Il existe plusieurs application numériques permettant de réaliser un kanban agile. L'un des plus connus est Trello. Voici quelques exemples d'outils libres :

Exemplekanban physique

DéfinitionUser stories

Il s'agit de raconter en petites histoires d'une dizaine de lignes environ, les principaux scénarios d'utilisation illustrant l'usage du système visé.

Ces histoires permettent d'avoir un fil conducteur mental pour visualiser les fonctions pertinentes. Elles doivent être rédigées (avec de vraies phrases !) et ne pas se réduire à un simple schéma ou des listes à puce. C'est le fait d'écrire qui permet de penser au scénario dans son déroulement temporel, de penser la cohérence des actions et processus dans leur agencement et succession.

Ces scénarios se construisent souvent autour des rôles des utilisateurs : administrateur, usager standard, usager expert, etc.

Si un schéma appuie l'histoire, il ne doit pas la remplacer. Un scénario n'est pas un use case (au sens UML), justement parce que c'est rédigé et non schématique.

ExempleTranscription d'une vidéo

Valérie est en charge de la transcription et de la synchronisation de la collection des 8 entretiens de metteurs en scène. Cette opération préalable à la mise en ligne d'un entretien est longue et fastidieuse. Elle compte ainsi profiter des nouveaux outils pour accélérer cette étape de traitement. Elle est averti de la mise à disposition de l'entretien de Roger Planchon pour l'étape de transcription/synchronisation. Elle consulte alors le document et peut commencer à taper au kilomètre le texte brut. Valérie peut ajouter quelques éléments de typage (important) dans le corps de son texte. A chaque frappe, le player vidéo se met en pause et reprend, une fois la frappe terminée, quelques secondes auparavant. Cette méthode de saisie est très appréciée par Valérie qui peut ainsi écouter un fragment puis taper le texte sans avoir à mettre constamment en play/pause le curseur vidéo, ni à revenir avec la barre de navigation.

(par Ludovic Gaillard, INA, projet C2M, http://www.utc.fr/ics/c2m)

Remarque

Les stories peuvent être utilisées comme unité de gestion des tâches, une story correspondant à lot de tâches.