15.02.2018

L'arte del Portfolio Management in tempo reale

15.02.2018

L'arte del Portfolio Management in tempo reale

Molti team e molte organizzazioni che si occupano di sviluppare servizi o prodotti software dedicano, giustamente, le loro energie a migliorare la gestione all'interno dei progetti, ma per migliorare effettivamente e complessivamente i risultati di un'intera organizzazione non possiamo ignorare che spesso ci sono diversi progetti che devono essere portati avanti contemporaneamente e tutti ovviamente importanti e urgenti.
È qui che entra in gioco il Portfolio Management.

A system of local optima is not an optimal system at all; it is a very suboptimal system.

Eli Goldratt

Quando abbiamo bisogno di gestire (meglio) il nostro portfolio progetti?

Quando ad esempio ci troviamo ad affrontare sempre progetti in stato di emergenza, o addirittura capita che il progetto inizi già in stato di emergenza.
Quindi tutto è urgente e la priorità viene data da chi grida più forte.

Un altro segnale da non sottovalutare è il multitasking. Abbiamo troppi progetti tutti importanti e tutti da portare avanti contemporaneamente e ci ritroviamo a spostare persone da un team all'alltro con la sensazione di avere una coperta sempre troppo corta.

Ed infine il segnale più importante di tutti: la mancanza di visibilità sulle informazioni, ci manca sempre qualche informazione per avere il quadro generale e ci ritroviamo sempre a farci le stesse domande:

  • Quando finirà quel progetto? Quanto resta ancora da lavorare? Quando possiamo fatturare?
  • Il nuovo progetto quando potrà partire? Quando possiamo metterlo in lavorazione?
  • Ci sono troppe cose da fare, qual è la più importante? Da dove cominciamo? Posso fermare il progetto A per lavorare sul progetto B?
  • Perché abbiamo deciso di lavorare su questo progetto? Non sembra in linea con la nostra strategia!
  • Abbiamo una strategia?

Quando ci mancano le informazioni per decidere cosa fare è come se fossimo in mezzo alla nebbia, in queste situazioni ci troviamo spesso a prendere decisioni guidate dalla paura e quello che faremo sarà fare di tutto perché alla fine non si dica che è stata colpa nostra. E questo vale per tutti, sviluppatori da una parte e manager dall'altra.

Che cos'è il Project Portfolio?

In a sense, the portfolio is a Big Visible Chart, which helps a project team see their relevant information all in one place.

Johanna Rothman (Manage Your Project Portfolio)

Secondo Johanna Rothman possiamo definire il portfolio come un grande schema ben visibile che aiuta i team a vedere tutte le informazioni importanti in un unico posto.
Significa avere qualcosa che ci aiuti ad essere consapevoli di quello che sta succedendo.

Mostra a tutti su cosa l'organizzazione sta lavorando ma rende ben visibile anche su cosa non sta lavorando.

Rende chiaro e visibile il ranking dei progetti. E cosa è più importante per la nostra organizzazione e perché.

Ci aiuta a rendere trasparenti le decisioni prese. 

Di conseguenza non può essere un documento statico perché inevitabilmente dovrà cambiare per rappresentare la realtà, e non è un insieme di formule.

A me piace definirlo come qualcosa che ci aiuta a rispondere alla domanda: "qual è la cosa migliore che posso fare per la mia organizzazione?"

 

Che significa "gestire" questo Portfolio?

Significa creare le giuste condizioni per iniziare e concludere progetti, che generano valore abbastanza frequentemente da soddisfare i bisogni dei nostri clienti.

Non stiamo parlando solo di spostare persone da un team all'altro, stiamo parlando di prendere decisioni strategiche.
Decisioni che riguardano la vita dei progetti e che hanno un impatto significativo sul business dell'organizzazione.

Significa prendere decisioni su quali progetti è opportuno mantenere, dedicandogli il giusto impegno e le necessarie energie da parte dell'organizzazione, e quali progetti invece vanno fermati o abbandonati.
Oppure quali vanno trasformati, nel modo di affrontarli, aumentando o diminuendo le energie dedicate. Ma anche decidere di far una cosa diversa da come inizialmente previsto.

Per prendere queste decisioni serve una visione generale del business della nostra organizzazione.
Servono informazioni di dettaglio sullo stato di salute dei progetti, ma allo stesso tempo servono informazioni generali sulla strategia di business. E questo ampio spettro di informazioni non può risiedere in una sola persona o in poche persone.

 

Che significa quindi gestire il proprio portfolio in tempo reale?

Software development is a learning process, working code is a side effect.

Alberto Brandolini (The final words about software estimation)

Oramai sappiamo che lo sviluppo di un progetto software è un processo di apprendimento.
Con l'evolversi di un progetto scopriamo/impariamo raccogliendo feedback che cambiano le condizioni iniziali.
Il Manifesto per lo sviluppo Agile ci invita ad abbracciare il cambiamento e ci dà le pratiche e le modalità per farlo all'interno dei progetti.
Ma il cambiamento all'interno dei progetti, che può avvenire anche nell'arco di pochi giorni, ha inevitabilmente un impatto sugli altri progetti (un progetto rallenta, si ferma o richiede un effort maggiore).
Quindi quello che era giusto ieri potrebbe non essere più una buona idea oggi.
Abbiamo bisogno che ognuno sappia in ogni momento qual è la cosa giusta da fare per l'organizzazione, questo ci permette di dare risposte in tempo reale.

Spesso ad impedirci di organizzarci e lavorare in questo modo è quello che viene definito "air sandwich". 

An Air Sandwich is, in effect, a strategy that has a clear vision and future direction on the top layer, day-to-day action on the bottom, and virtually nothing in the middle–no meaty key decisions that connect the two layers, no rich chewy center filling to align the new direction with the new actions within the company.

Nilofer Merchant (The New How)

La distanza tra chi fa la strategia e chi svolge il lavoro di tutti i giorni è fatta dall'assenza di feedback, dibattiti, compromessi e conversazioni sane. È la mancanza di tutte quelle informazioni che dovrebbero "arricchire" la decisione per renderla chiara, trasparente e comprensibile.
Non a caso il Manifesto per lo sviluppo Agile suggerisce che in un progetto software committenti e sviluppatori devono lavorare insieme su base quotidiana, il ragionamento è applicabile anche ai manager e agli operativi che dovrebbero scambiarsi informazioni (e conversazioni) costantemente.

Questo perché il minimo che possiamo fare per abilitare tutti a prendere decisioni giuste è rendere chiare, trasparenti e accessibili le informazioni utili a prendere le decisioni.