You are on page 1of 8

Introduction

Why Estimate?

Estimation is an essential part of our project methodology. Estimation is used for a number of
purposes:

• To justify the project, particularly at the proposal stage, enabling the costs to be
compared with the anticipated benefits and to enable informed comparisons to be made
between different technical or functional options.
• To enforces the disciplines needed to make the project succeed.
• To secure the resources required to successfully deliver the project.
• To ensure that the support impact of the project is fully understood.
• To inform and improve our software development process.

This document describes the techniques used to produce reliable estimates for the work
required to complete projects and tasks.

Overview of the Estimation Process

The best people to undertake estimation are the staff who are going to do the work. The staff
chosen to produce an estimate are drawn from IS, customers and/or service partners who have
relevant experience of similar previous projects or tasks in the business area.

Our estimation process is based on three components:

1. Expert judgement, i.e. consultation with qualified experts from within IS and our
business and service partners. This is supplemented, where required, by expert input
from software suppliers and consultants.
2. Experience, i.e. comparison of the proposed project or task with previously completed
work.
3. Task Decomposition, i.e. decomposing the project into components, i.e. a Work
Breakdown Structure, and estimating each components individually to produce an
overall estimate.

The estimates are validated through peer review and are backed up by an experienced Project
Manager who takes overall responsibility for the total. Estimates are reviewed and updated
throughout the project lifecycle. Estimates, and the processes followed to produce them, are
transparent and consistent across all projects.

Project And Task Estimation

Estimation Technique 1 - Three Point Estimation

The Three Point Estimation technique is based on statistical methods, and in particular, the
Normal distribution. Three Point Estimation is the preferred estimation technique for IS
projects. In Three Point Estimation we produce three figures for every estimate:
a = the best case estimate

m = the most likely estimate

b = the worst case estimate

These values are used to calculate an E value for the estimate and a Standard Deviation (SD)
where:

E = a + (4*m) + b / 6

SD = (b - a)/6

E is a weighted average which takes into account both the most most optimistic and pessimistic
estimates provided and SD measures the variability or uncertainty in the estimate.

To produce a project estimate the Project Manager:

1. Decomposes the project into a list of estimable tasks, i.e. a Work Breakdown Structure
2. Estimates each the E value and SD for each task.
3. Calculates the E value for the total project work as E (Project Work) = Σ E (Task)
4. Calculates the SD value for the total project work as SD (Project Work) = √Σ SD (Task) 2

We then use the E and SD values to convert the project estimates to Confidence Levels as
follows:

• Confidence Level in E value is approximately 50%


• Confidence Level in E value + SD is approximately 70%
• Confidence Level in E value + 2 * SD is approximately 95%
• Confidence Level in E value + 3 * SD is approximately 99.5%

IS use the 95% Confidence Level, i.e. E Value + 2 *SD, for all project and task estimates.

A spreadsheet template for Three Point Estimation is available together with a Worked Example
illustrating how the template is used in practice.

Estimation Technique 2 - Base and Contingency Estimation

Base and Contingency is an alternative estimation technique to Three Point Estimation. It is less
scientifically based and cannot be used to provide Confidence Levels. It is nevertheless a useful
technique where there is less detail available on which to base the estimate.

In Base and Contingency estimation all estimates have two components the base and the
contingency. The base is the minimum expected time required, i.e. when everything goes well.
The contingency is the amount of trust placed on the base when risks are are taken into
account and is generally expressed as a percentage of the base. A figure of 10% -20%
contingency is a typical figure rising to 50% or even greater for more risky tasks. Separating the
base and contingency makes the estimation task easier. We can derive a base figure without
having to take into account everything that might go wrong and then use risk analysis to
determine the appropriate level of contingency. The assumptions that underpin the base
estimate are recorded and the contingency reflects the confidence we have that these
assumptions are correct.

The Project Manager will also consider project wide risks and undertake a risk analysis to
determine the correct amount of contingency to allow for them. These risks are recorded in the
project Risk Register. The contingency is based on the maximum costs to the project of the risk
occurring weighted by an assessment of how likely it is to occur expressed as a percentage.
Project contingency may be estimated in terms of money, resources or a mixture of both.
Resource contingency is managed by adding a factor to individual task estimates.

To produce a project estimate the Project Manager:

1. Decomposes the project into a list of estimable tasks, i.e. a Work Breakdown Structure
2. Estimates each task including any task contingency.
3. Adds the estimates together.
4. Adds the project contingency.

Using this technique the Project Manager must be careful to avoid double-counting, i.e. adding
contingency to both the project and task estimates for the same risk. A spreadsheet template for
Base and Contingency Estimation is available .

Technical and Overhead Tasks

Typically we will distinguish between the technical tasks of the project, for example code
development or package configuration etc, and overhead tasks such as project management
or infrastructure support. Each technical task will be individually estimated whilst the estimate
for each overhead tasks can often be calculated on a pro-rata basis.

Key factors which will influence estimates for technical tasks are:

• size and complexity of the task


