Ch6 Part-1 Effort and Size Estimation
Ch6 Part-1 Effort and Size Estimation
Chapter 1
Time? Effort?
Cost?
How Much?
Fundamental estimation questions
• How much effort is required to complete an activity?
• How much calendar time is needed to complete an
activity?
• What is the total cost of an activity?
• Project estimation and scheduling are interleaved
management activities.
Software Project Estimation Effort
Estimation
•6
Software Effort Estimation
• It Is the process of predicting Effort,
productivity, time and cost required to
develop software projects.
• Effort can be calculated as Staff or Person per
day/Week/Month/Year.
• For small project it is common to use Staff-
Weeks while for large project it is common to
use Staff-months
are:
Software
The four Estimation
basic steps in Process
software project estimation
•10
A taxonomy of estimating
methods
• Bottom-up - activity based, analytical
• Parametric or algorithmic models e.g.
function points
• Expert opinion - just guessing?
• Analogy - case-based, comparative
• Parkinson and ‘price to win’ ?? (Search it)
•11
Bottom-up versus top-down
• Bottom-up
– use when no past project data
– identify all tasks that have to be done – so quite time-consuming
– use when you have no data about similar past projects
• Top-down
– produce overall estimate based on project cost drivers
– based on past project data
– divide overall estimate between jobs to be done
•12
Bottom-up estimating
1. Break project into smaller and smaller
components
[2. Stop when you get to what one person can
do in one/two weeks]
3. Estimate costs for the lowest level activities
4. At each higher level calculate estimate by
adding estimates for lower levels
•13
Bottom-up estimating
• Produce overall
Estimate estimate using effort
overall
100 days driver(s)
project
• distribute proportions of
overall estimate to
components
design code test
30% 30% 40%
i.e. i.e. i.e. 40 days
30 days 30 days
•14
Sizing the project
• Size is a primary cost factor in most models.
•15
Sizing Models / Techniques
Analogy Banker
Traditional
Expert
Judgment Variants PRINCE
Object points
Real Time
Functionality(bott
Adaptations
om-up) SEER – SEM
Object points
Parametric
•16
Source Line of Code (LOC)
• LOC = NCLOC + CLOC
– NCLOC : non- commented Line of code.
– CLOC :commented Line of code.
•17
Example
for (i = 0; i < 100; i++) printf("hello"); /* How many lines of code is this? */
21
SLOC.. Expert judgment model
S = (a + 4m + b ) / 6
– “S” is SLOC,
– “a’ is the smallest possible size (optimistic)
– “m” is the most likely size
– “b” is the largest possible size. (Pessimistic)
– “a”,”m”,”b” is determined by experts.
Estimation of LOC
Consider the following software
project
S/W Component a m b LOC
User interface and control
facilities UICF 1,500 2,300 3,100 2,300
Two-dimensional geometric
analysis 2DGA 3,800 5,200 7,200 5,300
Three-dimensional geometric
analysis 3DGA 4,600 6,900 8,600 6,800
Database management DBM 1,600 3,500 4,500 3,350
Computer graphics display
features CGDF 3,700 5,000 6,000 4,950
Peripheral control PC 1,400 2,200 2,400 2,100
Design analysis modules DAM 7,200 8,300 10,000 8,400
Estimated lines of code 23,800 33,400 41,800 33,200
23
What are the drawbacks of SLOC?
Function Points
• A measure of the size of computer applications
• The size is measured from a functional, or user, point of
view.
• It is independent of the computer language,
development methodology, technology or capability of
the project team used to develop the application.
• Can be subjective
• Can be estimated EARLY in the software development
life cycle.
25
The Function Point Methodology
Five key components are
• Inputs identified based on logical user view
• Outputs
• Inquiries
Input Inquiry Output
• Internal Logical Files
• External Interface Files
Internal
Logical
Files
External Application
Interface
File
Function Points - continued
Five function types
1. Logical interface file (LIF) types – equates
roughly to a datastore in systems analysis
terms. Created and accessed by the target
system.
•30
FP counts
1. Medium EI 4 FPs
2. High complexity EI 6 FPs
3. Medium complexity EO 5 FPs
4. Medium complexity LIF 10 FPs
5. Simple EIF 5 FPs
Total 30 FPs
•31
Example (2)
• LIF 4 easy 5 average 3 Hard
• EI 7 easy 6 average 2 Hard
• EO 6 easy 2 average 3 Hard
• EQ 3 easy 4 average 2 Hard