TL; DR
Les échéances sont-elles [...]? ... [L] es lignes sont considérées comme allant de pair avec le développement de [a] gile.
Beaucoup de réponses ici sont susceptibles de se concentrer sur les aspects techniques de la question. Au lieu de cela, je vais aborder cette question du point de vue de la gestion de projet.
Une échéance implique beaucoup de planification préalable qui ne cadre pas avec les principes agiles. Au lieu de cela, les modèles de développement itératifs reposent sur des calendriers, des cadences et des cycles de publication incluant une planification juste à temps, mais pas la "grande planification initiale" généralement associée aux délais traditionnels de gestion de projet.
Il est encore possible de planifier les mises en production avec des méthodologies agiles, mais les plans reposent généralement sur une estimation du nombre d'itérations nécessaires pour atteindre un objectif plutôt que sur les objectifs de gestion définis par fiat. Cela ne veut pas dire que les dates d'expédition ne peuvent pas être définies, ou que les objectifs ne peuvent pas être atteints, mais la façon dont ils sont définis et atteints est assez différente de celle utilisée dans les méthodologies de gestion de projet traditionnelles.
Pensez aux boîtes de temps, pas aux délais
Cependant, chaque projet sur lequel j'ai jamais mis l'accent a insisté pour fixer une échéance. Étant donné que Agile tente de se concentrer sur la planification adaptative, la flexibilité et le changement. les délais sont-ils agiles?
Ceci est un malentendu commun des principes agiles. Les frameworks agiles tels que Scrum et Kanban ne sont pas axés sur les délais, mais sur la box-time et une cadence de livraison durable.
Dans Scrum, par exemple, le sprint n'est pas une "échéance". C’est une boîte de temps qui contient la quantité de travail que l’équipe estime pouvoir entrer dans la boîte de temps sans le déborder, puis est "terminé" ou "pas terminé" à l’expiration du délai. Une fois parti, le time-box est parti pour toujours; tout travail non effectué doit être re-planifié et réestimé dans une nouvelle boîte de temps, tout aussi éphémère, basée sur les besoins actuels (plutôt qu'historiques) du projet.
L’importance de cette plage horaire est qu’elle crée à la fois une cadence prévisible pour que les parties prenantes examinent les progrès et un rythme soutenu pour l’équipe, dans laquelle elle peut générer des augmentations de valeur potentiellement livrables . Le travail est incrémental et suit la cadence; le concept d'une grande date limite n'est donc pas conforme aux principes agiles.
Planification des libérations en fonction des plages horaires
La planification de la publication est peut-être le domaine dans lequel les utilisateurs rencontrent le plus de difficultés à faire correspondre les processus agiles aux cadres traditionnels. La planification des versions implique souvent des produits livrables à portée fixe ou à date fixe. Dans les cadres agiles, la planification des versions est généralement effectuée à l'aide d'un processus d'estimation dans lequel la portée est explicitement définie comme une variable mutable, tandis que les dates de publication sont estimées par itérations.
Par exemple, un projet peut s’engager à publier la version 1.0 d’un projet à la fin de 20 itérations; l'étendue de ce qui est publié peut changer au cours de la vie du projet (l'étendue, les caractéristiques et les priorités peuvent changer au début de chaque sprint), mais les dates cibles de chaque version sont fixées dans le plan de projet. L'équipe s'efforce de fournir un incrément potentiellement livrable à chaque sprint, et la définition de fait comprend des contrôles de qualité tels qu'une intégration continue pour s'assurer que le projet est dans un état pouvant être libéré à la fin de chaque sprint.
Parfois, vous verrez des projets agiles dont l'étendue est fixe, mais comme cette variable est la variable mutable des projets agiles, la date de publication peut changer au fil du temps, à mesure que l'étendue de chaque itération s'ajuste, change ou s'adapte aux besoins changeants du projet. . Je ne recommande certainement pas l'approche à portée fixe pour les équipes agiles, en particulier les équipes inexpérimentées, mais il y a des moments où c'est la bonne approche.
Voir également