Slide 1

Slide 1 text

PERCHÉ A FARE I PREVENTIVI FACCIAMO COSÌ SCHIFO? CRISTIANO RASTELLI

Slide 2

Slide 2 text

Table of contents Flying to the moon Una piccola storia Il nervo scoperto Coders are special My experience Let’s play “quote” Costi nascosti Side-effects Alcuni riferimenti Conclusioni

Slide 3

Slide 3 text

CAVEAT

Slide 4

Slide 4 text

Le dimensioni contano

Slide 5

Slide 5 text

Ci sono altri mondi, là fuori!

Slide 6

Slide 6 text

FLYING TO THE MOON

Slide 7

Slide 7 text

Flying to the moon I progetti “Mercury” e “Gemini”, a cui si riferiscono queste immagini, sono state due serie di missioni spaziali, condotte dalla NASA con lo scopo di acquisire il know-how e le competenze necessarie per portare, in poco meno di dieci anni, il primo uomo sulla Luna. Hanno ottenuto risultati mai raggiunti prima d’allora: primo equipaggio in orbita attorno alla terra prima “camminata” di un astronauta nello spazio primo rendez-vous e attracco fra due veicoli spaziali

Slide 8

Slide 8 text

Flying to the moon “I believe that this nation should commit itself to achieving the goal, before this decade is out, of landing a man on the moon and returning him safely to the earth” President John F. Kennedy 25 maggio 1961

Slide 9

Slide 9 text

Flying to the moon E’ stato il maggior sforzo economico, tecnologico e scientifico mai sostenuto dagli USA, assieme al Progetto Manhattan e alla costruzione dello stretto di Panama.

Slide 10

Slide 10 text

Flying to the moon E’ stato il maggior sforzo economico, tecnologico e scientifico mai sostenuto dagli USA, assieme al Progetto Manhattan e alla costruzione dello stretto di Panama. Stima iniziale Stima J. Webb Stima finale Costo finale 0 5 10 15 20 25 30 Costo del Programma Apollo (miliardi di dollari)

Slide 11

Slide 11 text

Flying to the moon E’ stato il maggior sforzo economico, tecnologico e scientifico mai sostenuto dagli USA, assieme al Progetto Manhattan e alla costruzione dello stretto di Panama. Stima iniziale Stima J. Webb Stima finale Costo finale 0 5 10 15 20 25 30 Costo del Programma Apollo (miliardi di dollari)

Slide 12

Slide 12 text

Flying to the moon E’ stato il maggior sforzo economico, tecnologico e scientifico mai sostenuto dagli USA, assieme al Progetto Manhattan e alla costruzione dello stretto di Panama. Stima iniziale Stima J. Webb Stima finale Costo finale 0 5 10 15 20 25 30 Costo del Programma Apollo (miliardi di dollari)

Slide 13

Slide 13 text

Flying to the moon E’ stato il maggior sforzo economico, tecnologico e scientifico mai sostenuto dagli USA, assieme al Progetto Manhattan e alla costruzione dello stretto di Panama. Stima iniziale Stima J. Webb Stima finale Costo finale 0 5 10 15 20 25 30 Costo del Programma Apollo (miliardi di dollari)

Slide 14

Slide 14 text

Flying to the moon E’ stato il maggior sforzo economico, tecnologico e scientifico mai sostenuto dagli USA, assieme al Progetto Manhattan e alla costruzione dello stretto di Panama. Stima iniziale Stima J. Webb Stima finale Costo finale 0 5 10 15 20 25 30 Costo del Programma Apollo (miliardi di dollari)

Slide 15

Slide 15 text

Preventivare non si può “andare corti” budget stanziati dal committente Prevedere * Occorre sapere valutare e analizzare: ogni minimo dettaglio (dalla vite allo stadio propulsivo) ogni possibile/probabile futura necessità tutti i possibili casi, non solo il “best-case scenario”. * Non significa essere degli indovini o fare oracoli sul futuro...

