Méthodes de développement agiles (SCRUM)
Equipe projet
Scrum définit trois rôles principaux : le Directeur de produit (= chef de projet), le ScrumMaster (= lead programmer), et l'Équipe (= développeurs, graphistes, intégrateurs, ...). Des Intervenants peuvent s'intégrer également au projet de façon plus ponctuelle (= DBA, rédacteurs techniques, traducteurs, testeurs...). Chez Adyax, le directeur produit sera l'interlocuteur principal du client. C'est lui qui définit l'ordre dans lequel les fonctionnalités seront développées, et qui prend les décisions importantes concernant l'orientation du projet.
Le terme Directeur n'est d'ailleurs pas à prendre au sens hiérarchique du terme, mais dans le sens de l'orientation. C'est lui qui rédigera avec vous les spécifications fonctionnelles sous forme de user stories. Le Scrum Master joue un rôle capital : c'est lui qui est chargé de protéger l'équipe de tous les éléments perturbateurs extérieurs à l'équipe et de résoudre ses problèmes non techniques (administratifs par exemple). Il doit aussi veiller à ce que les valeurs de Scrum soient appliquées, mais il n'est pas un chef de projet ni un intermédiaire de communication avec les clients.
Chez nous ce rôle est tenu par nos "lead programmers". Ainsi, en communication permanente avec le Directeur de produit, il distribue les taches, anime l'equipe, code le squelette de l'application ou du site web.
Tout au long de la vie du projet, de la phase des spécifications jusqu’à la mise en production nous répartissons le travail en sprints et releases. Un sprint est une itération, d’une durée allant de 2 à 3 semaines. Un release est une somme de sprints, améliorant la visibilité sur le planning du projet.
On définit, en début du projet un ensemble de fonctionnalités à développer. Les fonctionnalités sont réparties en releases. C’est ce qu’on appelle le back log produit et back log release. Chaque release est constitué de sprints. Au début de chaque sprint on planifie et distribue les items du back log de la release. Tout au long du projet il est possible d’ajouter ou de supprimer des items du back log d’un sprint. Le principal avantage de cette méthode est que chaque sprint est intégré et testé. Toutes les fonctionnalités développées durant le sprint sont pleinement fonctionnelles et permettent de supprimer l’effet tunnel lors des développements.
L’application concrète de SCRUM chez ADYAX, de part la spécificité de l’offshore, se base sur un outil de gestion de projet orienté méthodes agiles et customisé pour l’offshore.
Tout au long du projet, vous aurez accès à cet outil vous permettant de suivre l’avancement des sprints, la complétion des items. C’est également cet outil qui sert de référentiel documentaire unique. Un wiki y est inclus et il permet de suivre ; tout au long du projet, les spécifications fonctionnelles et techniques. Enfin un outil de reporting en temps réel permet de voir les éventuelles difficultés de l’équipe et d’échanger sur un forum par lequel toute l’information échangée garde une trace.