You are on page 1of 16

Estimation Techniques

Use Case Points


usedtoforecastthesoftwaresizeforsoftwaredevelopmentprojects.

usedwhenthe(UML)andRationalUnifiedProcess(RUP)methodologies
arebeingusedforthesoftwaredesignanddevelopment.

basedontherequirementsforthesystembeingwrittenusingusecases.

providethefunctionalscopeoftheapplication,analyzingtheircontents

provides valuable insight into the effort and size needed to design and
implementtheapplication

the time to complete the application is affected by


thenumberofstepstocompletetheusecase.
Thenumberandcomplexityoftheactors.
Thetechnicalrequirementsoftheusecasesuchasconcurrency,securityand
performance.
Variousenvironmentalfactorssuchasthedevelopmentteamsexperienceand
knowledge.

UCP analyzes the use case actors, scenarios and various technical and
environmental factors and forms them into an equation.

The equation is composed of four variables:


TechnicalComplexityFactor(TCF).
EnvironmentComplexityFactor(ECF).
UnadjustedUseCasePoints(UUCP).
ProductivityFactor(PF).

The Use Case Point Equation is


UCP = TCP * ECF * UUCP * PF

The necessary steps to generate the estimate :


DetermineandcomputetheTechnicalFactors.
DetermineandcomputetheEnvironmentalFactors.
ComputetheUnadjustedUseCasePoints.
DeterminetheProductivityFactor.
Computetheproductofthevariables.

Technical Complexity Factors

Thirteen standard technical factors exist to estimate the impact on


productivity.

Eachfactorisweightedaccordingtoitsrelativeimpact.

Aweightof0indicatesthefactorisirrelevantandthevalue5meansthatthe
factorhasthemostimpact.

TechnicalFactors.
Technical
Factor
T1
T2
T3
T4

Description
Distributedsystem
Performance
EndUserEfficiency
ComplexinternalProcessing

Weight
2
1
1
1

T5
T6
T7
T8
T9
T10
T11

Reusability
Easytoinstall
Easytouse
Portable
Easytochange
Concurrent
Specialsecurityfeatures

1
0.5
0.5
2
1
1
1

T12

Providesdirectaccessforthirdparties

T13

Specialusertrainingfacilitiesare
required

Thetechnicalfactorsareevaluatedbythedevelopmentteamandassigned
avaluefrom0to5accordingtotheirperceivedcomplexity.
Aperceivedcomplexityof0meansthetechnicalfactorisirrelevantforthis
project;3isaverage;5meansithasstronginfluence.

Technical Description
Factor

Weight

Perceived
Complexity

Calculated Factor
(weight*perceived
complexity)>

T1

DistributedSystem

10

T2
T3

Performance
EndUserEfficiency

1
1

4
2

4
2

T4

ComplexinternalProcessing

T5
T6
T7
T8
T9
T10
T11

Reusability
Easytoinstall
Easytouse
Portable
Easytochange
Concurrent
Specialsecurityfeatures

1
0.5
0.5
2
1
1
1

2
5
3
3
3
2
2

2
2
2
6
3
2
2

T12

Providesdirectaccessforthird 1
parties

T13

Specialusertrainingfacilities
arerequired

Total Factor

47

TCF=0.6+(.01*TotalFactor)

EnvironmentalComplexityFactors
Environmental
Factor

Description

Weight

E1

Familiarity with UML

1.5

E2

Application Experience

0.5

E3

Object Oriented Experience

E4

Lead analyst capability

0.5

E5

Motivation

E6

Stable Requirements

E7

Part-time workers

-1

E8

Difficult Programming language

Example Environmental Factors

Calculating the Environmental


Total Factor.
Environ
mental
Factor

Description

Weight

Perceive
d Impact

Calculated
Factor
(weight*perc
eived
complexity)

E1

Familiarity with UML

1.5

E2

Application Experience

0.5

E3

Object Oriented
Experience

E4

Lead analyst capability

0.5

E5

Motivation

E6

Stable Requirements

10

E7

Part-time workers

-1

E8

Difficult Programming
language

Total
Factor

26

ECF=1.4+(-0.03*TotalFactor).

Unadjusted Use Case Points


(UUCP)
Unadjusted Use Case Points are computed based on
twocomputations:
TheUnadjusted Use Case Weight(UUCW) based on the total number of
activities(orsteps)containedinalltheusecaseScenarios.
TheUnadjustedActorWeight(UAW)basedonthecombinedcomplexityofall
theusecasesActors.

Unadjusted Use Case


Weight(UUCW)
Use Case Type Description

Weight

Simple

Asimpleuserinterfaceandtouchesonlya
singledatabaseentity;itssuccessscenario
has3stepsorless;itsimplementation
involveslessthan5classes.

Average

Moreinterfacedesignandtouches2or
10
moredatabaseentities;between4to7
steps;itsimplementationinvolvesbetween
5to10classes.

Complex

Involvesacomplexuserinterfaceor
15
processingandtouches3ormoredatabase
entities;oversevensteps;its
implementationinvolvesmorethan10
classes.

Use Case Categories.

Use Case Type

Description

Simple

Asimpleuserinterfaceandtouches
onlyasingledatabaseentity;its
successscenariohas3stepsorless;
itsimplementationinvolvesless
than5classes.

Average

Complex

Moreinterfacedesignandtouches2
ormoredatabaseentities;between4
to7steps;itsimplementation
involvesbetween5to10classes.
Involvesacomplexuserinterfaceor
processingandtouches3ormore
databaseentities;oversevensteps;
itsimplementationinvolvesmore
than10classes.

Computing UUCW

Weigh Number of Use


t
Cases

Result

40

10

12

120

15

60

Total UUCW

220

UAW
Actor Type

Description

Simple

The Actor represents


another system with a
defined API.

The Actor represents


another system
interacting through a
protocol, like TCP/IP.

Average

Complex

The Actor is a person


interacting via an
interface.

Actor Classifications

Weight

Actor Type

Description

Simple

TheActorrepresents
anothersystemwitha
definedAPI

TheActorrepresents
anothersystem
interactingthrougha
protocol,likeTCP/IP

12

24

12

Total UAW

44

Average

Complex

Weight Number of Actors

TheActorisaperson
interactingviaan
interface.

Computing UAW

Result

Productivity Factor

aratioofthenumberofmanhoursperusecasepointbasedonpast

projects.
Ifnohistoricaldatahasbeencollected,afigurebetween15and30is
suggestedbyindustryexperts.
Atypicalvalueis20.

Use Case Points

TheUseCasePointsisdeterminedbymultiplyingallthevariables:

UCP = TCP * ECF * UUCP * PF

You might also like