Slide 16

Slide 16 text

Flying to the moon Buzz Aldrin 20 luglio 1969

Slide 17

Slide 17 text

UNA PICCOLA STORIA

Slide 18

Slide 18 text

Cirpo

Slide 19

Slide 19 text

“Ma sì, ma quanto vuoi metterci a...” Cirpo

Slide 20

Slide 20 text

Una piccola storia / 1 Una sera, mentre stavamo facendo una conference-call via Skype per l’organizzazione della Node.js Conference, si stava parlando di totem da piazzare agli ingressi della sala. Io sostenevo che meno cose c’erano da fare, meglio era (c’erano altre mille cose da fare, ricordare, organizzare). A un certo punto Cirpo se ne è uscito con questa frase: “Ma sì, ma quanto vuoi metterci? Tanto le fa Riccardo”. E qui mi si è accesa una lampadina: stava completamente tralasciando tutti gli aspetti collaterali dell’attività che non fossero la semplice, mera esecuzione materiale.

Slide 21

Slide 21 text

Una piccola storia / 2 E mi sono fatto questa domanda: ma perché i DEV in particolare – ma gli esseri umani in generale – sono così pessimi a fare stime e preventivi? Forse, ho pensato, c’è un motivo antropologico, qualcosa che condiziona il nostro cervello e lo induce a sottovalutare sistematicamente gli sforzi (gli “effort”) per permettere agli uomini di osare di più, di fare cose che normalmente non farebbero e “selezionare la specie” più intraprendente? In ogni caso, mi sono proposto che avrei tenuto un talk su questo tema, in cui fare “pelo e contropelo” ai DEV. Perciò, eccomi qui!

Slide 22

Slide 22 text

IL NERVO SCOPERTO

Slide 23

Slide 23 text

Il nervo scoperto Questa sessione, quando è stata proposta la prima volta alla UGIALT.net Conference, è stata in assoluto la più votata dagli utenti, fra quelle in lizza per l’ammissione. Vi faccio notare che questo non è un talk tecnico, come gli altri. Cosa vuol dire secondo voi? Evidentemente è un’esigenza, un problema, una necessità, c’è un “sentire comune” che in fondo non siamo poi tanto bravi a fare preventivi*. Insomma avevo toccato il classico “nervo scoperto” (e francamente, non immaginavo fosse così scoperto!). * Non credo di essermi sbagliato poi molto nel dare il titolo a questo talk, no?

Slide 24

Slide 24 text

CODERS ARE SPECIAL

Slide 25

Slide 25 text

You’re not that special, devs!

Slide 26

Slide 26 text

Coders are not special! Da che mondo e mondo pittori, artisti, artigiani, architetti, ingegneri, costruttori, tutti quanti hanno dovuto produrre progetti e stime di costo ex-ante. Tutti coloro che devono “creare” qualcosa che prima non esisteva, che disegnano e progettano soluzioni su misura, che producono e realizzano prodotti “non standardizzati”. In molti casi (la buona parte?) hanno sbagliato stima. Noi non facciamo eccezione. Il punto qui però è: come fare un preventivo che abbia il minor margine di errore possibile?

Slide 27

Slide 27 text

Gli strumenti giusti

Slide 28

Slide 28 text

Nessuno ti può insegnare La verità è che fare preventivi è come educare i figli: puoi trovare manuali ovunque, puoi chiedere consigli a chiunque ma alla fine qualunque “metodo” deciderai di adottare ti sembrerà comunque imperfetto, troppo “astratto”, che non tiene conto del tuo caso particolare/speciale. Perché, come per i figli, fare un preventivo ti tocca da vicino, ha a che fare con il tuo “vissuto quotidiano”. Con le tue esperienze pregresse. Con il tuo senso di auto-stima. Con l’amore per il tuo lavoro. Con il tuo conto in banca.

