0% found this document useful (0 votes)
17 views42 pages

Estimation

Uploaded by

Nasir Javed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views42 pages

Estimation

Uploaded by

Nasir Javed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 42

Applied Software Project Management

Project Estimation

1
Applied Software Project Management

What is estimation?
 set expectations about the time required to complete
the project among the stakeholders, the team, and
the organization’s management.
 expectations should be realistic
 if expectations are not realistic from the beginning of
the project, stakeholders will not trust the team or the
project manager.

2
Applied Software Project Management

Prerequisites
 Vision Statement
 Scope
 Requirements

3
Applied Software Project Management

Discuss
 Stakeholders should discuss Vision, Scope, and
Requirements
 Clear any misunderstanding
 Identify missing or incomplete items

4
Applied Software Project Management

Elements of a Sound Estimate


To generate a sound estimate, you need:
 work breakdown structure (WBS), or a list of tasks
that will produce the product
 effort estimate for each task
 list of assumptions which were used for making the
estimate
 discussion & consensus among the team that the
estimate is accurate (at least, reasonable)

5
Applied Software Project Management

Write Down Assumptions


 Team makes assumptions about the work to be done
in order to deal with incomplete information
 assumptions about decisions to be made
 Assumptions must be written down!
1. so everyone knows the basis for estimates
2. if assumption is wrong, estimate can be revised
3. they are frequently overlooked – and cause error

6
Applied Software Project Management

Checklist to Find Assumptions (1)


 are there project goals known to team but not written
in documentation?
 are any concepts or terms that need to be identified?
 are there standards that must be complied with?
 will it be expensive to comply?
 how is the dev't of this project different from previous
projects?
 are there architecture or technology assumptions?

7
Applied Software Project Management

Checklist to Find Assumptions (2)


 What changes could occur in the organization that
could cause estimates to be inaccurate?
 Are there issues that the team disagrees on that will
affect this project?
 e.g., disagree on implementation (write ourself or
use open-source components)

8
Applied Software Project Management

Discuss the Assumptions!


 Discussion is the best way to identify hidden
assumptions or missing tasks

9
Applied Software Project Management

Update Vision & Scope


 Does the list of assumptions affect scope or vision?
 Update them!

10
Applied Software Project Management

Wideband Delphi
Wideband Delphi is a process for reaching a consensus
estimate of project effort
 Wideband Delphi is a repeatable process because
it consists of a straightforward sequence of steps

11
Applied Software Project Management

Wideband Delphi Roles


Estimation Team: PM chooses an estimation team that
include reps from all project areas (managers,
developers, architect, QA, writers, etc).
 every team member should have stake in plan
 should understand Delphi Process
Moderator: someone who understands Delphi Process
but has no stake in the results
Observers: selected stakeholders or users.
 encourages trust in the estimation process
 sense of ownership in the results

12
Applied Software Project Management

Entry Criteria
1. Vision and Scope documents have been agreed on
by stakeholders
2. Kick-off meeting has been scheduled
3. Estimation meeting has been scheduled (1-2 hrs)
4. Moderator chosen (not the PM)
5. Agreement on the goal of the estimation session

13
Applied Software Project Management

Wideband Delphi Steps


Step 1: Choose the team
 PM selects estimation team and a moderator.
 team consists of 3 - 7 project team members.
 moderator should be familiar with Delphi process,
but should not have a stake in the outcome
 PM should not be the moderator (he should be
part of the estimation team)

14
Applied Software Project Management

Wideband Delphi Steps


Step 2: Kickoff Meeting
 each member has read the vision and scope
document and any other documentation, and is
familiar with the project needs.
 brainstorm and write down assumptions
 brainstorm to generate a WBS with 10-20 tasks
 team decides on a unit of estimation (man-hours,
days, pages, ...)

15
Applied Software Project Management

Individual Preparation
Step 3: Individual Preparation
 each member generates his own initial estimates
for all tasks in the WBS
• identify subtasks may help clarify an estimate
 for each task, the team member writes:
