MG6088 SOFTWARE PROJECT MANAGEMENT
UNIT – III
Dr.A.Kathirvel, Professor and Head, Dept of CSE
M.N.M Jain Engineering College, Chennai
UNIT I
ACTIVITY PLANNING AND RISK MANAGEMENT
Objectives of Activity planning – Project schedules –
Activities – Sequencing and scheduling – Network
Planning models – Forward Pass & Backward Pass
techniques – Critical path (CRM) method – Risk
identification – Assessment – Monitoring – PERT
technique – Monte Carlo simulation – Resource
Allocation – Creation of critical patterns – Cost
schedules.
TEXT BOOK
Bob Hughes, Mike Cotterell and Rajib Mall: Software Project
Management – Fifth Edition, Tata McGraw Hill, New Delhi, 2012.
Objectives of Activity planning
 Activity planning is also the project management plan preparation. It
is called Software Project Management Plan(SPMP).
 Objectives
 Feasibility assessment
 Resource allocation
 Motivation to team
 Effective utilization of human resources
 Effective time management
 Project costing
 Project tracking
 RMMM activities
3
Project schedules
‘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
4
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
5
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
6
Hybrid approach
A Work Breakdown Structure based on deliverables
7
8
The final outcome of the planning process
A project plan as a bar chart
ACTIVITIES SEQUENCING AND SCHEDULING
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
9
Some definitions of risk
‘the chance of exposure to the adverse consequences of
future events’ PRINCE2
 Project plans have to be based on assumptions
 Risk is the possibility that an assumption is wrong
 When the risk happens it becomes a problem or an issue
10
Categories of risk
11
A framework for dealing with risk
The planning for risk includes these steps:
 Risk identification – what risks might there be?
 Risk analysis and prioritization – which are the
most serious risks?
 Risk planning – what are we going to do about
them?
Risk monitoring – what is the current state of the
risk?
12
Risk identification
Approaches to identifying risks include:
 Use of checklists – usually based on the
experience of past projects
 Brainstorming – getting knowledgeable
stakeholders together to pool concerns
 Causal mapping – identifying possible chains
of cause and effect
13
14
Boehm’s top 10 development risks
Risk Risk reduction techniques
Personnel shortfalls Staffing with top talent; job matching; teambuilding;
training and career development; early scheduling
of key personnel
Unrealistic time and cost
estimates
Multiple estimation techniques; design to cost;
incremental development; recording and analysis
of past projects; standardization of methods
Developing the wrong
software functions
Improved software evaluation; formal specification
methods; user surveys; prototyping; early user
manuals
Developing the wrong
user interface
Prototyping; task analysis; user involvement
14
15
Boehm’s top ten risk - continued
Gold plating Requirements scrubbing, prototyping,
design to cost
Late changes to
requirements
Change control, incremental development
Shortfalls in externally
supplied components
Benchmarking, inspections, formal
specifications, contractual agreements, quality
controls
Shortfalls in externally
performed tasks
Quality assurance procedures, competitive
design etc
Real time performance
problems
Simulation, prototyping, tuning
Development
technically too difficult
Technical analysis, cost-benefit analysis,
prototyping , training
15
16
Causal mapping
16
Causal mapping - interventions
17
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
18
Risk probability: qualitative descriptors
Probability
level
Range
High Greater than 50% chance of happening
Significant 30-50% chance of happening
Moderate 10-29% chance of happening
Low Less than 10% chance of happening
19
20
Qualitative descriptors of impact on cost and
associated range values
Impact level Range
High Greater than 30% above budgeted
expenditure
Significant 20 to 29% above budgeted
expenditure
Moderate 10 to 19% above budgeted
expenditure
Low Within 10% of budgeted
expenditure.
20
21
Probability impact matrix
21
Risk planning
Risks can be dealt with by:
 Risk acceptance
 Risk avoidance
 Risk reduction
 Risk transfer
 Risk mitigation/contingency measures
