Effort Estimation - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Effort Estimation

Description:

Effort Estimation – PowerPoint PPT presentation

Number of Views:49
Avg rating:3.0/5.0
Slides: 21
Provided by: davidc81
Category:

less

Transcript and Presenter's Notes

Title: Effort Estimation


1
Effort Estimation
  • Has been an art for a long time because
  • many parameters to consider
  • unclear of relative importance of the parameters
  • unknown inter-relationship among the parameters
  • unknown metrics for the parameters
  • Historically, project managers
  • consulted others with past experiences
  • drew analogy from projects with similar
    characteristics
  • broke the projects down to components and used
    past history of workers who have worked on
    similar components then combined the estimates

For example?
What if you are new at this and have no
dependable contacts ?
2
General Model
  • There have been many proposed models for
    estimation of effort in software. They all have a
    similar general form
  • Effort (product size) (other
    influencing factors)
  • or more formally
  • Effort a (b ((Size)c)) PROD(fs)
  • where
  • Size is the estimated size of the project in loc
    or function points
  • a, b, c, are coefficients derived from past data
    and curve fitting
  • a base cost to do business regardless of size
  • b fixed marginal cost per unit of change of
    size
  • c nature of influence of size on cost
  • fs are a set of additional factors, besides
    Size, that are deemd important
  • PROD (fs) is the arithmetic product of the fs

3
COCOMO Estimating Technique
  • Developed by Barry Boehm in early 1980s who had
    a long history with TRW and government projects
    (LOC based)
  • Later modified into COCOMO II in the mid-1990s
    (FP preferred or LOC)
  • Assumed process activities
  • Product Design
  • Detailed Design
  • Code and Unit Test
  • Integration and Test
  • Utilized by some but most of the people still
    rely on experience and/or own company proprietary
    data.

Note that requirements gathering and spec.
are not included
4
Basic Form for Effort
  • Effort A B (size C)
  • or more generally
  • Effort A (sizeC) B
  • Effort person months
  • A scaling coefficient
  • B coefficient based on 15 parameters
  • C a scaling factor for process
  • Size delivered source lines of code

5
Basic form for Time
  • Time D (Effort E)
  • Time total number of calendar months
  • D A constant scaling factor for schedule
  • E a coefficient to describe the potential
    parallelism in managing software development

6
COCOMO I
  • Originally based on 56 projects
  • Reflecting 3 modes of projects
  • Organic less complex and flexible process
  • Semidetached average project
  • Embedded complex, real-time defense projects

7
3 Modes are Based on 8 Characteristics
  • A. Teams understanding of the project objective
  • B. Teams experience with similar or related
    project
  • C. Projects needs to conform with established
    requirements
  • D. Projects needs to conform with established
    interfaces
  • E. Project developed with new operational
    environments
  • F. Projects need for new technology,
    architecture, etc.
  • G. Projects need for schedule integrity
  • H. Projects size range

8
Inderstand req
Exp. w/similar project
Conform w/req.
Conform w/int.
New oper. env.
New tech/meth.
Schedule int.
Size
9
COCOMO I
  • For the basic forms
  • Effort A B (size C)
  • Time D (Effort E)
  • Organic A 3.2 C 1.05 D 2.5
    E .38
  • Semidetached A 3.0 C 1.12 D 2.5 E
    .35
  • Embedded A 2.8 C 1.2 D 2.5
    E .32

10
Coefficient B
  • Coefficient B is an effort adjustment factor
    based on 15 parameters which varied from very
    low, low, nominal, high, very high to extra high
  • B product (15 parameters)
  • Product attributes
  • Required Software Reliability .75 .88
    1.00 1.15 1.40
  • Database Size
    .94 1.00 1.08 1.16
  • Product Complexity .70 .85
    1.00 1.15 1.30 1.65
  • Computer Attributes
  • Execution Time Constraints
    1.00 1.11 1.30 1.66
  • Main Storage Constraints
    1.00 1.06 1.21 1.56
  • Virtual Machine Volatility
    .87 1.00 1.15 1.30
  • Computer Turnaround time .87
    1.00 1.07 1.15