1. estimate of effort required to complete task
2. any assumptions needed to make the
estimate
• write down any new tasks the were missed
during brainstorming session

16
Applied Software Project Management

Wideband Delphi Steps


Step 4: Estimation Session
 Each team member fills out an estimation form
which contains his estimate for each task
 give the form to the moderator
 rest of the estimation session consists of rounds
where each estimation team member revises her
estimates based on group discussion.
• Individual estimate(s) are not disclosed

17
Applied Software Project Management

Wideband Delphi Estimation


Step 4: Estimation Session (2)
 moderator collects the estimation forms and plots
the sum of the effort from each form on a line:

18
Applied Software Project Management

Wideband Delphi Estimation


Step 4: Estimation Session (3)
 team resolves any issues or disagreements that are brought up.
 individual estimate times are not discussed. Disagreements are
usually about the tasks themselves.
 Disagreements are often resolved by adding assumptions.

19
Applied Software Project Management

Wideband Delphi Estimation


Step 4: Estimation Session (4)
 team members each revise their individual
estimates and gives them to moderator.
 The moderator updates the plot with the new total

20
Applied Software Project Management

Wideband Delphi Estimation


Step 4: Estimation Session (loop)
 moderator leads the team through several rounds
of estimates to gain consensus on estimates.

Exit Criteria
 The estimation session continues until the
estimates converge or the team is unwilling to
revise estimates.
 Process also ends if time limit (2 hours) has
elapsed.

21
Applied Software Project Management

Wideband Delphi Results


Step 5: Assemble Tasks
 PM collects the estimates from the team members
and compiles the final task list, estimates, and
assumptions.

Step 6: Review Results


 PM reviews the final task list with the estimation
team

22
Applied Software Project Management

Alternative Paths
1. In Step 1, if team determines that not enough
information is known about the project, then process
ends.
The PM must document the missing info, typically by
modifying the Vision, Scope, or Requirements.
2. In Step 1 or 2, if team determines some issues need
to be resolved before estimates can be made, they
agree on a plan to resolve issues and process ends.

23
Applied Software Project Management

Other Estimation Methods

24
Applied Software Project Management

PROBE: Proxy Based Estimating


 PROBE is based on the assumption that building a
component similar to one previously built will require
about the same effort
 Each team member use a database to maintain a
history of the effort they have put into their past
projects (component by component)
 A formula based on linear regression is used to
calculate the estimate for each task from this history.

25
Applied Software Project Management

Constructive Cost Model


 In COCOMO, projects are summarized using a set of
variables that must be provided as input for a model
that is based on the results of a large number of
projects across the industry.
 The output of the model is a set of size and effort
estimates that can be developed into a project
schedule.

26
Applied Software Project Management

Use Case Points


 Project effort is based on a weighted sum of use
cases.
 This method used at Infosys and described in the
book Software Project Management in Practice.

27
Applied Software Project Management

UCP 1 – weighted use cases


 Weight each use case as shown in the table:

Use Case Type Description Weight

Simple 1-3 transactions 5

Medium 4-7 transaction 10

Complex > 7 transactions 15

A transaction is a group of atomic activities that are either


performed entirely or not at all.

28
Applied Software Project Management

Example: POS in Java


 See http://se.cpe.ku.ac.th/trac/firstpos for Vision, Assumptions, and
preliminary analysis documents.
 UUCP = 5 + 10 + 5 + 5 + 5 + 15 = 45

Use Case Trans. Weight


Process Sale 3 5
Process Refund 4 10
Cashier Login 2 5
Search for Item 2 5
Print Receipt 2 5
Process Payment 8 15
29
Applied Software Project Management

UCP 2 – UUCP and TCF


UUCP (unadjusted use case points) = sum of use case
weights.
Next adjust this in view of project complexity.
T-Factor = Technical complexity Factor
1. For each complexity factor, assign 0 – 5 for
relevance to this project (0=irrelevant, 5=essential)
2. Compute TFactor for project as follows:
TFactor = sum( factor_weight * factor_relevance )