22
Risk reduction leverage
❑ Risk reduction leverage =
(REbefore- REafter)/ (cost of risk reduction)
❑ REbeforeis risk exposure before risk reduction e.g. 1%
chance of a fire causing £200k damage
❑ REafter is risk exposure after risk reduction e.g. fire
alarm costing £500 reduces probability of fire
damage to 0.5%
❑ RRL = (1% of £200k)-(0.5% of £200k)/£500 = 2
❑ RRL > 1.00 therefore worth doing
23
Probability chart
24
Using PERT to evaluate the effects of uncertainty
Three estimates are produced for each activity
 Most likely time (m)
 Optimistic time (a)
 Pessimistic (b)
 ‘expected time’ te = (a + 4m +b) / 6
 ‘activity standard deviation’ S = (b-a)/6
25
26
A chain of activities
Task A Task B Task C
Task a m b te s
A 10 12 16 ? ?
B 8 10 14 ? ?
C 20 24 38 ? ?
26
A chain of activities
 What would be the expected duration of the chain
A + B + C?
 Answer: 12.66 + 10.33 + 25.66 i.e. 48.65
 What would be the standard deviation for A + B+ C?
 Answer: square root of (12 + 12 + 32) i.e. 3.32
27
Assessing the likelihood of meeting a target
 Say the target for completing A+B+C was 52 days (T)
 Calculate the z value thus
z = (T – te)/s
 In this example
z = (52-48.33)/3.32 i.e. 1.01
 Look up in table of z values
– see next overhead
Graph of z values
28
What is Monte Carlo (MC) method ?
The Monte Carlo method is a numerical method
for statistical simulation which utilizes sequences
of random numbers to perform the simulation
29
What the meaning of MC simulation?
❑MC simulation is a versatile tool to analyze
and evaluate complex measurements
❑ Constructing a model of a system.
❑Experimenting with the model to
draw inferences of the system’s behavior
30
A simulation model
Decision and
uncontrollable
variables
Simulation
model
Measures of
performance or
behaviour of the
system
Inputs outputs
31
A simulation model cont..
 Model inputs capture the environment of the problem
 The simulation model
Conceptual model: set of assumptions that define
the system
Computer code: the implementation of the
conceptual model
 Outputs describe the aspects of system behaviour that we
are interested in
32
Random numbers
❑ Uniform Random numbers or pseudo-random numbers
(PRN) are essentially independent random variables
uniformly Distributed over the unit interval (0,1).
❑ The PRNs are good if they are uniformly distributed,
statistically independent and reproducible.
33
Linear congruential generator
 Generating a random sequence of numbers
{X1,X2,…….,Xk} of length M over the interval [0,M-1]
Xi=mod(AXi-1+C,M)
R=Xi/M
♠♠♠ mod(b,M)=b-int(b/M)*M
● Starting value X0 is called “seed”
●M,A and C are nonnegative integers known
Modulus, multiplier and increment, respectively
●M is must be prime number(2³¹-1,2 -1,…..)
34
Classic Example



44
2
2
==


r
r
circleofarea
squareofarea
Find the value of ?
Use the reject and accept method
Or hit and miss method
The area of square=(2r)²
The area of circle = r²
squareofarea
circleofarea


