Leadership o Autogestione

Transcript

Leadership o Autogestione
Agile Project Management -
LC90.99B
Leadership o Autogestione
Questo lavoro è ispirato in parte a pubblicazioni di Rowan McCann, un ricercatore sulle prestazione dei
team Agile per conto di Team Management Systems. Mette a fuoco la problematica della diversità in un
team Agile , suggerendo un approccio pratico per superare la fase iniziale.
Contesto dello sviluppo software
L’idea dei team autogestiti è nata intorno al 2001 quando fu proposto il nuovo modo
di lavorare secondo i principi del Manifesto Agile.
I team autogestiti, per natura instabili, hanno successo solo se sanno superare il
dilemma “Leadership” o “Autogestione”.
Troppo controllo centralizzato impedisce di applicare i principi Agile, inibisce la
creatività e genera resistenza al cambiamento.
Troppa autogestione porta al caos e all’anarchia, distruggendo il team.
Un team Agile deve tendere all’autogestione, senza però sfociare nel caos. Non si può chiedere
ad un team di auto organizzarsi, soltanto perché si vuole sperimentare la nuova metodologia Agile,
sarebbe la premessa di un fallimento annunciato.
In “The Wisdom of Teams: Creating the High-Performance Organization” Katzenback e Smith
definiscono il team “a small number of people with complementary skills who are committed to a
common purpose, performance goals, and a common approach for which they hold themselves mutually
accountable.” In italiano suona più o meno così: “Il team si compone di poche persone con competenze
complementari fra loro, con uno scopo comune, obiettivi di prestazioni e un approccio comune per il
quale si rendono conto a vicenda.”
Altri autori parlano di senso di cameratismo e percezione di “essere sulla stessa barca”.
Anche nel gioco del rugby esiste un forte senso di cameratismo e l’obiettivo principale è essere coesi,
come raccomanda uno dei principali frame work Agile chiamato proprio SCRUM come la concertazione
veloce di una squadra di rugby durante un’azione di gioco (un’iterazione o sprint nel mondo Agile).
Stato dell’arte
I giocatori cambiano ma la storia sembra la stessa! Anche con Agile non sono tutte rose e fiori.
Molti progetti software sono in ritardo, fuori budget e lontani dall’obiettivo. Nonostante i disastri di
progetti cancellati o procrastinati, molte software house continuano ad utilizzare gli stessi processi da
diversi decenni. Le esigenze del mercato del software cambiano rapidamente, richiedendo un approccio
più moderno per il rilascio di nuove applicazioni. Dopo il just-in-time dell’automotive ed il lean production
dell’elettronica di consumo, anche lo sviluppo software passa da processi rigidi a processi più adattivi,
guidati dal valore commerciale. Questo nuovo approccio, detto Sviluppo Agile comprende diverse
metodologie iterative e/o incrementali come:
 Extreme Programming (XP),
 Scrum,
 Crystal,
 Dynamic Systems Development Method (DSDM),
 Lean Development,
 Feature Driven Development (FDD).
Negli ultimi anni una metodologia Agile è stata adottata da società come Siemens, CapitalOne, Lockheed
Martin, Motorola, Microsoft, Yahoo, Google, GE e Cisco Systems . Molte aziende con i processi Agile
contano di realizzare miglioramenti significativi alla qualità, alla produttività e di conseguire vantaggi
competitivi.
Comportamento del Team Agile
Un team Agile appena formato deve comprendere la dinamica del gruppo.
Ognuno deve studiare il comportamento umano e perché le persone si comportano in un certo modo.
Purtroppo, non è possibile insegnare queste cose, perciò si possono apprendere solo con l’esperienza.
Materiale utile per preparare la certificazione Agile PMI-ACP
Vito Madaio
pag. 1
Agile Project Management -
LC90.99B
Un approccio tecnico che si può tentare e l’applicazione del metodo della Ruota definito da Team
Management Systems un gruppo di ricercatori che studia “Perché alcuni individui, team e organizzazioni
danno buone prestazioni, lavorando efficacemente, mentre altri falliscono .”
Per valutare un Team Agile TSM mette a disposizione un questionario gratuito (Agile Team Performance)
di 30 domande sufficienti a determinare le caratteristiche di un team, le aree di forza e le aree di
debolezza per costruire sui punti di forza un team di alte prestazioni. Compilando il questionario si
ottiene un interessante report con le percentuali di preferenze dei membri del team secondo 8 distinti tipi
di lavoro come nella ruota della seguente figura che pubblichiamo con il permesso di Team Management
Systems.
Fonte: Team Management Systems
Le definizioni dei tipi di lavori sono:
 Advising - funzione che raccoglie informazioni da tutti gli stakeholder per rispondere
