Ingegneria del software Modulo 2 -Il software come prodotto Unità didattica 2 - I costi del software Ernesto Damiani Università degli Studi di Milano Lezione 1 – Introduzione alla stima dei costi
Stima dei costi (1) La stima dei costi di sviluppo del software è necessaria Il 55% dei progetti supera il budget iniziale – 24 aziende svilupparono sistemi distribuiti di grandi dimensioni (1994) – Il 53% dei progetti costò il 189% in più rispetto alle stime iniziali – Dati Standish Group su 8380 progetti (1994)
Stima dei costi (2) Spesso i costi si misurano in termini di sforzo (cioè mesi/anni uomo) La stima è sempre approssimata – Molte variabili Ambienti di sviluppo diversi determineranno differenti parametri di costo – Costi di gestione – Costi di sviluppo Costi di formazione professionale Assicurazione della qualità – Risorse
Stima dei costi (3) La stima dei costi influenza molti aspetti Pianificazione e budget – Priorizzazione dei requisiti – Programma di lavoro – Allocazione delle risorse Gestione dei progetti – Personale – Task
Stima dei costi durante il ciclo di vita del software (1) La stima dei costi dovrebbe essere eseguita durante tutto il ciclo di vita del software Il successo di un metodo di stima dei costi non è dato necessariamente dalla precisione delle stime iniziali, ma piuttosto dalla velocità a cui le stime convergono al costo effettivo
Stima dei costi durante il ciclo di vita del software (2) Un controllo e un monitoraggio efficaci dei costi del software sono indispensabili per verificare e migliorare la precisione delle stime – La raccolta dei dati non dovrebbe essere invasiva – Arrivare comunque al livello di dettaglio appropriato
Chi esegue la stima? Il responsabile dell’implementazione – Di solito una persona esperta – Confronta il progetto corrente con i progetti precedenti dell’azienda Qualcuno al di fuori dell’azienda – Fornisce una stima imparziale – Tende ad usare metodi empirici di stima Difficoltà: »Mancanza di fiducia che un modello abbia più valore di un esperto »Mancanza di dati storici per calibrare il modello
Passi e commenti generali (1) Impostare le rilevazioni – Stabilire quali dati raccogliere – Specificare il motivo per cui si raccolgono quegli specifici dati – Indicare cosa si spera di eseguire Effettuare la stima dei costi relativamente i requisiti iniziali – Scomposizione Usare più metodi contemporaneamente – Non esiste una tecnica perfetta – Se si individuano delle discordanze nei metodi, è meglio rivalutare le informazioni usate per eseguire le stime
Passi e commenti generali (2) Ripetere le stime durante il ciclo di vita Eseguire i cambiamenti necessari allo sviluppo Fare una valutazione finale della stima dei costi alla conclusione del progetto FINE