= *4
35
Cont…dotsofnumbertotal
circleinsidedotsof
squareofarea
circleofarea
...
...#.
..
..
=
Hit and miss algorithm
♣ Generate two sequences of N of PRN :: Ri,,Rj
♣ Xi=-1+2R i
♣ Yj=-1+2R j
♣ Start from s=zero
♣ If (X²+Y²<1) s=s+1
♣ # of dots inside circle=s
♣ total number of dots=N
NS /*4=
36
Monte Carlo Integration
♥ Hit and miss method
♥ Sample mean method
♥ importance sampled method
37
Critical chain approach
One problem with estimates of task duration:
 Estimators add a safety zone to estimate to
take account of possible difficulties
 Developers work to the estimate + safety zone,
so time is lost
 No advantage is taken of opportunities where
tasks can finish early – and provide a buffer
for later activities
38
Critical chain approach
One answer to this:
 Base targets on midpoints (i.e. te)
 Accumulate 50% of the safety zones
(between te and b) into a buffer at the end
of the project
 Work backwards and start all activities at
their latest start dates
 During project execution use relay race
model
39
Scheduling Resources and Costs
Resources and Priorities
 Project network times are not a schedule
until resources have been assigned.
◼The implicit assumption is that resources will be
available in the required amounts when needed.
◼Adding new projects requires making realistic
judgments of resource availability and project
durations.
40
Resource-Constrained Scheduling
 Resource leveling (or smoothing) involves
attempting to even out demands on resources by
using slack (delaying noncritical activities) to
manage resource utilization.
41
Types of Project Constraints
 Technical or Logic Constraints
 Constraints related to the networked sequence in which
project activities must occur.
 Physical Constraints
 Activities that cannot occur in parallel or are affected by
contractual or environmental conditions.
 Resource Constraints
 The absence, shortage, or unique interrelationship and
interaction characteristics of resources that require a
particular sequencing of project activities.
42
Classifications
 Time Constrained Project
 A project that must be completed by an imposed date.
◼ Time is fixed, resources are flexible: additional resources are
required to ensure project meets schedule.
 Resource Constrained Project
 A project in which the level of resources available
cannot be exceeded.
◼ Resources are fixed, time is flexible: inadequate resources
will delay the project.
43
Impact of Resource Constraint Scheduling
 Reduces delay but reduces flexibility.
 Increases criticality of events.
 Increases scheduling complexity.
 May make traditional critical path no longer meaningful.
 Can break sequence of events.
 May cause parallel activities to become sequential and
critical activities with slack to become noncritical.
44
Assigning Resources to tasks
 Factors to Consider in Assigning Work:
 Don’t always pick the same people for the toughest
assignments.
 Choose people with an eye to fostering their
development through participation on the project.
 Pick people with compatible work habits and
personalities but who complement each other.
 Team-up veterans with new hires to share experience
and socialize newcomers into the organization.
 Select people who may need to learn work together on
later stages of the project or other projects.
45
MG6088 SOFTWARE PROJECT MANAGEMENT

MG6088 SOFTWARE PROJECT MANAGEMENT

  • 1.
    MG6088 SOFTWARE PROJECTMANAGEMENT UNIT – III Dr.A.Kathirvel, Professor and Head, Dept of CSE M.N.M Jain Engineering College, Chennai
  • 2.
    UNIT I ACTIVITY PLANNINGAND RISK MANAGEMENT Objectives of Activity planning – Project schedules – Activities – Sequencing and scheduling – Network Planning models – Forward Pass & Backward Pass techniques – Critical path (CRM) method – Risk identification – Assessment – Monitoring – PERT technique – Monte Carlo simulation – Resource Allocation – Creation of critical patterns – Cost schedules. TEXT BOOK Bob Hughes, Mike Cotterell and Rajib Mall: Software Project Management – Fifth Edition, Tata McGraw Hill, New Delhi, 2012.
  • 3.
    Objectives of Activityplanning  Activity planning is also the project management plan preparation. It is called Software Project Management Plan(SPMP).  Objectives  Feasibility assessment  Resource allocation  Motivation to team  Effective utilization of human resources  Effective time management  Project costing  Project tracking  RMMM activities 3
  • 4.
    Project schedules ‘Time isnature’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 4
  • 5.
    Activity networks These helpus 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 5
  • 6.
    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 6
  • 7.
    Hybrid approach A WorkBreakdown Structure based on deliverables 7
  • 8.
    8 The final outcomeof the planning process A project plan as a bar chart ACTIVITIES SEQUENCING AND SCHEDULING
  • 9.
    Risk management  Definitionof ‘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 9
  • 10.
    Some definitions ofrisk ‘the chance of exposure to the adverse consequences of future events’ PRINCE2  Project plans have to be based on assumptions  Risk is the possibility that an assumption is wrong  When the risk happens it becomes a problem or an issue 10
  • 11.
  • 12.
    A framework fordealing with risk The planning for risk includes these steps:  Risk identification – what risks might there be?  Risk analysis and prioritization – which are the most serious risks?  Risk planning – what are we going to do about them? Risk monitoring – what is the current state of the risk? 12
  • 13.
    Risk identification Approaches toidentifying risks include:  Use of checklists – usually based on the experience of past projects  Brainstorming – getting knowledgeable stakeholders together to pool concerns  Causal mapping – identifying possible chains of cause and effect 13
  • 14.
    14 Boehm’s top 10development risks Risk Risk reduction techniques Personnel shortfalls Staffing with top talent; job matching; teambuilding; training and career development; early scheduling of key personnel Unrealistic time and cost estimates Multiple estimation techniques; design to cost; incremental development; recording and analysis of past projects; standardization of methods Developing the wrong software functions Improved software evaluation; formal specification methods; user surveys; prototyping; early user manuals Developing the wrong user interface Prototyping; task analysis; user involvement 14
  • 15.
    15 Boehm’s top tenrisk - continued Gold plating Requirements scrubbing, prototyping, design to cost Late changes to requirements Change control, incremental development Shortfalls in externally supplied components Benchmarking, inspections, formal specifications, contractual agreements, quality controls Shortfalls in externally performed tasks Quality assurance procedures, competitive design etc Real time performance problems Simulation, prototyping, tuning Development technically too difficult Technical analysis, cost-benefit analysis, prototyping , training 15
  • 16.
  • 17.
    Causal mapping -interventions 17
  • 18.
    Risk prioritization ❑ Riskexposure (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 18
  • 19.
    Risk probability: qualitativedescriptors Probability level Range High Greater than 50% chance of happening Significant 30-50% chance of happening Moderate 10-29% chance of happening Low Less than 10% chance of happening 19
  • 20.
    20 Qualitative descriptors ofimpact on cost and associated range values Impact level Range High Greater than 30% above budgeted expenditure Significant 20 to 29% above budgeted expenditure Moderate 10 to 19% above budgeted expenditure Low Within 10% of budgeted expenditure. 20
  • 21.
  • 22.
    Risk planning Risks canbe dealt with by:  Risk acceptance  Risk avoidance  Risk reduction  Risk transfer  Risk mitigation/contingency measures 22
  • 23.
    Risk reduction leverage ❑Risk reduction leverage = (REbefore- REafter)/ (cost of risk reduction) ❑ REbeforeis risk exposure before risk reduction e.g. 1% chance of a fire causing £200k damage ❑ REafter is risk exposure after risk reduction e.g. fire alarm costing £500 reduces probability of fire damage to 0.5% ❑ RRL = (1% of £200k)-(0.5% of £200k)/£500 = 2 ❑ RRL > 1.00 therefore worth doing 23
  • 24.
  • 25.
    Using PERT toevaluate the effects of uncertainty Three estimates are produced for each activity  Most likely time (m)  Optimistic time (a)  Pessimistic (b)  ‘expected time’ te = (a + 4m +b) / 6  ‘activity standard deviation’ S = (b-a)/6 25
  • 26.
    26 A chain ofactivities Task A Task B Task C Task a m b te s A 10 12 16 ? ? B 8 10 14 ? ? C 20 24 38 ? ? 26
  • 27.
    A chain ofactivities  What would be the expected duration of the chain A + B + C?  Answer: 12.66 + 10.33 + 25.66 i.e. 48.65  What would be the standard deviation for A + B+ C?  Answer: square root of (12 + 12 + 32) i.e. 3.32 27
  • 28.
    Assessing the likelihoodof meeting a target  Say the target for completing A+B+C was 52 days (T)  Calculate the z value thus z = (T – te)/s  In this example z = (52-48.33)/3.32 i.e. 1.01  Look up in table of z values – see next overhead Graph of z values 28
  • 29.
    What is MonteCarlo (MC) method ? The Monte Carlo method is a numerical method for statistical simulation which utilizes sequences of random numbers to perform the simulation 29
  • 30.
    What the meaningof MC simulation? ❑MC simulation is a versatile tool to analyze and evaluate complex measurements ❑ Constructing a model of a system. ❑Experimenting with the model to draw inferences of the system’s behavior 30
  • 31.
    A simulation model Decisionand uncontrollable variables Simulation model Measures of performance or behaviour of the system Inputs outputs 31
  • 32.
    A simulation modelcont..  Model inputs capture the environment of the problem  The simulation model Conceptual model: set of assumptions that define the system Computer code: the implementation of the conceptual model  Outputs describe the aspects of system behaviour that we are interested in 32
  • 33.
    Random numbers ❑ UniformRandom numbers or pseudo-random numbers (PRN) are essentially independent random variables uniformly Distributed over the unit interval (0,1). ❑ The PRNs are good if they are uniformly distributed, statistically independent and reproducible. 33
  • 34.
    Linear congruential generator Generating a random sequence of numbers {X1,X2,…….,Xk} of length M over the interval [0,M-1] Xi=mod(AXi-1+C,M) R=Xi/M ♠♠♠ mod(b,M)=b-int(b/M)*M ● Starting value X0 is called “seed” ●M,A and C are nonnegative integers known Modulus, multiplier and increment, respectively ●M is must be prime number(2³¹-1,2 -1,…..) 34
  • 35.
    Classic Example    44 2 2 ==   r r circleofarea squareofarea Find thevalue of ? Use the reject and accept method Or hit and miss method The area of square=(2r)² The area of circle = r² squareofarea circleofarea   = *4 35
  • 36.
    Cont…dotsofnumbertotal circleinsidedotsof squareofarea circleofarea ... ...#. .. .. = Hit and missalgorithm ♣ Generate two sequences of N of PRN :: Ri,,Rj ♣ Xi=-1+2R i ♣ Yj=-1+2R j ♣ Start from s=zero ♣ If (X²+Y²<1) s=s+1 ♣ # of dots inside circle=s ♣ total number of dots=N NS /*4= 36
  • 37.
    Monte Carlo Integration ♥Hit and miss method ♥ Sample mean method ♥ importance sampled method 37
  • 38.
    Critical chain approach Oneproblem with estimates of task duration:  Estimators add a safety zone to estimate to take account of possible difficulties  Developers work to the estimate + safety zone, so time is lost  No advantage is taken of opportunities where tasks can finish early – and provide a buffer for later activities 38
  • 39.
    Critical chain approach Oneanswer to this:  Base targets on midpoints (i.e. te)  Accumulate 50% of the safety zones (between te and b) into a buffer at the end of the project  Work backwards and start all activities at their latest start dates  During project execution use relay race model 39
  • 40.
    Scheduling Resources andCosts Resources and Priorities  Project network times are not a schedule until resources have been assigned. ◼The implicit assumption is that resources will be available in the required amounts when needed. ◼Adding new projects requires making realistic judgments of resource availability and project durations. 40
  • 41.
    Resource-Constrained Scheduling  Resourceleveling (or smoothing) involves attempting to even out demands on resources by using slack (delaying noncritical activities) to manage resource utilization. 41
  • 42.
    Types of ProjectConstraints  Technical or Logic Constraints  Constraints related to the networked sequence in which project activities must occur.  Physical Constraints  Activities that cannot occur in parallel or are affected by contractual or environmental conditions.  Resource Constraints  The absence, shortage, or unique interrelationship and interaction characteristics of resources that require a particular sequencing of project activities. 42
  • 43.
    Classifications  Time ConstrainedProject  A project that must be completed by an imposed date. ◼ Time is fixed, resources are flexible: additional resources are required to ensure project meets schedule.  Resource Constrained Project  A project in which the level of resources available cannot be exceeded. ◼ Resources are fixed, time is flexible: inadequate resources will delay the project. 43
  • 44.
    Impact of ResourceConstraint Scheduling  Reduces delay but reduces flexibility.  Increases criticality of events.  Increases scheduling complexity.  May make traditional critical path no longer meaningful.  Can break sequence of events.  May cause parallel activities to become sequential and critical activities with slack to become noncritical. 44
  • 45.
    Assigning Resources totasks  Factors to Consider in Assigning Work:  Don’t always pick the same people for the toughest assignments.  Choose people with an eye to fostering their development through participation on the project.  Pick people with compatible work habits and personalities but who complement each other.  Team-up veterans with new hires to share experience and socialize newcomers into the organization.  Select people who may need to learn work together on later stages of the project or other projects. 45