30
Applied Software Project Management

Tech. Complexity Factor (TCF)


Distributed system Easy to change 1
2
Response or throughput are objectives Concurrent 1
1
End-use efficiency Has special security features 1
1
Complex Internal Processing Provides direct access for 3 rd parties
1 1
Code must be reusable
1 Special User training facilities
Easy to install required 1
0.5
Portable
2

31
Applied Software Project Management

TCF Example – POS in java


Distributed system 2 5 10
Response or throughput are objectives 1 4 4
End-use efficiency 1 0 0
Complex Internal Processing 1 3 3
Code must be reusable 1 0 0
Easy to install 0.5 0 0
Portable 2 5 10
Easy to change 1 0 0
Concurrent 1 0 0
Has special security features 1 0 0
Provides direct access for 3rd parties 1 5 5
Special User training facilities required 1 0 0

Total TFactor for FirstPOS 29

32
Applied Software Project Management

TCF
 The Technical Complexity Factor is computed as:
TCF = 0.6 + 0.01 * TFactor

 FirstPOS Example:
TCF = 0.6 + 0.01 * 29 = 0.89

33
Applied Software Project Management

Environmental Factor
For each environmental factor, assign a rating of 0 – 5.
0 = none (no experience), 3 = average, 5 = high (expert)
Factor Weight
Familiar with Internet Process 1.5
Application Experience (0=none, 5=expert) 0.5
Object-oriented Experience (0=none) 1.0
Lead Analyst Capability 0.5
Motivation (0=very low, 5=highly motivated) 1
Stable Requirements (0=unstable, 5=very) 2
Part-time workers (0=none, 5=all part-time) -1
Difficult Programming Language (0=easy) -1
34
Applied Software Project Management

FirstPOS Example
Factor Weight Rating
Familiar with Internet Process 1.5 4
Application Experience 0.5 1
Object-oriented Experience 1.0 3
Lead Analyst Capability 0.5 3
Motivation 1 3
Stable Requirements 2 2
Part-time workers -1 5
Difficult Programming Language -1 0
Total EFactor for FirstPOS 13

35
Applied Software Project Management

Compute EF from EFactor


 The Environmantal Factor (EF) is:
EF = 1.4 – 0.03 * EFactor
 FirstPOS Example:

EFactor = 13

EF = 1.4 – 0.03 * 13 = 1.01

36
Applied Software Project Management

Adjusted Use Case Points


 The total adjust Use Case Points (UCP) is:

UCP = UUCP * TCF * EF

37
Applied Software Project Management

FirstPOS Example
 EF = 1.4 – 0.03 * 13 = 1.01
 TCF = 0.89
 UCP = UUCP * TCF * EF = 45 * 0.89 * 1.01 = 40

38
Applied Software Project Management

Computing Effort
 For "average" project, 20 person-hours per UCP

 Review the TCF and EF. Count how many factors


were < 3 and how many were > 3. If there are many
factors with relevance < 3, then use 28 person-hours
per UCP.

39
Applied Software Project Management

FirstPOS Example
 Effort = 40 * 20 person-hours = 800 person-hours

 In business, actual time spent on projects (for full-


time) is typically <= 6 hours/day.
 The rest of time is overhead or unproductive
activity
 Since we have part-timers, estimate 15 hours/week.
800 / 15 = 53 person-weeks
 Using "square-root" heuristic, we need about 7
people for 8 weeks.

40
Applied Software Project Management

FirstPOS Example (Review)


 Record the assumptions and conditions used to
create this estimate!
 Only 7 use cases (low). Did we miss something?
 Project assumptions:
if they are wrong, will it increase complexity
(TCF)?

41
Applied Software Project Management

Estimation Deliverables
Referenced
Documents
List of
• Vision Assumptions
• Scope Process
1. ...
• Requirements Used and Effort
2. ...
Participants Estimate
3. ...
Wideband include details
Delphi of calculations.
Use Case Point Delphi: include
method min-max
UCP: TCF and
EF component
ratings
42

You might also like