You are on page 1of 6

CostEstimationModels

Mostoftheworkinthecostestimationfieldhasfocuedonalgorithmiccostmodelling.Inthisprocesscostsareanalysedusing
mathematicalformulaslinkingcostsorinputswithmetricstoproduceanestimatedoutput.Theformulaeusedinaformalmodelarise
fromtheanalysisofhistoricaldata.Theaccuracyofthemodelcanbeimprovedbycalibratingthemodeltoyourspecificdevelopment
environment,whichbasicallyinvolvesadjustingtheweightingsofthemetrics.
Generallythereisagreatinconsistencyofestimates.Kemerer[Kemerer93]conductedastudyindicatingthatestimatesvariedfromas
muchas85610%betweenpredicatedandactualvalues.Calibrationofthemodelcanimprovethesefigures,However,modelsstill
produceerrorsof50100%.
SLIM(SoftwareLifeCycleManagement)
Putnam's[Putnam78]SLIMisoneofthefirstalgorithmiccostmodel.ItisbasedontheNorden/Rayleighfunctionandgeneralyknown
asamacroestimationmodel(Itisforlargeprojects).SLIMenablesasoftwarecostestimatortoperformthefollowingfunctions:
CalibrationFinetuningthemodeltorepresentthelocalsoftwaredevelopmentenvironmentbyinterpretingahistoricaldatabaseof
pastprojects.
Buildaninformationmodelofthesoftwaresystem,collectingsoftwarecharacteristics,personalattributes,computerattributesetc.
SoftwaresizingSLIMusesanautomatedversionofthelinesofcode(LOC)costingtechnique.
Thealgorithmusedis:
K=(LOC/(C*t4/3))*3
Kisthetotallifecycleeffortinworkingyears,tisdevelopmentandtheCisthetechnologyconstant,combiningtheeffectofusingtools,
languages,methodologyandqualityassurance(QA).timeinyears.
Thevalueoftechnologyconstantvariesfrom610to57314.Foreasy,xperiencedprojectstechnologyconstantishigh.
SLIMisnotwidespreadlyusedbutthereisaSLIMtool.
AdvantagesofSLIM
i.Useslinearprogrammingtoconsiderdevelopmentconstraintsonbothcostandeffort.
ii.SLIMhasfewerparametersneededtogenerateanestimateoverCOCOMO'81andCOCOMO'II
DrawbacksofSLIM
i.Estimatesareextremelysensitivetothetechnologyfactor
ii.Notsuitableforsmallprojects

COCOMO'81(ConstructiveCostModel)
Boehm's[Boehm81]COCOMOmodelisoneofthemostlyusedmodelcommercially.Thefirstversionofthemodeldeliveredin1981
andCOCOMOIIisavailablenow.
COCOMO'81isderivedfromtheanalysisof63softwareprojectsin1981.Boehmproposedthreelevelsofthemodel:Basic,
intermediate,detailed.
ThebasicCOCOMO'81modelisasinglevalued,staticmodelthatcomputessoftwaredevelopmenteffort(andcost)asa
functionofprogramsizeexpressedinestimatedlinesofcode(LOC).
TheintermediateCOCOMO'81modelcomputessoftwaredevelopmenteffortasafunctionofprogramsizeandasetof"cost
drivers"thatincludesubjectiveassessmentsofproduct,hardware,personnel,andprojectattributes.
ThedetailedCOCOMO'81modelincorporatesallcharacteristicsoftheintermediateversionwithanassessmentofthecost
driversimpactoneachstep(analysis,design,etc.)ofthesoftwareengineeringprocess.
COCOMO'81modelsdependsonthetwomainequations:
Firstisdevelopmenteffort(basedonMMmanmonth/Personmonth/staffmonthisonemonthofeffortbyoneperson.In
COCOMO'81,thereare152hoursperPersonMonth.Accordingtoorganizationthisvaluesmaydifferfromthestandardby10%to20%.
)forthebasicmodel:
MM=aKDSIb

Secondiseffortanddevelopmenttime(TDEV)
TDEV=cMMd

KDSImeansthenumberofthousanddeliveredsourceinstructionsanditisameasureofsize
Thecoefficentsa,b,canddaredepentonthemodeofthedevelopment.Therearethreemodesofdevelopment:
DevelopmentMode
Organic
Semidetached
Embedded