velocemente alle richieste di modifiche dei requisiti. Serve per restare tutti aggiornati e far
circolare lo stato dell’arte del progetto. Richiede un flusso trasparente su cosa si sta realizzando il
team, concentrato sui consulenti affinché le informazioni raccolte siano veloci, accurate ed
efficaci.
 Innovating - funzione che genera nuove idee e nuovi modi di fare le cose. Richiede creatività
nel problem solving affinché il team resti un passo avanti rispetto alla concorrenza. Per farlo
bene occorrono: originalità, immaginazione e capacità innovative.
 Promoting - funzione che si preoccupa di identificare le opportunità e la vendita di nuove
opportunità dentro e fuori l’organizzazione. Spesso comporta coinvolgere competenze influenti e
fare presentazioni ad altri reparti o organizzazioni. Richiedere molta visibilità nell’organizzazione.
 Developing - funzione che trasforma i concetti in realtà. Si lavora sulle idee per produrre
prodotti e servizi effettivi. In molti casi comporta sviluppare soluzioni quando sorge un problema.
I team Agile devono avere buone competenze analitiche in modo da comprendere subito la
priorità dei requisiti, produrre stime accurate delle iterazione e definire i contenuti del burn down
chart.
 Organizing - funzione che comporta organizzare le persone e le risorse in modo efficiente
impostando goal e obiettivi chiari, responsabilizzando i membri del team delle loro azioni.
Implementare azioni efficaci se sorgono problemi per garantire i risultati promessi. In sintesi, è la
funzione che garantisce che il lavoro del team sia strutturato e focalizzato su obiettivi comuni.
 Producing - funzione focalizzata sui risultati, garantisce che le iterazioni siano completate con
efficacia ed efficienza. E’ la funzione di delivery del rilascio o di altri servizi. Richiede un approccio
sistematico al lavoro ed enfasi sul rispetto dei tempi di consegna.
 Inspecting - funzione che richiede attenzione ai dettagli ed enfasi al monitoraggio dei sistemi,
dei contratti e degli output. Si concentra anche sull’accuratezza, garantendo che il lavoro
Materiale utile per preparare la certificazione Agile PMI-ACP
Vito Madaio
pag. 2
Agile Project Management -

LC90.99B
consegnato sia di qualità giusta. Questo è il classico controllo funzionale che regolarmente
monitora l’efficienza delle procedure. Spesso costituisce la revisione del processo di sprint.
Maintaining - funzione di supporto che garantisce che vengano rispettati e superati gli standard
di comportamento ed etici, mantenendo il livelli di qualità. Supporta anche altri nel team affinché
i processi del team seguano le regole di base. In questa funzione è importante la lealtà perché si
tratta di aiutare gli altri.
Preferenze dei membri di un team
Nessuno gradisce tutto il lavoro che deve eseguire un team Agile. Qualcosa ci piace di più e qualcosa di
meno se non la odiamo del tutto.
Le preferenze sul lavoro rappresentano le dimensioni delle differenze individuali nel mostrarsi capace di
avere relazioni, di pensare e di agire nell’ambiente di lavoro. Le prime cose che si notano in una persona
sono: la sua capacità di ascoltare, se parla troppo, se parla poco, se parlare a vanvera, se dice cose
sensate, etc. Questi aspetti formano la base della prima impressione, difficile da modificare.
Quando entriamo in un gruppo di lavoro, in modo esplicito o meno, manifestiamo le nostre preferenze.