• the skills and experience of the proposed development team and their familiarity with the
technology being proposed.
• non functional requirements such as performance, reliability, code reusability etc.

Typical overhead tasks include:

• Project Management
• Business Analysis
• Systems Analysis and Design
• Infrastructure Support
• Testing
• Deployment (includes user training and implementation in live environment.)

Project experience suggests potentially useful rules of thumb for deriving initial estimates for
various overhead tasks. These are provided in Table 1 below.
Task Rule Of Thumb
A full time Project Manager is required for every six staff assigned to the project.

Project Management A typical Applications project requires the equivalent of 2/3 full time staff. Applying this rule
of thumb suggests that the Project Manager should be assigned between 33% and 50% or
the duration of the project. (A corollary to this is that a Project Manager should not typically
be expected to run more than 2 or 3 active projects simultaneously.)
Allow a figure of 20% of the time allowed for the technical tasks to complete the
Business Analysis
business specification.
Systems Analysis and Allow a figure of 25% of the time allowed for the technical tasks to complete the
Design design specification.
Infrastructure Support Allow a figure of 10% of the time allowed for the technical tasks.
Peer Testing Allow a figure of 10% of the time allowed for the technical tasks.
Integration Testing Allow a figure of 15% of the time allowed for the technical tasks.
Acceptance Testing Allow a figure of 15% of the time allowed for the technical tasks.
Deployment Allow a figure of 5% of the time allowed for the technical tasks.

Table 1 Rules Of Thumb For Estimating Overhead Tasks

This approach simplifies estimation and can provide a useful cross check of the technical
estimates. However it is perfectly acceptable for overhead tasks to be decomposed and
estimated separately where the Project Manager feels that this is more appropriate.

Producing A Project Estimate - The Estimation Team

The Project Manager should assemble an estimation team for the project - this is mandatory
for estimates produced during the Initiation and Planning stages of the Project Methodology.
The estimation team will include the Project Manager and other technical experts from IS -
chosen to reflect the staff who will actually do the work. The estimation team may also be
supplemented by representative project stakeholders including customers and service partners.
Four or five staff in total is a reasonable estimation team size for most projects. The quality of
the estimate will only be as good as the estimation team's knowledge of the project so it is vital
that they collectively understand, as far possible, everything that is known about the project at
the time that the estimate is produced.

The estimation team will generally have at least two meetings. The first of these meetings will:

• Review and agree the project goals and identify any risks or assumptions.
• Discuss ways in which the goals may be met including design options.
• Identify key tasks.

This meeting may also be attended by a customer stakeholder who will play a key role in
discussions on functionality requirements, usability issues etc.

The second meeting will typically take place a few days later to finalise the estimate. It is
important that each member of the team prepares their own estimate of the work involved
ahead of this second meeting (Delphi Technique). This ensure every member of the team is fully
prepared and reduces the risk of individuals having over-influencing the results of the process.
This second meeting:

• Confirms the list of estimable tasks


• Confirm the estimates for each estimable and overhead task

At this meeting the Project Manager may ask members of the estimation team to take a lead
role in the discussions for particular tasks. For example, a senior member of the proposed
development team may lead the review of coding task estimates by walking-through their
estimate of the work involved. This meeting will continue, perhaps with further break outs, until
consensus is reached on the estimates for all tasks. (Where "Base and Contingency"
technique is being used the Project Manager will then lead discussions to determine the overall
project contingency using the same consensus building techniques.)

Notes

1. A typical estimation team will be composed of the following staff: the Project Manager,
two developers, an IS Section Head or Team Leader and one or two others such as a
customer, a technology specialist (e.g. a Technical Services or MyEd representative) or
an external supplier. (From 2006/7 onwards the Applications Development Team
Manager must be invited to participate in each Applications estimation team.)
2. During estimation meetings it is vital that a note taker is appointed to record design
decisions, assumptions and risks. These notes are an important deliverable from the
sessions as they help ensure that the context for the estimate is fully understood.
3. Sufficient time should be allowed to enable the team to complete the estimation process.
An allowance of 0.5 - 1 day for each member of the team is reasonable.

Monitoring And Signing Off Project Estimates

The Project Manager will monitor estimates throughout the project. Experience gained from
previous stages is used to update the task list and the corresponding estimates. Risks are
reviewed and contingencies adjusted as appropriate. The revised estimates are reviewed as
part of the sign off process at the end of each stage in the project methodology. Completed
estimates are signed off by the Project Manager and key project stakeholders. This will typically
be done as part of the stage sign off as indicated in Table 2 below:

Project
Methodology Deliverable Requirement
Stage
Estimates to be signed off by the Project Sponsor and
Project Services Programme Manager

