Estimering av arbeids- og tids-forbruk: COCOMO - modellen In 140 Forelesning Nr 20 b Sommerville kap 23, 2. Del
COCOMO - Modellen Empirisk modell Godt dokumentert Vært i bruk lenge (fra ’81) COCOMO 2 er utvidet med Flere utviklingsprosesser Gjenbruk osv
COCOMO 81
COCOMO 2 nivåer COCOMO 2 er en trelags modell som gir anslag med økende detaljering ettersom utviklingsprosessen skrider fram Tidlig prototyping Estimerer på grunnlag av objektpoeng og en enkel formel for estimering av tidsforbruk Tidlig utforming Estimerer på grunnlag av funksjonspoeng som deretter oversettes til LOC Etter ferdig arkitektur Estimater på grunnlag av LOC
Tidlig prototyping Støtter prosjekter med prototyping og prosjekter med utstrakt gjenbruk Bygger på standardestimater for utviklernes produktivitet regnet i objektpoeng per måned Regner også med bruk av CASE Formelen er PM = ( NOP ´ (1 - %gjenbruk/100 ) ) / PROD PM er personmåneder, NOP er antall objektpoeng, PROD er produktiviteten
Produktivitet regnet i objektpoeng
Tidlig utforming Estimater kan beregnes etter at kravspesifikasjonen er spikret Bygger på standardformelen for algoritmiske modeller PM = A ´ StørrelseB ´ M + PMm hvor M = PERS ´ RCPX ´ RUSE ´ PDIF ´ PREX ´ FCIL ´ SCED PMm = (ASLOC ´ (AT/100)) / ATPROD A = 2.5 i første kalibrering, Størrelse i KLOC, B varierer fra 1,1 til 1,24 avhengig av innovasjonsgrad, fleksibilitet, risikostyrings-metode og prosessmodenhet.
Multiplikatorer Multiplikatorene viser kompetansen til utviklingsteamet, ikke funksjonelle krav, kjennskap til utviklingsplatform osv. RCPX – Produktpålitelighet og kompleksitet RUSE – Gjenbruksmål PDIF – Plattformens vanskelighetsgrad PREX – Personellets erfaring PERS – Personellets dyktighet SCED – Mål for utviklingstid FCIL – Teamets tilgang til støttefunksjoner PM – Andel automatisk generert kode
Etter fullført arkitektur Samme formel som tidlig utforming PM = A ´ StørrelseB ´ M + PMm Estimatet justeres for: Spesifikasjonsustabilitet Gjenbruk. Ikke lineær. LOC reduksjon ikke proporsjonal ESLOC = ASLOC ´ (AA + SU +0.4DM + 0.3CM +0.3IM)/100 ESLOC Equivalent new sloc ASLOC Gjenbrukbare kodelinjer DM er prosent endring i utforming. CM er prosent endring av kode. IM er ny integrasjon i prosent av opprinnelig integrasjon SU er en forståelsesfaktor (50 – 10) AA er vurderingskostnad (0-8)
Eksponenten B Avhenger av fem faktorer (Svært lav 5 til Ekstra høy 0). B=1,01 + faktorsum/100 Eksempler Precedentenes – nytt prosjekt 4 Utviklingsfleksibilitet – ingen kundemedvirkning – Svært høy 1 Arkitektur/risikoanalyse – Ingen risikoanalyse . svært lav – 5 Teamsamarbeid – nytt team – nominelt – 3 Prosessmodenhet – noe styring – nominell 3 Skalafaktoren er derfor 1,17
Multiplikatorer Produktegenskaper Datamaskinegenskaper Personellegenskaper Prosjektegenskaper
Project cost drivers (Multiplikatorer)
Virkning av kostnadsdrivere
Prosjektvarighet Nominell varighet: TDEV=3xPM(0,33+0,2*(B-1,01)) NB! Antall medarbeidere er ikke med i formelen Kan akselereres, men risikabelt.