Software Cost Estimation Metrics and Models

“———————————————————————————————————————————————
Support this Page: http://amzn.to/2kgnzrf
———————————————————————————————————————————————

Software Cost Estimation Metrics and Models

The process of analyzing the amount of effort that will be required to built software. Preliminary estimates done in the beginning before project starts estimates if the project is worth making. When the project is determined to be feasible, more detailed estimates are necessary for project planning.

Analysis of past projects indicate that cost depends on a number of factors. Different models have been created to make better predictions of software cost.

The main method to determine cost is size. Size is determined by:
– lines of code
– function points

Lines of Code (LOC)

NCLOC (Non commented lines of code) also known as ELOC (effective lines of code)

CLOC (commented lines of code)

LOC is the most widely used method to determine source code length.

Formula:

LOC = NCLOC + CLOC

Function Points

Measures functionality of a system. Points are calculated resulting in Unadjusted function point count (UFC)

UFC consists of:
– external inputs
– external outputs
– external inquiries
– external files
– internal files

Once this is calculated:
– complexity rating is assigned to each count
– each count is multiplied by complexity weight

Technical complexity factor(TCF)

Components of TCF include:
– reliable back-up and recovery
– distributed functions
– heavily used configuration
– operational ease
– complex interface
– reusability
– multiple sites
– data communications
– performance
– online data entry
– online update
– complex processing
– installation ease
– facilitate change

Each has a rating of 0..5 where 5 means it has a great influence on the system. If you name each component F1, F2..Fn

TCF = 0.65+0.01(SUM(Fi))

:Function Point formula:

FP = UFC*TCF

Original COCOMO

Consists of 3 models:
– Basic: used early in project
– Intermediate
– Advanced: used after design is complete

All three take form of:

E = aS^b x EAF

Where:
E = effort in person months
S = size with metric thousands line of code
EAF = effort adjustment factor

3 development modes:
– Organic: small project, informal
– Semi detached: mixed-teams, mix of formal and informal
– Embedded: formal, follows strict rules

A and b depend on development mode.

Basic COCOMO

Effort as function of program size
E = aKLOC^b

Intermediate COCOMO

Basic COCOMO + cost drivers
E = aKLOC^b*EAF

Advanced COCOMO

Intermediate COCOMO weighted according to phase of software development.

Phases:
– Requirements Planning and Product design ( RPD)
– Detailed design (DD)
– Code and unit test (CUT)
– Integration and test (IT)

Estimates for each module is combined into subsystems which eventually result in a project estimate. Detailed cost drivers are used to determine each phase of the lifecycle.

COCOMO II

More useful than COCOMO due to the fact that it caters for modern techniques. COCOMO II also includes application composition model (prototyping), early design and post-architecture models.

Application composition model is used to resolve high-risk issues. Object points are used instead of LOC metric. Calculated by counting number of screens, reports and components that will be used. Each is classified as simple, medium and difficult.

Early design model is used to evaluate the architecture and operations while the Post-architecture model is used during development and maintenance. The model has 5 factors and 17 cost drivers. The 5 factors replace development modes of original COCOMO.

SLIM

Used for large projects. Putnam developed this model. He suggests that staffing rises and project progresses and drops after acceptance testing.

2 equations are used:
– Software equation
manpower-buildup

Criteria for evaluating Cost models

– definition
– fidelity
– objectivity
– constructiveness
– detail
– stability
– scope
– ease of use
– prospectiveness
– parsimony

A model is acceptable if 75% of predicted values have a variance of 25% from the estimates.

Problems with existing models include:
– no relation between size and effort
– no consensus on effect of change in duration of project.
– Models are only suitable for certain development efforts.
– Failure to take into consideration organisation characteristics
– Size is difficult to predict during development time

“————————————————– ————————————————– —————————————–
Tappoġġja dan Paġna: http://amzn.to/2kgnzrf
————————————————– ————————————————– —————————————–

Softwer ispiża Metrics Stima u Mudelli

