Ci sono molti fattori che contribuiscono alla tensione sulle riunioni. Considera questi come alcuni dei motivi importanti per cui le riunioni potrebbero costarti di più di quanto valgono:
- Focus: software rispetto alle riunioni
- Gestione - i manager hanno bisogno di misurazioni
- Personalità: introversi contro estroversi
- Tempo - interrompe, tempo Maker e Manager
- Obiettivi, priorità
Ognuno di questi fattori è spiegato di seguito,
Focus : mi piace sviluppare software e questo include pensare alle sfide (problemi), creare soluzioni, costruire software e riunioni distrarre dalla concentrazione sui compiti che compongono il software. Esiste uno stato chiamato " Flusso " in cui uno sviluppatore è immerso nella sfida (problema), ha costruito un modello mentale della soluzione e si concentra completamente sulla costruzione della soluzione. Uno sviluppatore può lavorare fino a mezzanotte, lasciare solo per mangiare e dormire, quindi tornare a uno stato vicino a dove ha lasciato.
Gli sviluppatori devono evitare le distrazioni e molti trovano che ci sono vantaggi nel programmare a tarda notte (evitano il rumore, le telefonate, l'ufficio occupato e i colleghi non sviluppatori che interrompono il loro lavoro). E quando hai lavorato fino alle 10, alle 11 o alle 12, non è irragionevole venire a lavorare più tardi (10, 11, mezzogiorno?). È ragionevole aspettarsi che gli sviluppatori lavorino dalle 9:00 a mezzanotte?
Scrum (e qualsiasi) riunione distrae lo sviluppatore dal suo scopo principale, che è la creazione di software.
Gestione - I manager devono misurare per avere successo, da qui la necessità di pianificazioni, risultati, tempistiche, priorità e riunioni per misurare e riportare i progressi e per esporre dipendenze, ritardi e aree a rischio. La sfida con uno Scrum è che un manager ha bisogno di queste cose, ma lo sviluppatore ha bisogno di concentrazione. Le riunioni servono il gestore e forniscono al gestore un modo per ottenere, misurare e tenere traccia dello stato e dei progressi, ma le riunioni raramente forniscono utilità agli sviluppatori. Considera che i gestori forniscono più valore quando gestiscono le distrazioni, rimuovono le barriere e consentono agli sviluppatori di concentrarsi sulla costruzione di software.
Esistono soluzioni alla necessità di riunioni. Un manager può visitare i propri sviluppatori, chiedere rapporti sullo stato, adottare un protocollo per le interruzioni meno intrusive o adottare una politica che lo sviluppatore informi dell'avanzamento dello sviluppatore quando è interrompibile. Vedi la discussione del tempo sul perché questo è importante.
Personalità - Considera che alcune persone sono introverse e altre sono estroverse. Gli estroversi godono delle interazioni sociali e ne vengono ricaricati. I manager sono in genere estroversi (perché gli estroversi sono generalmente migliori con le interazioni sociali), sebbene gli introversi possano avere successo come manager. Gli introversi possono godere e persino eccellere nelle interazioni sociali, ma vengono ricaricati dalla solitudine. Gli sviluppatori sono spesso introversi e lavorano con successo da soli (o in piccoli team) perché non "hanno bisogno" di interazioni sociali; possono essere felici di lavorare da soli sui problemi (anche se gli estroversi possono essere anche sviluppatori). Le riunioni quotidiane di mischia possono diventare incontri sociali, utili per gli estroversi, ma non altrettanto per gli introversi.
Tempo : gli sviluppatori non possono scrivere codice durante le riunioni. Né possono pensare a problemi difficili (a meno che non stiano facendo brainstorming), mentre sono distratti dalle riunioni. Gli sviluppatori hanno bisogno di grandi blocchi di tempo ininterrotto per concentrarsi sulla creazione di software. Le riunioni sono interruzioni che distraggono dai loro sforzi. Quando sei stato immerso nella risoluzione di un problema per ore, hai quasi finito, e qualcuno dice "tempo per la mischia", sei interrotto e perdi forse ore di lavoro mentre "cambi marcia". Oppure sei rimasto al lavoro fino alle 23:00, hai lasciato il lavoro, sei tornato a casa, hai dormito sul problema, ti sei svegliato, sei tornato al lavoro pronto a risolvere il problema e poi sei stato interrotto dopo un'ora di lavoro su un problema, perché è "il tempo della mischia".
Paul Graham ha un eccellente articolo su Maker Time vs. Manager Time, che spiega questo problema molto meglio di me. Basti dire che un'interruzione della riunione, sia pianificata che non pianificata, può interrompere il flusso e forzare uno sviluppatore dal tempo del Maker al tempo del Manager. Credimi, vuoi che gli sviluppatori siano in tempo per Maker.
Obiettivi, priorità - Sviluppatori e manager hanno obiettivi e priorità diversi. I manager hanno l'onere di tenere traccia dei programmi, minimizzare i costi, assicurarsi che i loro report siano responsabili e che eseguano. Gli sviluppatori hanno l'obiettivo di costruire il software che affronta le sfide / i problemi. Questi obiettivi non sono in conflitto, ma è il meccanismo di comunicazione che crea la tensione. Le riunioni soddisfano le esigenze del manager e ottimizzano i tempi dei manager, ma sono in conflitto con le esigenze dello sviluppatore. Gli incontri Scrum scartano la prima regola degli incontri, "hanno un programma" e tendono a vagare di più. E le riunioni vengono utilizzate per ottimizzare la comunicazione (per il gestore), ma costano il tempo dello sviluppatore (interruzioni, perdita di flusso, ecc.).
Qual è l'obiettivo? Costruire software che soddisfi le esigenze, rapidamente e con qualità, mentre i vincoli sono (qualità, tempo, costi, processo). Scrum e altre metodologie agili riconoscono il vincolo del processo, provano a minimizzare quel fattore e hanno avuto successo perché minimizzano quel vincolo. Ma l'aggiunta di riunioni costa tempo e l'interruzione costa allo sviluppatore molto più della durata della riunione.