Scrum è una metodologia di sviluppo software che si concentra sulla facilitazione della comunicazione e della collaborazione tra i membri del team. In genere, un team di sviluppo Scrum avrà tre ruoli principali: il proprietario del prodotto, lo Scrum Master e i membri del team. È lo Scrum Master che funge da intermediario, con l’obiettivo di garantire una comunicazione efficace e una collaborazione intenzionale tra il proprietario del prodotto e i membri del team. La sua funzione è duplice: migliorare l’efficienza del proprietario del prodotto e facilitare la produttività del team. Pertanto, Scrum Masters si trova in una posizione di leadership che è di servitù, piuttosto che di autorità assoluta, sebbene l’applicazione delle regole sia centrale nella posizione.
Lavorando all’interno di un ruolo impegnativo, lo Scrum Master svolgerà una vasta gamma di compiti per compiere la sua missione. Questi possono essere compiti di alto livello, come la determinazione e la direzione di flussi di lavoro e programmi. Tali compiti possono anche essere di basso livello, come ad esempio la regolazione della temperatura in una stanza in cui il team sta lavorando per garantire comfort durante le lunghe ore di sviluppo. Risponderà e mitigherà anche le catastrofi, come riparare il computer di uno sviluppatore se si guasta o garantire che tutti i sistemi siano sicuri durante il processo di sviluppo. Nel complesso, qualsiasi cosa, non importa quanto sia grande o piccola, ciò che influisce in modo produttivo sul team è responsabilità dello Scrum Master.
L’autorità nella posizione, tuttavia, deriva dal fatto che lo Scrum Master ha la responsabilità del processo. Sebbene questa persona possa non essere in grado di prendere decisioni dirette sui singoli membri del team, detiene l’autorità di prendere decisioni relative alla produttività dell’intero team. Ad esempio, se lo Scrum Master ritiene che sia necessario implementare un nuovo programma di lavoro per raggiungere obiettivi di sviluppo realistici e rispettare scadenze raggiungibili, determinerà quel nuovo programma e lo distribuirà ai membri del team. L’applicazione delle regole è anche una funzione fondamentale della posizione, per garantire che il team non sia impantanato da distrazioni inefficienti.
Facendo affidamento su Scrum Master, il proprietario del prodotto si aspetterà una serie di informazioni relative ai progressi del team nel prendere decisioni e direttive quando necessario. Tali informazioni potrebbero includere aggiornamenti regolari su diversi aspetti del processo di sviluppo e sulle sfide incontrate. Aiutando il proprietario del prodotto, Scrum Master aiuterà anche a mantenere arretrati e altre attività di manutenzione del processo rilevanti per garantire l’efficienza. Inoltre, fungerà da cuscinetto tra il proprietario del prodotto e il team per garantire che gli obiettivi siano realistici e all’interno delle capacità del team durante un determinato periodo di tempo specificato.