Slide 29

Slide 29 text

MY EXPERIENCE

Slide 30

Slide 30 text

My experience Quindi non son qui per darvi nessun tipo di “lezione”. Tantomeno per esporvi teorie su come elaborare il preventivo perfetto e infallibile. Sono qui per raccontarvi la mia esperienza.

Slide 31

Slide 31 text

3... 2... 1... Via!

Slide 32

Slide 32 text

[ slide mancanti ]

Slide 33

Slide 33 text

Cosa ho imparato

Slide 34

Slide 34 text

Cosa ho imparato Separare mentalmente (e fisicamente) il ragionamento fra le attività da realizzare (quindi il progetto) e il tempo che occorre a realizzarle (quindi il preventivo) In questo modo si perde meno di vista l’obiettivo del preventivo, che è quello di fornire una stima/valutazione economica al proprio cliente dei costi di ideazione/progettazione/realizzazione di una determinata attività. Ragionare in termini di giorno-uomo ideale (di 8 ore)* (poi magari ce ne impieghi 12, ma quello è comunque il tuo parametro di riferimento temporale, la tua “unità di misura” di base) Tenere sempre a bada la vocina che è in noi. Quella che ormai riconosciamo, quella che ci fa dire “ma sì, ma cosa vuoi metterci a” oppure “non sarà caro? e se poi per il cliente è troppo?” e alla fine ci porta a sottostimare gli effort di un progetto, specie se complesso.

Slide 35

Slide 35 text

Cosa ho imparato Il cliente guarda la cifra in basso a destra. Non c’è nulla da fare, è un dato di fatto oggettivo. Come il sole che sorge e tramonta. Occorre farsene una ragione e agire di conseguenza. Decidere (a seconda del cliente) cosa mostrare e cosa invece omettere (o non specificare affatto) Ad esempio la suddivisione del progetto in sotto-attività oppure il numero di giornate previste per ogni singola voce e/o il costo a giornata. Ci sono tipi diversi di clienti. A noi il compito di capire chi è l’interlocutore che abbiamo di fronte, cosa ci sta chiedendo, che tipo di risposta dare, in che forma comunicargli la nostra proposta progettuale/economica. A noi il compito di decidere se e quanto del nostro tempo dedicare (ovvero investire) nella redazione del preventivo.

Slide 36

Slide 36 text

LET’S PLAY “QUOTE”

Slide 37

Slide 37 text

Let’s play “quote”

Slide 38

Slide 38 text

Let’s play “quote” Decidere assieme allo staff se fare le magliette per la conferenza • Fare email allo staff + polling/doodle Chiedere se qualcuno ha conoscenza/esperienza di stampatori di t-shirt Chiedere preventivo a 2 o 3 diversi stampatori di magliette • Fare email in cui si spiega cosa serve, come saranno le magliette, ecc. Confrontare fra loro i tre preventivi ricevuti • Cercare su internet il prezzo medio di una maglietta, per confronto • Decidere assieme agli altri membri dello staff quale scegliere Preparare le bozze grafiche delle magliette (con diverse soluzioni) • Cercare su internet i colori disponibili per le magliette • Scegliere il colore e ideare la grafica da far stampare sulle magliette • Realizzare i file grafici (vettoriali e/o bitmap alta risoluzione)

Slide 39

Slide 39 text

Let’s play “quote” Decidere la grafica finale delle magliette • Sottoporre via email le soluzioni ideate/create ai membri dello staff • Leggere risposte/commenti e rispondere a propria volta • Modificare la bozza sulla base delle indicazioni ricevute • Scegliere soluzione definitiva assieme allo staff (con polling/doodle) Raccogliere le prenotazioni per le magliette • Creare form online con Google Docs • Creare pagina web per embedding e raccolta dati “clienti” Decidere quante magliette far stampare • Estrarre da foglio di calcolo i numeri aggregati per sesso, taglia, colore • Calcolare numero magliette aggiuntive da vendere il giorno della conf Ordinare le magliette allo stampatore • Mandare numeri e grafica finale allo stampatore per quotazione finale