11
Coefficient B (cont.)
  • Personnel attributes
  • Analyst Capabilities 1.46
    1.19 1.00 .86 .71
  • Application Experience 1.29 1.13
    1.00 .91 .82
  • Programmer Capability 1.42 1.17
    1.00 .86 .70
  • Virtual Machine Experience 1.21 1.10
    1.00 .90
  • Programming lang. Exper. 1.14 1.07
    1.00 .95
  • Project attributes
  • Use of Modern Practices 1.24 1.10
    1.00 .91 .82
  • Use of Software Tools 1.24
    1.10 1.00 .91 .83
  • Required Develop schedule 1.23 1.08
    1.00 1.04 1.10

12
An example
Any problem?
  • Consider an average project of 10Kloc
  • Effort 3.0 B (10 1.12) 3 1 13.2
    39.6 pm
  • Where B 1.0 (all nominal)
  • Time 2.5 ( 39.6 .35) 2.5 3.6 9 months
  • This requires an additional 8 more effort and
    36 more schedule time for product plan and
    requirements
  • Effort 39.6 (39.6 .o8) 39.6 3.16
    42.76 pm
  • Time 9 (9 .36) 9 3.24 12.34 months

13
Try another example(how about your own project?)
  • Go through the assessment of 15 parameters for
    the effort adjustment factor, B.
  • You may have some concerns
  • Are we interpreting each parameter the same way
  • Do we have a consistent way to assess the range
    of values for each of the parameters
  • -How good is my size (loc) estimate?

Do not forget to come back to COCOMO try it
own your own project.
14
COCOMO II
  • Effort performed at USC with many industrial
    corporations participating
  • Has a database of over 80 some projects
  • Early estimate, preferred to use Function Point
    instead of LOC for size later estimate may use
    LOC for size. (loc is harder to estimate without
    some experience)
  • Coefficient B based on 15 parameters for early
    estimate is rolled up to 7 parameters, and for
    late estimates use 17 parameters.
  • Scaling factor for process has 6 categories
    ranging in value from .00 to .05, in increments
    of .01

15
Function Point
  • Provides you another way to estimate the size
    of the project based on estimating
  • Inputs
  • Outputs
  • Files
  • Interfaces
  • Inquiries
  • See text book for an algorithm to estimate
    function point size.
  • (Or see the next 3 summary charts)
  • Then --- still need to have an estimate on
    productivity
  • function point/person-month
  • Divide the estimated total project function
    points by the productivity to get an estimate of
    person-month or person-days needed.

16
Function Point (FP) Computation
  • Composed of 5 Primary Factors
  • input items (external input items from user or
    another application)
  • output items (external outputs such as reports,
    messages, screens not each data item)
  • Inquiry (a query that results in a response of
    one or more data)
  • master and logical files (internal file or data
    structure or data table)
  • external interfaces (data or sets of data sent to
    external devices, applications, etc.)
  • And a complexity level index matrix

Average
Simple
Complex
3
4
6
Input
5
7
Output
4
3
Inquiry
4
6
Logical files
7
10
15
Interface
7
5
10
17
Function Point Computation (cont.)
  • Initial Function Point
  • SUM ( of Primary Factor x Complexity Level
    Index)
  • There are 14 more Degree of Influences ( 0 to 5
    scale)
  • data communications
  • distributed data processing
  • performance criteria
  • heavy hardware utilization
  • high transaction rate
  • online data entry
  • end user efficiency
  • on-line update
  • complex computation
  • reusability
  • ease of installation
  • ease of operation
  • portability
  • maintainability

18
Function Point Computation (cont.)
  • Define Technical Complexity Factor (TCF)
  • TCF .65 (.01 x DI )
  • where DI SUM ( influence factor value)
  • So note that .65 lt TCF lt 1.35

Function Point (FP) Initial FP x TCF
19
Whats one Function Point?
  • Do you have any experience in converting say
    ----- 35 function points to effort in person
    months?
  • Is there any standard conversion factor that you
    may use?
  • In IBM we used about 20 function points to 1
    person month of effort.

20
Popular Estimation Methods
  • Draw on Past Experience and Similar Projects
  • COCOMO
  • Function Point

Can you speak to some pros and cons about each
method?
Write a Comment
User Comments (0)
About PowerShow.com