Il-proċess tal-analiżi tal-ammont ta ‘sforz li se jkunu meħtieġa li softwer mibnija. Stimi preliminari jsir fil-bidu qabel ma proġett jibda stimi jekk il-proġett ikun min jagħmel. Meta l-proġett ikun determinat li jkun fattibbli, stimi aktar dettaljati huma meħtieġa għall-ippjanar tal-proġett.

Analiżi ta ‘proġetti tal-passat tindika li l-ispiża tiddependi fuq numru ta’ fatturi. Mudelli differenti ġew maħluqa sabiex jagħmlu tbassir aħjar ta ‘kost softwer.

Il-metodu prinċipali li jiddetermina l-ispiża huwa d-daqs. Id-daqs jiġi stabbilit b ‘:
– linji ta ‘kodiċi
– punti funzjoni

Linji ta ‘Kodiċi (LOC)

NCLOC (mhux ikkummenta linji ta ‘kodiċi) magħrufa wkoll bħala ELOC (linji effettivi ta’ kodiċi)

Cloc (linji kkummentaw ta ‘kodiċi)

LOC huwa l-metodu l-aktar użati sabiex jistabbilixxi t-tul source code.

formula:

LOC = NCLOC + cloc

Punti funzjoni

Miżuri funzjonalità ta ‘sistema. Punti huma kkalkulati jirriżultaw fil-funzjoni Meta mhux aġġustat punt numru (UFC)

UFC jikkonsisti minn:
– inputs esterni
– outputs esterni
– inkjesti esterni
– fajls esterni
– fajls interni

Ladarba dan kkalkulat:
– Klassifikazzjoni kumplessità huwa assenjat għal kull għadd
– Kull għadd huwa mmultiplikat bil-piż kumplessità

Fattur kumplessità teknika (TCF)

Komponenti ta ‘TCF jinkludu:
– Min joqgħod fuqha back-up u rkupru
– funzjonijiet imqassma
– Konfigurazzjoni ħafna użati
– Faċilità operattiva
– Interface kumpless
– użu mill-ġdid
– siti multipli
– komunikazzjonijiet ta ‘data
– rendiment
– Dħul tad-data online
– Aġġornament onlajn
– Proċessar kumpless
– Faċilità installazzjoni
– Jiffaċilita l-bidla

Kull wieħed għandu klassifikazzjoni ta 0..5 fejn 5 ifisser li għandha influwenza kbira fuq is-sistema. Jekk inti isem kull F1 komponent, F2..Fn

TCF = 0.65 + 0.01 (SOMMA (Fi))

: Formula Funzjoni Punt:

FP = UFC * TCF

COCOMO oriġinali

Tikkonsisti fi 3 mudelli:
– Bażiku: użat kmieni fil-proġett
– Intermedju
– Livell Avvanzat: użat wara d-disinn huwa komplut

It-tlieta jieħdu l-forma ta ‘:

E = AS ^ b x EAF

fejn:
E = isforz f’xhur persuna
S = id-daqs ma ‘eluf metrika linja tal-kodiċi
EAF = fattur ta ‘aġġustament isforz

3 modi ta ‘żvilupp:
– Organic: proġetti żgħar, informali
– Semi detached: mħallta Timijiet, ħawwad tad formali u informali
– Inkorporati: formali, isegwi regoli stretti

A u B jiddependi fuq modalità iżvilupp.

bażiku COCOMO

Isforz bħala funzjoni tad-daqs programm
E = aKLOC ^ b

intermedju COCOMO

COCOMO + sewwieqa bażiċi ispiża
E = aKLOC ^ b * EAF

avvanzata COCOMO

Intermedju COCOMO peżati skond fażi ta ‘żvilupp ta’ softwer.

fażijiet:
– Rekwiżiti Ippjanar u d-disinn tal-Prodott (RPD)
Id-disinn dettaljat (DD)
Il-Kodiċi u l-unità tat-test (maqtugħ)
– Integrazzjoni u test (IT)

Estimi għal kull modulu huwa kkombinat f’subsistemi li eventwalment jirriżultaw fi stima proġett. fatturi ta ‘spejjeż dettaljati huma wżati biex jiddeterminaw kull fażi tal-ħajja.