Notes SPM Uint 3 Sem V
Notes SPM Uint 3 Sem V
Notes SPM Uint 3 Sem V
Contents:
Activity Planning: Introduction, Objectives of Activity Planning, When to Plan,
Project Schedules, Projects and Activities, Sequencing and Scheduling Activities,
Network Planning Models, Formulating a Network Model, Adding the Time
Dimension, The Forward Pass, Backward Pass, Identifying the Critical Path, Activity
Float, Shortening the Project Duration, Identifying Critical Activities, Activity-on-
Arrow Networks.
Recommended Books:
1. Software Project Management McGRAW 6th Edition, Bob Hughes, Mike
Cotterell, Rajib Mall
2. Software Project Management McGRAW 4th Edition, Bob Hughes, Mike
Cotterell, Rajib Mall
Introduction:
Scheduling:
‘Time is nature’s way of stopping everything happening at once’
Having
– worked out a method of doing the project
– identified the tasks to be carried
– assessed the time needed to do each task
need to allocate dates/times for the start and end of each activity
Objectives:
• Feasibility
• Resource allocation
• Detailed costing
• Motivation
• Coordination
Activity networks:
These help us to:
• Assess the feasibility of the planned project completion date
• Identify when resources will need to be deployed to activities
• Calculate when costs will be incurred
This helps the co-ordination and motivation of the project team
Defining activities:
Activity networks are based on some assumptions:
• A project is:
– Composed of a number of activities
– May start when at least one of its activities is ready to start
– Completed when all its activities are completed
• An activity
– Must have clearly defined start and end-points
– Must have resource requirements that can be forecast: these are
assumed to be constant throughout the project
– Must have a duration that can be forecast
– May be dependent on other activities being completed first
(precedence networks)
Identifying activities:
• Work-based: draw-up a Work Breakdown Structure listing the work items
needed.
• Product-based approach
– list the deliverable and intermediate products of project – product
breakdown structure (PBS)
– Identify the order in which products have to be created
– work out the activities needed to create the products
Hybrid approach:
The IBM MITP approach suggested the following 5 levels
• Level 1: Project
• Level 2: Deliverables
• Level 3: Components – which are key work items needed to produce the
deliverables
• Level 4: Work packages: groups of tasks needed to produce the components
• Level 5: Tasks
Finish to start: The following activity starts when the previous one has been
finished
e.g. testing starts when coding has been completed.
Start to start: When one activity starts another has to start as well
e.g. when prototype testing starts amendment documentation has to start as
well.
Finish to finish: when one activity finishes the other must finish too
e.g. when the testing of the prototype is completed so is the documentation
of any amendments. You could use these with lags e.g. documentation of the
changes to the prototype starts 1 day after the testing and finishes 2 days
after testing has been completed.
Start to finish:
In the example when the cutover to the new system takes place, the operation
of the temporary system is no longer needed. Although the cutover depends
of the acceptance testing to be completed, the implication is that the cutover
might not start straight after acceptance testing.
Start and finish times:
The time that an activity can start depends on its relationship with the other tasks in
the project. The earliest start is when the earliest of the preceding activities upon
which the current activity depends will be completed, so that the current one can
start. If it starts at this time the earliest the current activity can finish is the earliest
start plus its duration.
However, it may be that the activity, although it can start, can be delayed because
later activities do not have to start right way. This gives us a latest finish date. The
latest start date is the latest finish date less the duration of the activity.
When a student is given coursework to do they do not necessarily start it straight
away. They might note when it has got to be handed in, work out that it will only
take about three days to do - with a bit of luck - and wait until three days before the
hand-in before they start.
Example:
earliest start = day 5
latest finish = day 30
duration = 10 days
earliest finish = ?
latest start = ?
Float = LF - ES - duration
What is it in this case?
The earliest finish (EF) would be day 5 plus 10 days i.e. day 15.
The latest start (LS) would be day 30 – 10 days i.e. day 20
The float would be 30 – 5 – 10 = 15 days
This also is the same as LF – EF or LS - ES
‘Day 0’:
• Note that in the last example, day numbers used rather than actual dates
• Makes initial calculations easier – not concerned with week-ends and public
holidays
• For finish date/times Day 1 means at the END of Day 1.
• For a start date/time Day 1 also means at the END of Day 1.
• The first activity therefore begin at Day 0 i.e. the end of Day 0 i.e. the start of
Day 1
This also means activity A could finish on Day 5, for example, and a dependent
activity B could then start on Day 5 as well (not Day 6).
All this may make more sense if you think about an activities that finish and start
halfway through a particular day.
Although we talk about ‘Days’ other time units could be equally valid e.g. Hours,
weeks, months. In case of weeks point out that we usually assume 5 day working
weeks in our calculations – unless otherwise specified.
Notation:
Forward pass:
• Start at beginning (Day 0) and work forward following chains.
• Earliest start date for the current activity = earliest finish date for the previous
• When there is more than one previous activity, take the latest earliest finish
Backward pass:
• Start from the last activity
• Latest finish (LF) for last activity = earliest finish (EF)
• work backwards
• Latest finish for current activity = Latest start for the following
• More than one following activity - take the earliest LS
• Latest start (LS) = LF for activity - duration
Example: LS for all activities?
Activity Float:
Float = Latest finish - Earliest start - Duration
Float can also be calculated as the difference between the earliest and latest start
dates for an activity or the difference between the earliest and latest finish dates.
Critical path:
• Note the path through network with zero floats
• Critical path: any delay in an activity on this path will delay whole project
• Can there be more than one critical path?
• Can there be no critical path?
• Sub-critical paths
Yes, there could be more than one critical path if the two longest paths through the
network were of equal length.
Where the target completion date for the project was imposed rather than calculated
from the earliest finish dates, it might be later that the earliest finish date. In this case
there would be no chains of activities with zero floats
The durations of activities are only estimates to start with. As the project proceeds,
the estimates will be replaced by actual durations which could be different. This
could change the sequence of activities identified as the critical path. Sub-critical
paths are chains of activities, not on the planned critical path, but which have small
floats and which could easily become the critical path as the project develops.
Additional Example:
Network Analysis:
• Forward pass
• Backward pass
Critical path:
***************************
Chapter Seven
Risk management
This set of overheads looks at risk management.
The PERT risk technique is touched upon and also the critical chain concepts.
Risk management:
• Definition of ‘risk’ and ‘risk management’
• Some ways of categorizing risk
• Risk management
– Risk identification – what are the risks to a project?
– Risk analysis – which ones are really serious?
– Risk planning – what shall we do?
– Risk monitoring – has the planning worked?
• We will also look at PERT risk and critical chains
Categories of risk:
This is based on Lyytinen’s sociotechnical model of risk
• Actors relate to all those involved in the project including both developers,
users and managers e.g. a risk could be that high staff turnover leads to
information of importance to the project being lost
• Technology – both that used to implement the project and that embedded in
the project deliverables – risk could be that the technologies selected are not
in fact appropriate.
• Structure – this includes management procedures, risk here is that a group
who need to carry out a particular project task are not informed of this need
because they are not part of the project communication network
• Tasks – the work to be carried out. A typical risk is that the amount of effort
needed to carry out the task is underestimated.
A risk could be well belong to more than one of the four areas – for example,
estimates being wrong could be influenced by problems with actors (e.g. lack of
experience with a technical domain) or the structure (over optimism of managers
keen to win work).
Unrealistic time and cost Multiple estimation techniques; design to cost; incremental
estimates development; recording and analysis of past projects;
standardization of methods
‘Gold plating‘ refers to inclusion of features that in fact are unnecessary and which
end up never actually being used.
Risk prioritization:
Risk exposure (RE)
= (potential damage) x (probability of occurrence)
Ideally
Potential damage: a money value e.g. a flood would cause £0.5 millions of damage
Probability 0.00 (absolutely no chance) to 1.00 (absolutely certain) e.g. 0.01 (one in
hundred chance)
RE = £0.5m x 0.01 = £5,000
Crudely analogous to the amount needed for an insurance premium
If there were 100 people chipping in £5,000 each, there would be enough for the 1 in
100 chance of the flooding. If there were 2 floods then the system collapses!
In practice, with project risks, these quantitative approaches are usually impractical
and more qualitative approaches are used instead. See the next overhead.
R1, R2 etc refer to particular risks. They are located on the grid according to the
likelihood and impact ratings that have been allocated to them. A zone around the
top right hand corner of the grid can be designated and risks falling within that zone
are treated as requiring urgent action.
Risk planning:
Risks can be dealt with by:
• Risk acceptance
• Risk avoidance
• Risk reduction
• Risk transfer
• Risk mitigation/contingency measures
Risk acceptance – the cost of avoiding the risk may be greater than the actual
cost of the damage that might be inflicted
Risk avoidance – avoid the environment in which the risk occurs e.g. buying an
OTS application would avoid a lot of the risks associated with software
development e.g. poor estimates of effort.
Risk reduction – the risk is accepted but actions are taken to reduce its likelihood
e.g. prototypes ought to reduce the risk of incorrect requirements
Risk transfer – the risk is transferred to another person or organization. The risk of
incorrect development estimates can be transferred by negotiating a fixed price
contract with an outside software supplier.
Risk mitigation – tries to reduce the impact if the risk does occur e.g. taking
backups to allow rapid recovery in the case of data corruption
You could think in terms of the analogy to insurance. An insurance company might
reduce the fire insurance premium from £2k to £1k on condition that a fire alarm is
installed. The insured would save £1k a year by investing £500 so it would be worth
doing.
Probability chart:
An estimate of activity duration is realistically a range of values clustered around the
most likely value are trailing off on either side of this central value. How can we take
account of this in project planning? An answer might be the PERT risk technique.
Optimistic time (a) the shortest time that could be realistically be expected
Pessimistic (b) worst possible time (only 1% chance of being worse, say)
Some straightforward activities (data input of standing data might perhaps be an
example) might have little uncertainty and therefore have a low standard
deviation, while others (software design, for instance?) have more uncertainty and
would have a bigger standard deviation.
A chain of activities:
Task a M b t S
e
A 10 12 16 ? ?
B 8 10 14 ? ?
The target, in this case 52 days, is one that could be based on an externally imposed
deadline e.g. the start of the London Olympics. The STANDARDIZE calculation in
Excel can be used to calculate the Z value.
Graph of z values:
There is about a 15% chance of not meeting the target of 52 days. The Excel
NORMSDIST can be used to do this calculation.
*******************************
Chapter 8
Resource Allocation
Schedules:
• Activity schedule - indicating start and completion dates for each activity
• Resource schedule - indicating dates when resources needed + level of
resources
• Cost schedule showing accumulative expenditure
Resources:
• These include
– labour
– equipment (e.g. workstations)
– materials
– space
– services
• Time: elapsed time can often be reduced by adding more staff
• Money: used to buy the other resources
A key point is that money (by definition) is the means by which one resource can be
converted to another. However in practice this may be problematic because of
resource constraints e.g. staff need time to become expert in a new technology
regardless of the amount of money that might be available to buy expertise.
Resource allocation:
• Identify the resources needed for each activity and create a resource
requirement list
• Identify resource types - individuals are interchangeable within the group (e.g.
‘VB programmers’ as opposed to ‘software developers’)
• Allocate resource types to activities and examine the resource histogram.
Note that at this point we have to assume that we are dealing with, for example,
‘standard’ software developers who have an average productivity. When we allocate
actual people we may find that we have a trainee or a super-expert and this will
affect productivity. A short-coming in productivity in an individual might be
compensated for by a lower cost (as would be expected with trainees).
In the example in the text we start by scheduling every activity to start at the earliest
possible date. However in Lecture/Chapter 7, in the section on the critical chain
technique it was suggested that we plan to start activities as late as possible.
Whatever the starting procedure, we then need to deal with resource clashes.
Resource smoothing:
• It is usually difficult to get specialist staff who will work odd days to fill in gaps
– need for staff to learn about application etc
• Staff often have to be employed for a continuous block of time
• Therefore desirable to employ a constant number of staff on a project – who
as far as possible are fully employed
• Hence need for resource smoothing
This shows an attempt to smooth the previous resource histogram. Note that in
order to do this, we have had to. Add another week to the schedule.
Resource clashes:
• Where same resource needed in more than one place at the same time
• can be resolved by:
– delaying one of the activities
• taking advantage of float to change start date
• delaying start of one activity until finish of the other activity that
resource is being used on - puts back project completion
– moving resource from a non-critical activity
– bringing in additional resource - increases costs
Prioritizing activities:
Where more than one activity is competing for the same limited resource at the
same time then those activities need to be prioritized.
Resource usage:
• Need to maximise %usage of resources i.e. reduce idle periods between tasks
• Need to balance costs against early completion date
• Need to allow for contingency
Critical path:
The point about not adding links to the network to deal with resource constraints is
not in the text, but is based on practical experience. The notation for activity
networks does not tell you why one activity might be dependent on the completion
of another.
Allocating individuals to activities:
The initial ‘resource types’ for a task have to be replaced by actual individuals.
Factors to be considered:
• Availability
• Criticality
• Risk
• Training
• Team building – and motivation
Availability – who is free? Note that this will change during the course of the project
as some tasks are completed earlier or later than planned
Criticality – You would want to put your more experienced, ‘safer’, staff on the critical
activities.
Risk – this is similar to the point above, but some activities could be off the critical
path but still have risks e.g. to the quality of subsequent products.
Training – despite concerns about minimizing risk, it is healthy to take some risks in
order to develop staff capabilities by allocating challenging tasks to relatively
inexperienced staff.
Team-building – identifying people who work well together can pay dividends;
chopping and changing plans all the time may in theory optimize project
performance, but can in practice be demotivating for staff.
Cost schedules:
Cost schedules can now be produced:
Costs include:
• Staff costs
• Overheads
• Usage charges
Staff costs – includes not just salary, but also social security contributions by the
employer, holiday pay etc. Timesheets are often used to record actual hours spent on
each project by an individual. One issue can be how time when a staff member is
allocated and available to the project, but is not actually working on the project, is
dealt with.
Overheads e.g. space rental, service charges etc. Some overheads might be directly
attributable to the project; in other cases a percentage of departmental overheads
may be allocated to project costs.
Usage charges – some charges can be on a ‘pay as you go’ basis e.g. telephone
charges, postage, car mileage – at the planning stage an estimate of these may have
to be made
Cost profile:
This shows how much is going to be spent in each week. This could be important
where an organization allocates project budgets by financial year or quarter and the
project straddles more than one of these financial periods
Accumulative costs:
The project manager will also be concerned about planned accumulative costs. This
chart can be compared to the actual accumulative costs when controlling the project
to assess whether the project is likely to meet its cost targets.
Balancing concerns:
Successful project scheduling is not a simple sequence.
Because of the inter-linking of different concerns project planning will need to be
iterative. The consequences of decisions will need to carefully assessed and plans
adjusted accordingly.
*******************************************************************
Graded Questions :
Chapter 06
Activity Planning
1. Describe Activity networks.
2. Differentiate between Work based, Product based and Hybrid approach.
3. Differentiate between PERT (Program Evaluation Review Techniques) and CPM
(Critical Path Method).
4. What are the rules of Constructing Precedence Network? Give example.
5. What are the different types of links between activities?
6. Differentiate between Forward and Backward Pass.
7. How will you identify identifying the Critical Path in a Activity Network?
Chapter 07
Risk management
1. Define Risk Management.
2. What are the different Categories of risk?
3. What are the different Risk Management Approaches?
4. What are the different Boehm’s top 10 development risks?
5. Explain Risk planning.
6. Define Risk reduction leverage.
7. Explain Monte Carlo Simulation.
Chapter 8
Resource Allocation
1. Explain Resource allocation.
2. Explain Resource smoothing with suitable diagram.
3. Give the Burman’s priority list.
4. How do you prepare Cost schedules?