Slide 40

Slide 40 text

Let’s play “quote” Preparare i file grafici definitivi per lo stampatore (in diversi formati) • Inviare email allo stampatore con i dettagli tecnici dei file allegati Passare dallo stampatore per accordarsi, firmare l’ordine e dare l’acconto • Passare da chi ha la cassa per prendere i soldi da dare allo stampatore Chiamare stampatore per avere conferma della data di consegna Chiamare stampatore per accordarsi sul ritiro delle magliette Passare a ritirare le magliette dallo stampatore • Verificare la stampa delle magliette, pagare e caricare gli scatoloni Consegnare le magliette a chi le “venderà” il giorno della conferenza • Preparare foglio excel con la lista delle prenotazioni effettuate • Portare scatoloni a casa degli incaricati, per permettergli di suddividere le magliette per tipo, colore, taglia, ecc.

Slide 41

Slide 41 text

COSTI NASCOSTI

Slide 42

Slide 42 text

Costi nascosti Incontri preliminari Presentazione, raccolta dei requisiti, redazione del preventivo, illustrazione dell’offerta, trattative per definizione budget finale. Attività kickoff Pianificazione delle attività, boostrap del progetto, attribuzione dei task. Riunioni in corso d’opera Incontri per richieste di modifiche, attività integrative, raccolta feedback, avanzamento lavori, consegna del prodotto, eventuale formazione. Gestione del progetto Mantenimento delle relazioni con il cliente ed eventuali suoi fornitori di servizi, coordinamento delle attività dei propri collaboratori, redazione documenti di progetto, lettura/scrittura delle email.

Slide 43

Slide 43 text

Costi nascosti Attività non previste Richieste e/o modifiche e/o integrazioni in corso d’opera. Variazione degli obiettivi di progetto al mutare degli interlocutori. Attività sottovalutate “Beh, ma quanto vuoi metterci a...”. Tempi di acquisizione di nuove competenze. Curve di apprendimento più lunghe del previsto. Attività collaterali/a conclusione del progetto Registrazione nei motori di ricerca, attivazione statistiche, creazione di account e configurazione profili su social network e servizi online. Varie ed eventuali Tempi di trasferta, anticipi economici (acquisto servizi/prodotti per conto del cliente, iva, tasse, ecc.), solleciti dei pagamenti, recupero crediti.

Slide 44

Slide 44 text

SIDE-EFFECTS

Slide 45

Slide 45 text

Side-effects

Slide 46

Slide 46 text

Side-effects Ritardo nella consegna

Slide 47

Slide 47 text

Side-effects Ritardo nella consegna • (e nell’avvio dei progetti successivi)

Slide 48

Slide 48 text

Side-effects Ritardo nella consegna • (e nell’avvio dei progetti successivi) Credibilità personale

Slide 49

Slide 49 text

Side-effects Ritardo nella consegna • (e nell’avvio dei progetti successivi) Credibilità personale Professionalità dimostrata

Slide 50

Slide 50 text

Side-effects Ritardo nella consegna • (e nell’avvio dei progetti successivi) Credibilità personale Professionalità dimostrata Remuneratività del lavoro

Slide 51

Slide 51 text

Side-effects Ritardo nella consegna • (e nell’avvio dei progetti successivi) Credibilità personale Professionalità dimostrata Remuneratività del lavoro Qualità complessiva

Slide 52

Slide 52 text

L’effetto più importante Sbagliare l’effort di un preventivo ha impatto diretto sulla qualità del lavoro ultimato.

Slide 53

Slide 53 text

ALCUNI RIFERIMENTI

Slide 54

Slide 54 text

“bias cognitivo”

Slide 55

Slide 55 text

