Sei sulla pagina 1di 48

Project planning and tracking

Alfonso Fuggetta
Politecnico di Milano and UCI

Alfonso Fuggetta - 1999


The need for planning
• Software development is a complex
process
• Needs to be carefully managed
– Anticipate the course of action
– Check progress
– Take corrective action is needed

Alfonso Fuggetta - 1999


Planning and tracking

Planning

Project plan Actual data

Tracking
(control)
Corrective
actions

Alfonso Fuggetta - 1999


Project planning techinques
• Work Breakdown Structure (WBS)
• Gantt charts
• PERT diagrams
• Product Breakdown Structure (PBS)

Alfonso Fuggetta - 1999


WBS
• Hierarchical decomposition of project tasks.

Details
ID Task Name
1 Initial ISO 9000 Process Work
2 Seek ISO 9000 Documents Work
3 Order Documents Work
4 Determine which standard is applicable Work
5 Hold Management Meeting - Gain Management Support Work
6 Project Leader Work
7 Define Project Leader's Role Work
8 Appoint Project Leader Work

Alfonso Fuggetta - 1999


Gantt charts
• Visual aid to represent the distribution of
project tasks over time.
ec '97 04 Jan '98 11 Jan '98
ID W T F S S M T W T F S S M T W T F S
1

Alfonso Fuggetta - 1999


PERT diagrams
• Diagram that
Order documents illustrates the
dependencies among
tasks.
Determine which document
is available

Determine Project
Leader’s Role

Appoint Project Leader

Alfonso Fuggetta - 1999


Critical path

Alfonso Fuggetta - 1999


Marking completed activities

Alfonso Fuggetta - 1999


PBS
Product

Subsystem 1 Subsystem 2 Subsystem 3

Module 11 Module 12 Module 21 Module 22

• Hierarchical decomposition of a product.


• Similar to structured charts.
Alfonso Fuggetta - 1999
Cost estimation
• Estimation of the cost and duration of the
project.
• It should be done as early as possible.
• Problem: lack of precision.

Alfonso Fuggetta - 1999


Precision of estimation

Alfonso Fuggetta - 1999


Methods and techniques
for cost estimation
• Experts’ evaluation
• Delphi
• Bottom-up approaches
• Empirical models
– COCOMO
– Function Points
• Combining methods
Alfonso Fuggetta - 1999
Underlying principle: analogy
• I can estimate the future if I have some
understanding of the past.
• All the approached try to reuse (in different
ways) past experiences in similar situations.
– What does it mean “similar”?

Alfonso Fuggetta - 1999


Experts’ evaluation
• The system to be developed is presented to
experts who provide their evaluation based
on past experiences.

Alfonso Fuggetta - 1999


Delphi
• Structure meeting to facilitate group
decision making.
– Anonymous formulation of answers to the
problem to be solved
– Synthesis by the team leader
– (Possible) reiteration

Alfonso Fuggetta - 1999


Bottom-up approaches
• Exploit WBS and PBS to evaluate the cost
of project/product.
• “It is easier to estimate the cost of a little
thing than of a big one”.
• Dual approaches: they should converge.

Alfonso Fuggetta - 1999


Function points
• Technique to compute the “size” of the
software to be developed.
• UFP (Unudjusted Function Points):
UFP = c1 × Input + c2 × Output + c3 × Inquiry
+ c4 × MasterFiles + c5 × Interfaces
• ci are constants taken from a table.

Alfonso Fuggetta - 1999


Function points table

Alfonso Fuggetta - 1999


The complete formula
• The number of Function Point is computed
by applying the following formula:
FP = UFP × TCF
– Where TCF is computed as
TCF = 0.65 × 0.01 × DI
• DI (degree of influence) is computer by
assigning a score ranging between 0 and 5
to 14 technical factors.

Alfonso Fuggetta - 1999


Technical factors in FPs

Alfonso Fuggetta - 1999


FP and different languages

Alfonso Fuggetta - 1999


Evolution of FP
• Updated counting procedures for new kind
of software (e.g., GUI).
• Feature point for process-intense software.
• Standard counting procedure promoted by
International Function Point User Group.

Alfonso Fuggetta - 1999


Critical issue with FP
• Computing the number of Function Point
can become just guessing.
• In this case, there is no added value in using
FP.

Alfonso Fuggetta - 1999


Estimating costs with FP
• The number of FP is divided by the
productivity of the company.
• These gives the total effort required to
complete the project.
• Require the collection of historical data.

Alfonso Fuggetta - 1999


The COCOMO Model
• COnstructive COst MOdel.
• Based on the analysis of a large number of
processes.
• Three models: basic, intermediate,
advanced.
• The most used is the intermediate.

Alfonso Fuggetta - 1999


The intermediate model
• Nominal effort (NE):

NE = c1 × KDSI c2

• c1 and c2 depend on the kind of software.


• NE is then multiplied by 15 technical
factors.

Alfonso Fuggetta - 1999


Effort multiplies in intermediate
COCOMO

Alfonso Fuggetta - 1999


An example: telecom sw

Alfonso Fuggetta - 1999


COCOMO 2
• Three different models of the software to be
developed:
– Application composition model (object points)
– Early design model (function points)
– Post-architectural model (FP and LOC)