ProjectCharacteristics
Size
Small
Medium

Innovation
Little
Medium

Large

Greater

Deadline/constraints Dev.Environment
Nottight
Stable
Medium
Medium
Tight

Complex
hardware/customer
interfaces

Hereisthecoefficentsrelatedtodevelopmentmodesforintermadiatemodel:
DevelopmentMode
a
b
c

Organic
Semidetached

3.2
3.0

1.05
1.12

2.5
2.5

0.38
0.35

Embedded

2.8

1.20

2.5

0.32

Basicmodeusesonlysizeinestimation.Intermadiatemodealsouses15costdriversaswellassize.
Inintermediatemodedevelopmenteffortequationbecomes:
MM=aKDSIbC

C(effortadjustmentfactor)iscalculatedsimplymultiplyingthevaluesofcostdrivers.Sotheintermediatemodelismoreaccuratethan
thebasicmodel.
ThestepsinproducinganestimateusingtheintermediatemodelCOCOMO'81are:
1.Identifythemode(organic,semidetacted,embedded)ofdevelopmentforthenewproduct.
2.EstimatethesizeoftheprojectinKDSItoderiveanominaleffortprediction.
3.Adjust15costdriverstoreflectyourproject.
4.Calculatethepredictedprojecteffortusingfirstequationandtheeffortadjustmentfactor(C)
5.Calculatetheprojectdurationusingsecondequation.
ExampleestimateusingtheintermediateCOCOMO'81
Modeisorganic
Size=200KDSI
Costdrivers:
Lowreliability=>.88
Highproductcomplexity=>1.15
Lowapplicationexperience=>1.13
Highprogramminglanguageexperience=>.95
Othercostdriversassumedtobenominal=>1.00
C=.88*1.15*1.13*.95=1.086
Effort=3.2*(2001.05)*1.086=906MM
Developmenttime=2.5*9060.38

AdvantagesofCOCOMO'81

i.COCOMOistransparent,youcanseehowitworksunlikeothermodelssuchasSLIM.
ii.Driversareparticularlyhelpfultotheestimatortounderstandtheimpactofdifferentfactorsthataffectprojectcosts.
DrawbacksofCOCOMO'81
i.ItishardtoaccuratelyestimateKDSIearlyonintheproject,whenmosteffortestimatesarerequired.
ii.KDSI,actually,isnotasizemeasureitisalengthmeasure.
iii.Extremelyvulnerabletomisclassificationofthedevelopmentmode
iv.Successdependslargelyontuningthemodeltotheneedsoftheorganization,usinghistoricaldatawhichisnotalwaysavailable
COCOMO'II(ConstructiveCostModel)
ResearchsonCOCOMOIIisstartedinlate90sbecauseCOCOMO'81isnotenoughtoapplytonewersoftwaredevelopmentpractices.
YoucanfindlatestinformationaboutCOCOMO'IIfromCOCOMOIIHomePage
COCOMO'IIdiffersfromCOCOMO'81withsuchdifferences:
COCOMO'81requiressoftwaresizeinKSLOCasaninput,butCOCOMO'IIprovidesdifferenteffortestimatingmodelsbasedon
thestageofdevelopmentoftheproject.
COCOMO'81providespointestimatesofeffortandschedule,butCOCOMO'IIprovideslikelyrangesofestimatesthatrepresent
onestandarddeviationaroundthemostlikelyestimate.
COCOMO'IIadjustsforsoftwarereuseandreengineeringwhereautomatedtoolsareusedfortranslationofexistingsoftware,but
COCOMO'81madelittleaccommodationforthesefactors
COCOMO'IIaccountsforrequirementsvolatilityinitsestimates.
TheexponentonsizeintheeffortequationsinCOCOMO'81varieswiththedevelopmentmode.COCOMO'IIusesfivescale
factorstogeneralizeandreplacetheeffectsofthedevelopmentmode.
COCOMOIIhasthreedifferentmodels:
TheApplicationCompositionModel
SuitableforprojectsbuiltwithmodernGUIbuildertools.BasedonObjectPoints.
TheEarlyDesignModel
Thismodelisusedtomakeroughestimatesofaproject'scostanddurationbeforeitisentirearchitectureisnotdetermined.Ituses
asmallsetofnewCostDrivers,andnewestimatingequations.BasedonUnadjustedFunctionPointsorKSLOC.
FortheEarlyDesignandPostArchitectureModel:

Wherea=2.5,SFj=scalefactor,EMi=effortmultiplier
BRAK=Percentagecodediscartedduetorequirementvolatility
ASLOC=sizeofadaptedcomponents
AT=percentsofcomponentsadapted
ATPROD=AutomaticTranslationProductivity
AAM=AdaptationAdjustmentMultiplier
COCOMO'IIadjustsfortheeffectsofreengineeringinitseffortestimate.Whenaprojectincludesautomatictranslation,following
listmustbeestimated:
Automatictranslationproductivity(ATPROD),estimatedfrompreviousdevelopmentefforts
Thesize,inthousandsofSourceLinesofCode,ofuntranslatedcode(KSLOC)andofcodetobetranslated(KASLOC)
underthisproject.
Thepercentageofcomponentsbeingdevelopedfromreengineeredsoftware(ADAPT)
Thepercentageofcomponentsthatarebeingautomaticallytranslated(AT).
Theeffortequationisadjustedby15costdriverattributesinCOCOMO'81,butCOCOMO'IIdefinessevencostdrivers(EM)for
theEarlyDesignestimate:
Personnelcapability
Productreliabilityandcomplexity
Requiredreuse
Platformdifficulty
Personnelexperience
Facilities
Scheduleconstraints.
SomeoftheseeffortmultipliersaredisaggregatedintoseveralmultipliersinthePostArchitectureCOCOMO'IImodel.
COCOMO'IImodelssoftwareprojectsasexhibitingdecreasingreturnstoscale.Decreasingreturnsarereflectedintheeffort
equationbyanexponentforSLOCgreaterthanunity.ThisexponentvariesamongthethreeCOCOMO'81developmentmodes

(organic,semidetached,andembedded).COCOMO'IIdoesnotexplicitlypartitionprojectsbydevelopmentmodes.Insteadthe
powertowhichthesizeestimateisraisedisdeterminedbyfivescalefactors:
Precedentedness(hownoveltheprojectisfortheorganization)
Developmentflexibility
Architecture/riskresolution
Teamcohesion
Organizationprocessmaturity.
ThePostArchitectureModel
ThisisthemostdetailedCOCOMOIImodel.Itisusedafterproject'soverallarchitectureisdeveloped.Ithasnewcostdrivers,
newlinecountingrules,andnewequations.
UseofreengineeredandautomaticallytranslatedsoftwareisaccountedforasintheEarlyDesignequation(ASLOC,AT,
ATPROD,andAAM).Breakage(BRAK),orthepercentageofcodethrownawayduetorequirementschangeisaccountedforin
2.0.Reusedsoftware(RUF)isaccountedforintheeffortequationbyadjustingthesizebytheadaptationadjustmentmultiplier
(AAM).Thismultiplieriscalculatedfromestimatesofthepercentofthedesignmodified(DM),percentofthecodemodified
(CM),integrationeffortmodification(IM),softwareunderstanding(SU),andassessmentandassimilation(AA).Seventeeneffort
multipliersaredefinedforthePostArchitecturemodelgroupedintofourcategories:
Productfactors
Platformfactors
Personnelfactors
Projectfactors
ThesefourcategoriesparallelthefourcategoriesofCOCOMO'81productattributes,computerattributes,personnelattributesand
projectattributes,respectively.ManyoftheseventeenfactorsofCOCOMO'IIaresimilartothefifteenfactorsofCOCOMO'81.
ThenewfactorsintroducedinCOCOMO'IIincluderequiredreusability,platformexperience,languageandtoolexperience,
personnelcontinuityandturnover,andafactorformultisitedevelopment.Computerturnaroundtime,theuseofmodern
programmingpractices,virtualmachineexperience,andprogramminglanguageexperience,whichwereeffortmultipliersin
COCOMO'81,areremovedinCOCOMO'II.
AsingledevelopmentscheduleestimateisdefinedforallthreeCOCOMO'IImodels:

Wherec=3,SFjscalefactorandSCED%=schedulecompression/expansionparameter.

You might also like