Planning fallacy “Tendenza delle persone/organizzazioni a sotto-stimare il tempo che impiegano ad eseguire un determinato task, anche se hanno già avuto esperienze pregresse di ritardo per task simili”. (fonte: wikipedia, as usual)

Slide 56

Slide 56 text

Un effetto di “blind spot” Sottostima di tempo, costi e rischi Sovrastima dei benefici

Slide 57

Slide 57 text

Possibili spiegazioni Wishful-thinking Focus sul best-case scenario: * * “Massì, ma quanto vuoi metterci a...” No-Breakdown Mancanza di analisi puntuale: 1 2

Slide 58

Slide 58 text

E’una questione di dettagli http://www.quora.com/Engineering-Management/Why-are-software- development-task-estimations-regularly-off-by-a-factor-of-2-3

Slide 59

Slide 59 text

E’una questione di dettagli http://www.quora.com/Engineering-Management/Why-are-software- development-task-estimations-regularly-off-by-a-factor-of-2-3

Slide 60

Slide 60 text

E’una questione di dettagli http://www.quora.com/Engineering-Management/Why-are-software- development-task-estimations-regularly-off-by-a-factor-of-2-3

Slide 61

Slide 61 text

“breakdown”

Slide 62

Slide 62 text

E’ una metodologia di project-management, introdotta dalla difesa americana e poi adottata e sviluppata proprio dalla NASA per la gestione dei progetti Mercury e Gemini: Work Breakdown Structure

Slide 63

Slide 63 text

E’ una metodologia di project-management, introdotta dalla difesa americana e poi adottata e sviluppata proprio dalla NASA per la gestione dei progetti Mercury e Gemini: Work Breakdown Structure prodotto (“deliverable”), non attività cosa, non come o in quanto!

Slide 64

Slide 64 text

E’ una metodologia di project-management, introdotta dalla difesa americana e poi adottata e sviluppata proprio dalla NASA per la gestione dei progetti Mercury e Gemini: Work Breakdown Structure prodotto (“deliverable”), non attività cosa, non come o in quanto! decomposizione del problema albero gerarchico

Slide 65

Slide 65 text

E’ una metodologia di project-management, introdotta dalla difesa americana e poi adottata e sviluppata proprio dalla NASA per la gestione dei progetti Mercury e Gemini: Work Breakdown Structure prodotto (“deliverable”), non attività cosa, non come o in quanto! decomposizione del problema albero gerarchico singoli elementi discreti migliore stima di tempi e costi

Slide 66

Slide 66 text

E’ una metodologia di project-management, introdotta dalla difesa americana e poi adottata e sviluppata proprio dalla NASA per la gestione dei progetti Mercury e Gemini: Work Breakdown Structure prodotto (“deliverable”), non attività cosa, non come o in quanto! decomposizione del problema albero gerarchico singoli elementi discreti migliore stima di tempi e costi misurabilità

Slide 67

Slide 67 text

Work Breakdown Structure

Slide 68

Slide 68 text

“cost overrun”

Slide 69

Slide 69 text

Non siamo soli... Sydney Opera House Canale di Suez Concorde Canale sotto la Manica Eurofighter Denver International Airport Millennium Dome Telescopio Hubble and more...

Slide 70

Slide 70 text

CONCLUSIONI

Slide 71

Slide 71 text

Consigli 1. Prevedere. Non solo preventivare. 2. Numeri. Non solo funzionalità. 3. Non sottovalutate gli effort. 4. Non mettetevi nei panni del cliente, ma nei vostri! 5. E’ un processo “trial & error”, rassegnatevi. 6. Non perdete mai di vista la qualità finale del prodotto. 7. Piuttosto meno cose, se dovete stare in un budget.

Slide 72

Slide 72 text

CrSIo RaTl @areaweb Grazie! www.didoo.net

Slide 73

Slide 73 text

Credits http://www.nasa.gov/ http://tothemoon.ser.asu.edu