Alfonso Fuggetta - 1999


Combining methods
• In most cases a combination of the different
methods are used.
• For example:
– WBS + Delphi.

Alfonso Fuggetta - 1999


Tracking projects:
earned value
• Technique to represent and consolidate the
information on the project status.
• No magic! It does not tell you if you are
late. It helps you represent the data you
must generate.

Alfonso Fuggetta - 1999


Earned value diagram

• Note: this is
%Budget just an
Mil. $
example:
40 100%
Actual
cost Planned – The project is
cost
30
late and more
20 50% expensive
Earned
value
than planned.
10

Today Time
Delay
Overcost

Alfonso Fuggetta - 1999


Earned value in MS Project

ISO9000

Project Start Date: Fri 02/01/98


Project Finish Date: Thu 30/04/98
Earned Value

I
Name BCWS BCWP ACWP SV CV EAC BAC VAC
D

1 Initial ISO 9000 Process $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00

2 Seek ISO 9000 Documents $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00

3 Order Documents $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00

4 Determine which standard is applicable $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00

5 Hold Management Meeting - Gain Management Support $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00 $0,00

Alfonso Fuggetta - 1999


BCWS
• Budgeted Cost of Work Scheduled.
• The BCWS (budgeted cost of work
scheduled) field contains the cumulative
timephased baseline costs up to the status
date or today’s date. This timephased field
shows cumulative BCWS as distributed
over time, up to the status date or today’s
date.
Alfonso Fuggetta - 1999
BCWP
• Budgested Cost of Work Performed è Earned
Value).
• The BCWP (budgeted cost of work performed)
field contains the cumulative value of the
assignment’s timephased percentage of work
complete multiplied by the assignment’s
timephased baseline cost. BCWP is calculated up
to the status date or today’s date.

Alfonso Fuggetta - 1999


ACWP
• Actual Cost of Work Performed.
• The ACWP (actual cost of work performed)
field shows costs incurred for work already
performed by all resources assigned to a
task, up to the project status date or today’s
date.

Alfonso Fuggetta - 1999


SV = BCWP – BCWS
• The SV (earned value schedule variance)
field shows the difference in cost terms
between the current progress and the
baseline plan for the assignment up to the
status date or today’s date. You can use SV
to check costs to determine whether
assignments are on schedule.

Alfonso Fuggetta - 1999


CV = BCWP – ACWP
• The CV (earned value cost variance) field
shows the difference between how much it
should have cost to achieve the current level
of completion on the assignment, and how
much it has actually cost to achieve the
current level of completion up to the status
date or today’s date.

Alfonso Fuggetta - 1999


EAC

• The Cost field shows the scheduled timephased cost for a resource
assignment, based on costs already incurred for work performed by the
resource on the task, in addition to the costs planned for the remaining
work for the assignment. This can also be referred to as estimate at
completion (EAC). This timephased field shows the cost for the
assignment as distributed over time.
• When an assignment is first made, cost is the same as remaining cost,
which is the remaining work value multiplied by the resource cost. As
actual work is reported on the assignment, Microsoft Project calculates
the cost by adding the actual cost to the remaining cost. This figure is
distributed across the scheduled duration of the assignment.
– Cost = Actual Cost + Remaining Cost

Alfonso Fuggetta - 1999


BAC
• The Baseline Cost field shows the total planned cost for work
to be performed by a resource on a task. Baseline cost is also
referred to as budget at completion (BAC).
• The baseline cost is calculated as the sum of the planned costs
of the assignment, including scheduled work, scheduled
overtime, and per-use costs for the assignment. This is the same
as the contents of the Cost field when the baseline is saved.
– Baseline Cost = (Work * Standard Rate) + (Overtime Work * Overtime
Rate) + Per Use Cost

Alfonso Fuggetta - 1999


VAC

• The Cost Variance field shows the difference


between the baseline cost and total cost for a
resource assignment on a task. This is also
referred to as variance at completion (VAC).
• Microsoft Project calculates the cost variance as
follows:
– Cost Variance = Cost – Baseline Cost
Or, in earned value terms:
Variance At Completion = Estimated At Completion –
Budgeted At Completion

Alfonso Fuggetta - 1999


Conclusions
• There are techniques that can be fruitfully
used to support project management.
• They cannot compensate a lack of
professional skills.

Alfonso Fuggetta - 1999


BCWS

%Budget
Mil. $

40 100%
Actual
cost Planned
cost
30

20 50%
Earned
10 value

Today Time

Alfonso Fuggetta - 1999


BCWP

%Budget
Mil. $

40 100%
Actual
cost Planned
cost
30

20 50%
Earned
10 value

Today Time

Alfonso Fuggetta - 1999


ACWP

%Budget
Mil. $

40 100%
Actual
cost Planned
cost
30

20 50%
Earned
10 value

Today Time

Alfonso Fuggetta - 1999


SV = BCWP - BCWS

%Budget
Mil. $

40 100%
Actual
cost Planned
cost
30

20 50%
Earned
10 value

Today Time

Alfonso Fuggetta - 1999


CV = BCWP - ACWP

%Budget
Mil. $

40 100%
Actual
cost Planned
cost
30

20 50%
Earned
10 value

Today Time

Alfonso Fuggetta - 1999

Potrebbero piacerti anche