Je suis un grand fan de développement agile et j'ai utilisé XP sur un projet très réussi il y a quelques années. J'ai tout aimé, l'approche de développement itératif, l'écriture de code autour d'un test, la programmation en binôme, la présence d'un client sur site. C'était un environnement de travail très productif et je ne me suis jamais senti sous pression.
Cependant, les derniers endroits où j'ai travaillé ont utilisé / utilisé Scrum. Je sais que c'est aujourd'hui le modèle de développement agile, mais je ne suis pas convaincu à 100% que c'est agile. Vous trouverez ci-dessous les deux principales raisons pour lesquelles cela ne me semble pas agile.
Les gestionnaires de projet l'adorent
Les gestionnaires de projet, qui sont par nature obsédés par les échéances, semblent tous aimer Scrum. D'après mon expérience, ils semblent utiliser le backlog de Sprint comme moyen de suivre les exigences de temps et de consigner le temps consacré à une tâche donnée. Au lieu d'utiliser un tableau blanc, ils utilisent tous une feuille Excel que chaque développeur est tenu de remplir religieusement.
À mon avis, c'est beaucoup trop de documentation / de suivi du temps pour un processus agile. Pourquoi devrais-je perdre du temps à évaluer combien de temps une tâche va me prendre alors que je peux simplement m'occuper de la tâche elle-même. Ou de la même manière, pourquoi perdrais-je du temps à documenter le temps que prend une tâche pour pouvoir passer à la tâche suivante?
Standup Réunions
Les réunions à la place précédente où je travaillais étaient un cauchemar. Chaque jour, nous devions expliquer ce que nous avions fait hier et ce que nous allions faire ce jour-là. Si nous dépassions notre "estimation" de temps pour une tâche, le chef de projet créerait une odeur nauséabonde et ferait référence au Backlog de Sprint comme moyen de démontrer qu’il était incompétent de ne pas respecter la chronologie.
Maintenant, je comprends le besoin de communication, mais le ton des réunions quotidiennes devrait être léger et se concentrer sur le partage des connaissances. Je ne pense pas que cela devrait se transformer en une charade de style de devoirs. Aussi, le point le plus troublant de l'agilité est que les délais changent, ils ne devraient pas être figés.
Conclusion
L'idée de l'agile est d'améliorer le logiciel en simplifiant la vie des développeurs. Par conséquent, à mon avis, tout processus agile utilisé par une équipe devrait être dirigé par un développeur. Je ne pense pas qu'un chef de projet utilise un processus étiqueté "agile" pour suivre un projet n'a rien à voir avec le développement agile.
Pensées quelqu'un?