Lezione 9 – Approfondimenti sui modelli COCOMO (2) Ingegneria del software Modulo 2 - Il software come prodotto Unità didattica 2 - I costi del software Ernesto Damiani Università degli Studi di Milano 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