Agli estroversi piace lavorare in un ambiente con molte iterazioni con gli altri.

Gli introversi preferiscono lavorare con meno interruzioni e meno riunioni possibili, resistono ai
cambiamenti, generando anche qualche tensione in aree non di loro preferenza.
Quando un team Agile crea una di queste situazioni critiche, nascono squilibri o contrasti sulle preferenze
di ognuno. Ad esempio, se tutti sono propensi a dare priorità alla realizzazione delle modifiche e seguire
l’ultima idea, il team può non tracciare il burn-down chart, ossia il lavoro rimanente. Se tutti preferiscono
solo produrre, il team non ascolta e non produce ciò che interessa agli stakeholder.
Per disporre di un team efficace, bisogna raccogliere e comprendere le preferenze di tutti i membri e
cercare di bilanciare aspirazioni personali ed esigenze di lavoro. La comprensione delle aspirazioni dei
membri del team aiuta a garantire che ognuno lavori secondo le proprie preferenze.
Se le preferenze di ognuno si abbinano con il lavoro da fare, tutto procede per il meglio e le persone sono
soddisfatte del proprio lavoro. Le funzioni descritte sopra ricevono la giusta priorità e nessuna viene
considerata di minore importanza.
Profilo dei membri di un team Agile
Secondo la ruota di TMS, vediamo le caratteristiche delle persone combinate con le loro preferenze.
Fonte: Team Management Systems
Di solito un lavoro è gradito se due terzi dell’attività critica è in linea con la propria preferenza. Quando
ciò accade c’è più coinvolgimento nel lavoro da fare e le persone sono più contente.
Materiale utile per preparare la certificazione Agile PMI-ACP
Vito Madaio
pag. 3
Agile Project Management -
LC90.99B
Ecco le principali caratteristiche in ogni settore:
(preferisco non tradurre queste definizioni, per non snaturarle con termini non sempre appropriati)
Reporter-Adviser:
Prefers gathering information and likes to fully understand situations
before acting
Creator-Innovator:
Enjoys thinking up new ideas and new ways of doing things rather than
focusing on delivering outputs on a regular basis.
Explorer-Promoter:
Like to take ideas and promote them to others, not worrying too much
about any details involved.
Assessor-Developer:
Enjoy analyzing and developing different possibilities before decisions are
made
Thruster-Organizer:
Like to make things happen and get results rather than ‘waste’ too much
time debating issues
Concluder-Producer:
Practical people who like to carry through things to the end by working to
a plan
Controller-Inspector: Quieter, reflective people who enjoy the detailed side of work and like
dealing with facts and figures.
Upholder-Maintainer: Enjoy working in support of others ensuring that tasks are delivered to
high standards
L’approccio suggerito da TMS è prima mappare le preferenze di ognuno e poi assegnare attività e
responsabilità, fissando anche delle regole per garantire che non vengano trascurate del tutto le aree
meno preferite dai membri del team.
Diversità nel team Agile
Ogni ruolo vede il mondo da una prospettiva diversa e questo è ottimo per il problem solving e per
prendere decisioni. Un team bilanciato garantisce la produzione di più visioni dello stesso fenomeno, per
cui grazie alla diversità ci sarà la possibilità di valutare più alternative. Se tutti hanno lo stesso
profilo/tendenza si va incontro a definizioni piatte dello stesso tipo.
Se il team è troppo variegato possono sorgere dispute e critiche reciproche fra i membri del team.
E’ umano considerare negativamente coloro che sono “differenti” da noi. Però, tutti i ruoli sono
necessari per ottenere il massimo da un team, mentre le migliori soluzioni emergono con la diversità.
Inizialmente i team hanno difficoltà ad auto organizzarsi, perché possono sorgere conflitti che esplodono
in occasione di una notizia, facendo piombare il team nel caos e fallire il progetto.
Il modo tradizionale di prevenire questo rischio è sempre stato un forte controllo della leadership,
ma ciò contrasta con il valore dell’indipendenza ed il potenziamento che sono la forza del mondo Agile.
I membri del team reagiscono ai vincoli dell’organizzazione e non credono più di avere il controllo dei
risultati. Di conseguenza, i risultati saranno scarsa motivazione e poco coinvolgimento che portano, a loro
volta, all’apatia e a basse prestazioni.
Invece, una volta che il team ha imparato a comprendere il valore della “diversità”, può essere allentato il
controllo della leadership e avviata l’auto organizzazione.
Per arrivarci occorre la giusta dose di formazione fin dal primo giorno. I team con alte
prestazioni non nascono da soli, hanno bisogno di aiuto per arrivarci!
Connessione del team
Quali sono gli skill importanti di un team Agile? Tutti quelli che si applicano individualmente alle persone e
collettivamente al team. Per abbassare il livello di controllo della leadership e alzare il livello di autonomia
del team bisogna concentrarsi su sei competenze:
1.
2.
3.
4.
5.
6.
Active Listening,
Communication,
Team Relationships,
Problem-solving & Counseling,
Participative Management e
Interface Management.
Materiale utile per preparare la certificazione Agile PMI-ACP
Vito Madaio
pag. 4
Agile Project Management -
LC90.99B
Ci vuole tempo per creare queste competenze a partire dalla prima riunione di un team Agile.
Con l’approccio TMS, i membri del team ricevono un report con un feedback positivo sul modo in cui loro
preferiscono lavorare. Il report evidenzia anche come ogni persona gradisce comunicare con gli altri,
dando luogo alla prima discussione su come relazionarsi e come comunicare. Tutti comprendono che la
comunicazione è dinamica e che bisogna adattarsi a chi sta dall’altra parte.
In questo modo i membri del team vengono incoraggiati a rispondere a due domande:
 Quando parli con me è meglio che ….
 Le cose che mi annoiano di più quando gli altri comunicano con me sono …..
