Ingegneria del software Modulo 2 -Il software come prodotto Unità didattica 2 -I costi del software Ernesto Damiani Università degli Studi di Milano Lezione 9 – Approfondimenti sui modelli COCOMO (2)
Il modello Post-Architecture Usa la stessa formula del modello Early Design ma ha 17 moltiplicatori associati invece di 7 Le dimensioni del codice vengono stimate come: – numero di linee di nuovo codice da sviluppare – stima del numero equivalente di linee del nuovo codice calcolato usando il modello di riuso – una stima del numero di linee del codice che devono essere modificate secondo i cambiamenti dei requisiti
L’esponente Dipende da 5 fattori di scala; la loro somma/100 viene aggiunta a 1,01 – Precedenti – progetto nuovo (4) – Flessibilità dello sviluppo - nessun coinvolgimento dei clienti – Molto alto (1) – Risoluzione di rischi/architettura – nessuna analisi dei rischi – Molto basso (5) – Coesione del team – nuovo team – nominale (3) – Maturità del processo - un certo controllo – nominale (3) Il fattore di scala quindi è 1,17
Fattori di scala (1) Precedenti – Riflette l’esperienza precedente dell’organizzazione con questo tipo di progetto. “Molto basso” significa nessuna esperienza precedente, “Extra alto” significa che l’organizzazione ha la massima familiarità con questo dominio applicativo Flessibilità dello sviluppo – Riflette il grado di flessibilità nel processo di sviluppo. “Molto basso” significa che viene usato un processo imposto, “Extra alto” significa che il cliente stabilisce solo obiettivi generali Risoluzione di rischi/architettura – Riflette le dimensioni dell’analisi dei rischi eseguita. “Molto basso” significa un’analisi minima, “Extra alto” significa un’analisi completa
Fattori di scala (2) Coesione del team – Riflette l’intensità con cui si conoscono i membri del team e come lavorano insieme. “Molto basso” significa interazioni molto difficili, “Extra alto” significa un team efficace ed integrato senza problemi di comunicazione. Maturità del processo – Riflette la maturità del processo dell’organizzazione. Il calcolo di questo valore può ad esempio essere eseguito tramite Questionario della Maturità di CMM
Moltiplicatori Attributi del prodotto – Le caratteristiche richieste del prodotto software in fase di sviluppo Attributi dell’hardware – Vincoli imposti sul software dalla piattaforma hardware Attributi del personale – Tengono conto dell’esperienza e delle capacità delle persone che lavorano al progetto Attributi del progetto – Caratteristiche particolari del progetto di sviluppo software
Effetti dei cost driver FINE