SCRUM - Méthode de gestion de projet Agile
SCRUM : Qu'est ce que c'est?
Comment définir SCRUM ?
“… L’approche course de relais pour le développement de produits…peut être en conflit avec les objectifs de vitesse et de flexibilité maximum. A l’inverse, une approche holistique comme au rugby— quand une équipe essaie d’avancer en restant unie, en se passant le ballon de main en main— peut mieux servir les exigences de compétitivité d’aujourd’hui”
Takeuchi et Ikujiro Nonaka, “The New New Product Development Game”, Harvard Business Review, Janvier 1986.
SCRUM tient son origine du terme sportif de rugby signifiant : mêlée. Tout comme cet aspect technique de la partie du jeu, la méthodologie demande à ses acteurs d'être soudés dans l'accomplissement d'un projet, dans l'atteinte d'un but.
Mais tout comme au rugby, une mêlée n'est pas un processus unique. C'est une partie du jeu que l'on retrouve fréquemment pour faire avancer l'équipe. Dans le même concept SCRUM utilise une procédure que l'on nome itérative (On parlera de sprint pour décrire les itérations). Chaque itération ou sprint fournit une partie de produit fonctionnelle.
En résumé SCRUM est un processus agile qui permet de produire la plus grande valeur métier dans la durée la plus courte. Une belle phrase que celle-ci mais que se cache-t-il derrière ces mots ?
- SCRUM veux avant tout produire un logiciel fonctionnel. N'oublions pas que SCRUM veux mettre en avant la rentabilité et surtout la satisfaction client. Ce dernier doit pouvoir donc juger sur le tas de l'avancement de son produit.
- Dans la méthodologie SCRUM, le métier définit les priorités. L'équipe de développement s'organise elle-même pour déterminer la meilleure façon de produire les exigences les plus prioritaires (on parle de « bottom up »)
- Finalement, à chaque fin de sprint, tout le monde a un pouvoir de décision. L'équipe devra décider de livrer le produit en l'état, ou de continuer à améliorer le produit sur une itération supplémentaire.
Si certains se demandent encore à quoi sert SCRUM, voici une liste des caractéristiques :
- Itératif, lié a des processus incrémentaux
- Approche basé sur l'équipe
- Fait pour développer des produits/applications nécessitant une grande adaptabilité
- Contrôler le chaos résultat de conflits d'intérêt et des différents besoins
- Augmenter la communication et maximiser la coopération
- Protéger l'équipe des éléments externes perturbateurs
- Un moyen d'augmenter la productivité
Comment est né SCRUM ?
1995:
- Analyse des processus communs au développement : npn adapté à l’imprévu, aux répétitions
- Design d’une nouvelle méthode : Scrum parJeff Sutherland & Ken Schwaber
- Renforcement de Scrum par Mike Beedle & combinaison de Scrum avec Extreme Programming
1996:
- introduction de Scrum à la OOPSLA conference
2001:
- publication de “Agile Software Development with Scrum” par Ken Schwaber & Mike Beedle
De nos jours l’application de SCRUM est un succès sur plus de 50 entreprises
De quoi se compose SCRUM ?
Comme le montre le graphique ci-dessus, SCRUM s'impose comme un modèle d'efficacité, pronant l'expression : "aller à l'essentiel". Voici donc ce qu'il faut pour mettre en place correctement une méthodologie SCRUM efficace :
- Equipe responsable, en auto-organisation : l'équipe de développement se doit d'être autonome pour palier aux éventuels changements d'un client trop indécis.
- Avancement du produit par une série de « sprints » : les itérations sont courtes, 2 à 4 semaines au plus, pour permettre des interventions rapides en cas de problèmes.
- Exigences définies : en fait d'exigences, on parlera surtout d'éléments à mettre en oeuvre. Ces éléments sont regroupés sous l'appelation de "Backlog du produit".
- Pas de prescription de pratiques d’ingénierie : on reste dans un esprit d'autonomie de développement.
- Utilisation de règles génériques : on permet l'établissement d'un environnement agile propre au projet.