Conclusione
Il dilemma Leadership - Autogestione è dibattuto da anni dai ricercatori.
Per i team Agile la sfida è trovare un equilibrio tra alte prestazioni e controllo della leadership per
ottenere buone prestazioni. I team possono puntare all’’autogestione solo quando avranno ben compreso
il comportamento delle persone e perché si comportano così.
I team con alte prestazioni hanno imparato a:
 Riconoscere gli individui come agenti intelligenti e autonomi che interagiscono e collaborano per
comprendere e valutare le differenze di comportamento.
 Operare con semplici regole di base che li aiutino ad evitare il caos.
 Desiderare di imparare continuamente, adattandosi velocemente alle nuove situazioni.
 Implementare le competenze che integrano il resto del team, dove la guida e non il controllo
consenta di emergere e mostrare il proprio talento.
 Operare con informazioni aperte a tutti i membri del team e stakeholder del progetto tramite
prassi di Agile project management per condividere rapidamente nuovi scenari.
Per comprendere le preferenze ed il profilo di ognuno dei membri di un team Agile, conviene sentire tutti
i potenziali membri del team, soppesare preferenze, competenze e attitudini e cercare di impostare un
team bilanciato fin dal primo momento.
Se non sei ancora iscritto al corso per Preparare la Certificazione Agile PMI-ACP,
ecco il Modulo di Iscrizione
Materiale utile per preparare la certificazione Agile PMI-ACP
Vito Madaio
pag. 5