Initiation Project Proposal A single estimation team should be established for each
business area programme for estimating proposals produced
as part of the Annual Planning process. This will reduce the
number of estimation meetings required and improve
consistency of estimation within the programme.
Planning TOR Revised estimates to be provided with TOR and signed
off by Project Manager, Project Sponsor and IS
Applications Management.
Business
PPAR Revised estimates signed off as part of PPAR.
Analysis
Systems
Analysis And PPDR Revised estimates signed off as part of PPDR.
Design
Implementation
Build Revised estimates signed off with Implementation Plan.
Plan
Acceptance Sign Revised estimates signed off as part of Acceptance
Acceptance
Off Review Sign Off Review.
Deployment Sign Revised estimates signed off as part of Deployment
Deployment
Off Review Sign Off Review.
Actuals and estimates to be reviewed and reasons for
divergence recorded as part of Closure Review. This is
Closure Closure Review an important means of reviewing and improving the
estimation process and building up a 'lesson learnt'
database for Applications Projects.

Table 2 Signing Off Estimates Within The Project Methodology

Project Planning And Resourcing

Basics

Project risks must be properly managed. There are many risks which can apply to projects
which estimation techniques cannot ever adequately address. These include:

• Unrealistic expectations of costs or timescales.


• Unstable business requirements.
• Lack of commitment from project stakeholders.
• Poor project management or technical skills.
• Unclear roles and responsibilities

If any of these problems exist they should be addressed before the project is started!

All projects must have a Task Plan or Gantt Chart. This may be produced using Microsoft
Project or a similar package, e.g. Microsoft Excel can also be used to produce an adequate
plan. The Gantt Chart is used record the tasks, their estimated durations (including task and
project contingencies) and any dependencies. The Task Plan is fundamental to determining an
appropriate resourcing strategy for the project.

Projects must have appropriate change control mechanism. There is no point in estimating and
then allowing the scope to change so that those estimates are no longer valid. The Project Issue
and Change Control Log (PICCL) must be used to record all changes and used to ensure the
that impact of the change on cost and duration is fully considered, and the corresponding
estimates revised, before the change is approved.
Resourcing Strategy - Dedicated Resources

Recent project management literature has discussed how best to deliver projects in matrix
managed environments. This literature has identified the characteristics of optimally managed
projects as:

• Task plans and estimates are produced and maintained.


• A dedicated team of resources are assigned 100% to the project.
• Multitasking of development staff with other projects is minimised or, ideally, eliminated.
• Customer and technical inputs are coordinated to achieve maximum effectiveness.
• Project value is increased through the effective interaction of professional staff.
• There is a clear enterprise wide priority for the project which can be referred to to resolve
any resource conflicts which may arise.
• Regular contact between the Project Manager and Resource Managers is maintained to
provide rapid resolution of resource issues.

Project Managers should strive constantly to bring their projects into line as far as possible with
this model and book resources to the project, or as significant parts of the project as is possible,
rather than individual tasks. Applications projects for which this approach is particularly
recommended will typically have one or more of the following characteristics:

• Require in excess of 150 Days IS staff resources.


• Be categorised as "Essental" or "Funded"
• Have a hard milestone.
• Can be managed as a joint and closely interacting team of IS and customer staff.

The Project Manager can indicate the requirement for "dedicated" resources as part of the
Project Proposal and TOR.

Resourcing Strategy - Non Dedicated Resources

For most Applications projects it will not be possible for the Project Manager to secure dedicated
resources. For these projects and task estimates, including 95% confidence levels or
contingencies as appropriate, are used to assign resources on a task by task basis.

However with this approach the Project Manager must be aware of a number of factors which
can prevent the effective deployment of resources and threaten the overall success of the
project:

• "Multi-Tasking" - the Developer has been forced to juggle priorities and resources are
spread too thinly. As a result he/she switches from task to task reducing productivity,
chewing up the available time and reducing the quality of the task deliverable.
• "Procrastination Syndrome" - the Developer interprets the contingency as additional
time to finish a task that they think they could do in less. If problems occur with other
work this may be given priority and they don't make a start on the task until too late.
There is now no safety margin and the task may be late.
• "Early Completion Syndrome" - there is little reward for early completion, in fact if the
Developer provided the original estimate they may find their future estimates reduced. In
the absence of any incentives to do otherwise the Developer uses the time saved to
undertake additional testing or make the solution more elegant. As a result the best
outcome available is to finish on time.

The key to successfully managing and reducing these problems is communication. Early
identification of potential problems by the development team, Project Manager and/or the
customer is essential. To promote successful communication it is strongly recommended that
the Project Manager identify staff to fulfil the following key technical roles at the outset of the
project:

• Senior Analyst Developer


• Technical Architect
• Production Management Coordinator
• IS Service Owner(s)

Once identified the staff resources are secured by means of a 10% resource booking the
relevant Resource Manager. The resource bookings will promote a team culture and provide
more flexibility for the Project Manager to secure these key resources for meetings and other
project activities. This approach is accommodated with the overall estimate as staff will only
record time to the project for actual work done.

Resource Booking and Utilisation

There are always factors which prevent staff from working full time on a project, e.g.
meetings, admin tasks and other non project based activities. It is important that 80%
utilisation is assumed when booking resources to manage the impact of these
interruptions on project schedules. Applying this rule we assume that every 5 days
worked elapsed will provide approximately 4 days project activity. This allowance is
independent of any other factors included in estimates.

You might also like