De nombreux facteurs contribuent à la tension lors des réunions. Considérez-les comme l'une des principales raisons pour lesquelles les réunions peuvent vous coûter plus cher qu'elles ne valent:
- Focus - logiciel contre réunions
- Management - les gestionnaires ont besoin de mesures
- Personnalité - Introvertis vs Extravertis
- Time - Interrupts, Maker et Manager time
- Buts, Priorités
Chacun de ces facteurs est expliqué ci-dessous,
Focus - J'aime développer des logiciels, et cela inclut de réfléchir aux défis (problèmes), de créer des solutions, de construire le logiciel et de tenir des réunions qui empêchent de se concentrer sur les tâches qui construisent le logiciel. Il y a un état appelé " Flow " " dans lequel un développeur est immergé dans le problème (problème), a construit un modèle mental de la solution et se concentre entièrement sur la construction de la solution. Un développeur peut travailler jusqu'à minuit, ne sortir que pour manger et dormir, puis retourner dans un état proche de celui où il est parti.
Les développeurs doivent éviter les distractions, et beaucoup trouvent qu'il est avantageux de coder tard dans la nuit (ils évitent le bruit, les appels téléphoniques, les bureaux occupés et les collègues non développeurs qui interrompent leur travail). Et quand vous avez travaillé jusqu’à 10, 11 ou 12 heures, il n’est pas déraisonnable de venir travailler plus tard (10, 11, midi?). Est-il raisonnable de s’attendre à ce que les développeurs travaillent de 9 heures à minuit?
Les réunions Scrum (et toutes les réunions) distraient le développeur de son objectif principal, à savoir la création de logiciels.
Gestion - Les gestionnaires doivent mesurer pour réussir, d'où le besoin de calendriers, de produits livrables, de calendriers, de priorités et de réunions afin de mesurer et de rendre compte des progrès et d'exposer les dépendances, les retards et les zones à risque. Le défi avec Scrum est qu’un manager a besoin de ces choses, mais que le développeur a besoin d’être concentré. Les réunions servent le responsable et permettent au responsable d'obtenir, de mesurer et de suivre l'état et les progrès, mais les réunions offrent rarement une utilité aux développeurs. Considérez que les gestionnaires apportent plus de valeur lorsqu'ils gèrent les distractions, suppriment les obstacles et permettent aux développeurs de se concentrer sur la création de logiciels.
Il existe des solutions au besoin de réunions. Un responsable peut rendre visite à ses développeurs, demander des rapports d’état, adopter un protocole lorsque les interruptions sont moins intrusives ou adopter une stratégie à la charge du développeur pour l'informer de l'avancement des travaux lorsque le développeur est interruptible. Voir la discussion du temps pour pourquoi c'est important.
Personnalité - Considérez que certaines personnes sont des introvertis et que d'autres sont des extravertis. Les extravertis apprécient les interactions sociales et sont rechargés par eux. Les gestionnaires sont généralement des extravertis (car les extravertis sont généralement meilleurs avec les interactions sociales), bien que les introvertis puissent réussir en tant que gestionnaires. Les introvertis peuvent apprécier et même exceller dans les interactions sociales, mais sont rechargés par la solitude. Les développeurs sont souvent introvertis et réussissent à travailler seuls (ou au sein de petites équipes) car ils n'ont pas "besoin" d'interactions sociales; ils peuvent être heureux de travailler seuls sur des problèmes (bien que les extravertis puissent également être des développeurs). Les réunions de mêlée quotidiennes peuvent devenir des rassemblements sociaux, bons pour les extravertis, mais pas si bons pour les introvertis.
Heure - Les développeurs ne peuvent pas écrire de code pendant les réunions. Ils ne peuvent pas non plus penser à des problèmes difficiles (à moins qu’ils ne réfléchissent), tout en étant distraits par des réunions. Les développeurs ont besoin de beaucoup de temps ininterrompu pour se concentrer sur la création de logiciels. Les réunions sont des interruptions qui distraient de leurs efforts. Lorsque vous avez été plongé dans la résolution d'un problème pendant des heures, que vous avez presque terminé et que quelqu'un vous dit "temps pour la mêlée", vous êtes interrompu et perdez peut-être des heures de travail tout en "changeant de vitesse". Ou vous êtes resté au travail jusqu'à 23h00, vous avez quitté votre travail, rentré chez vous, dormi sur le problème, vous vous êtes réveillé, êtes retourné au travail prêt à résoudre le problème, puis êtes interrompu après une heure de travail sur un problème, car est "le temps pour la mêlée".
Paul Graham a un excellent article sur Maker Time vs. Manager Time, qui explique ce problème bien mieux que moi. Autant dire qu'une interruption de réunion, planifiée ou non, peut interrompre le flux et forcer un développeur de Maker à celui de Manager. Croyez-moi, vous voulez des développeurs à l'heure de Maker.
Objectifs, priorités - Les développeurs et les gestionnaires ont des objectifs et des priorités différents. Les gestionnaires ont la responsabilité de suivre les calendriers, de minimiser les coûts, de veiller à ce que leurs rapports soient responsables et performants. Les développeurs ont pour objectif de créer le logiciel qui répond aux défis / problèmes. Ces objectifs ne sont pas en conflit, mais c'est le mécanisme de communication qui crée la tension. Les réunions répondent aux besoins du responsable et optimisent son temps, mais elles entrent en conflit avec les besoins du développeur. Les réunions Scrum ignorent la première règle de réunion, "ont un ordre du jour" et ont tendance à errer davantage. Et les réunions sont utilisées pour optimiser la communication (pour le responsable), mais elles coûtent du temps au développeur (interruptions, perte de flux, etc.).
Quel est le but? Construire un logiciel qui réponde aux besoins avec rapidité et qualité tout en respectant les contraintes (qualité, délais, coûts, processus). Scrum et d’autres méthodologies agiles reconnaissent la contrainte de processus et essaient de minimiser ce facteur. Elles ont réussi car elles minimisent cette contrainte. Cependant, l'ajout de réunions coûte du temps, et les interruptions coûtent beaucoup plus au développeur que la durée de la réunion.