Je suis devenu le scrum master d'une équipe nouvellement créée, chargée de créer un logiciel ET de gérer d'autres applications déployées. Donc, fondamentalement, chaque membre de l'équipe a des tâches de développement et d'opérations.
J'ai observé leur fonctionnement ces deux dernières semaines et j'ai remarqué que l'équipe avait du mal à coordonner ces tâches. lorsqu'un développeur se concentre sur le codage, il est interrompu pour résoudre un problème soulevé en production et il lui est difficile de se concentrer à nouveau sur une tâche précédente.
J'ai essayé d'allouer% de temps de développement aux opérations, mais apparemment cela ne résout pas le problème. Ce qui m'intéresse, c’est d’entendre les commentateurs qui ont déjà vécu cette situation, comment vous y êtes pris et quelles sont vos recommandations?
la source
Réponses:
Ce problème est aussi vieux que Scrum. Il existe une solution, mais vous ne l'aimerez pas.
Le fait de placer vos développeurs dans plus d'une mêlée, d'avoir deux arriérés distincts ou d'attribuer seulement un pourcentage de leur temps au sprint va à l'encontre de ce que Scrum tente de réaliser, à savoir un flux cohérent de tâches terminées.
Si vous essayez ce genre de choses, vous retournez aux méthodes de développement du «chaos» ou du «JFDI» avec tous leurs problèmes, par exemple:
Bien sûr, la réponse habituelle à cet avis est "Mais je ne peux pas faire ça! L'entreprise a besoin que ces bogues de production soient corrigés dès que possible!"
Mais ce n'est pas vraiment vrai.
Si vous avez vraiment autant de bugs qui affectent votre entreprise dans cette mesure, vous devez devenir professionnel et améliorer vos tests. Travaillez simplement sur les bogues et les tests automatisés jusqu'à ce que vous les ayez tous corrigés. Embauchez une équipe d'assurance qualité et testez l'enfer de toutes les nouvelles versions.
Ce qui est plus probable cependant est l’un des suivants:
Les bogues sont des problèmes opérationnels: manque d’espace disque, pas de reprise après sinistre, pas de sauvegarde, pas de basculement, etc. Faites appel à une équipe OPS.
Les bogues sont des utilisateurs qui ne comprennent pas comment le système devrait fonctionner "C'est arrivé! Est-ce un bogue?". Obtenez un service d'assistance et formez vos utilisateurs, écrivez de la documentation.
Peur de revenir en arrière. Vous avez lancé une nouvelle fonctionnalité qui a cassé quelque chose. N'essayez pas de trouver une solution. Revenez à la version précédente et mettez les bogues dans l'arriéré.
la source
J'essaie juste de sortir des sentiers battus ici.
Comme il pourrait ne pas être possible de faire en sorte que le propriétaire du produit voie les choses à votre façon. Il peut encore y avoir des erreurs critiques qui ne peuvent tout simplement pas attendre, telles que rencontrer des clients pour lesquels une assistance aux développeurs est nécessaire, etc.
Pourquoi ne pas essayer d’anticiper cela et de l’utiliser à votre avantage?
Vous aurez besoin d’une équipe de 5+ pour que cela soit réaliste peut-être.
Mais pourquoi ne pas supprimer un développeur à chaque sprint (en alternance, chacun a son tour).
Comme il n'y a probablement pas assez d'erreurs pour utiliser un développeur complet pour les corrections, d'autres problèmes ou tâches peuvent être effectués.
La vélocité de l'équipe peut augmenter, le stress peut diminuer, les conflits avec la direction peuvent diminuer, vous avez le temps d'améliorer vos connaissances.
la source
L '"approche Batman" est une solution efficace pour gérer les efforts des développeurs concernant des problèmes de production vraiment essentiels.
L’aspect coûteux de la responsabilité de l’assistance à la production lors du développement de nouvelles fonctionnalités est le changement de contexte, vous devriez donc vous limiter.
Avec l’association de l’équipe, créez une liste des membres de l’équipe et parcourez-la de manière à ce que chaque jour une nouvelle personne soit déclarée «Batman» lors de la réunion informelle et réponde aux problèmes de production essentiels ce jour-là. Le reste de l'équipe peut rester concentré sur le développement sans avoir à changer de contexte et tout le monde a une part équitable de la douleur liée au soutien. Avec une équipe de 5 personnes, le développeur peut être interrompu un jour par semaine et dispose de 4 jours de temps de développement prévisible et ininterrompu.
Cela présente l'avantage de partager les connaissances et l'expérience au sein de l'équipe. Vous n'avez donc aucune personne chargée de résoudre des problèmes particuliers et de devenir un point de défaillance unique et une répartition équitable des problèmes de support.
la source