0% found this document useful (0 votes)
86 views51 pages

CPM Pert 2

This document discusses software project planning. It covers defining work packages and work breakdown structures to organize a project. Estimations of project size, effort, cost and schedule are also important planning tasks. Preliminary scheduling involves identifying dependencies between activities and allocating resources. Project networks can then be created to layout the sequence of work. Detailed planning develops activities, estimates durations, and analyzes the project schedule and resources.

Uploaded by

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

CPM Pert 2

This document discusses software project planning. It covers defining work packages and work breakdown structures to organize a project. Estimations of project size, effort, cost and schedule are also important planning tasks. Preliminary scheduling involves identifying dependencies between activities and allocating resources. Project networks can then be created to layout the sequence of work. Detailed planning develops activities, estimates durations, and analyzes the project schedule and resources.

Uploaded by

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

SE351a: Software Project & Process Management

W8: Software Project Planning

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa


SE351 Roadmap

9 Introduction to Software Project Management


9 Project Management
9 Software Development Life Cycles
9 Requirements Engineering
9 Software Process & Project Metrics
¾ Software Project Planning
• Project Monitoring & Control
• Risk Management
• Software Quality Assurance

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 2


Notes…

• References
ƒ Effective Project Management, R.K. Wysocki et al., John Wiley and Sons, 1995, ISBN 0-
471-36028-7
ƒ Project Management: A Systems Approach to Planning, Scheduling, and Controlling, 6th
Ed, by Harold Kerzner ISBN: 0-471-28835-7, Published: July 1997, Imprint: Wiley

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 3


CMM L2
SE351a Perspective

Project
Management
2.1 Requirements management
2.2 Software project planning & control
2.3 Software subcontract management
2.4 Software quality assurance
2.5 Software configuration management

Ad hoc

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 4


The Architecture of PMLC…
Scope the Project
State the problem or opportunity
Establish the project goal
Define the project objectives
Identify the success criteria Develop Detailed Plans
List assumptions, risks and obstacles • Identify project activities
• Estimate activity duration
¾ Determine resource requirements
¾ Construct & analyze project network
Launch the Plan
• Prepare the project proposal
Recruit and organize project team
Establish team operating rules
Level project resources
Monitor & Control Progress
Schedule work packages
Establish progress reporting system
Document work packages
Install change control process
Define problem escalation process
Monitor progress versus plan
Project Close-Out
Revise project plan
Obtain client acceptance
Install project deliverables
Complete project documentation
Complete post-implementation audit
Issue final project report

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 5


Project Management:
The Control panel

Activity Plan

Specify Design Code/test PERT


module module module
A A A Assessment
Specify Design Code/test
module module module
Specify B Check B B Integrate/
overall specifi- test
Specify Design Code/test system
system cations
module module module
C C C Expected Date
Specify Design Code/test
module module module
D D D

Cumulative Cost
Personnel

5 10
Resource Allocation Cost Schedule

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 6


Recall: Definitions

• The Work Breakdown Structure (WBS)


ƒ a deliverable-oriented grouping of the project components (products and
services) which organizes and defines the total project scope
• Work Activity
ƒ a collection of work tasks spanning a fixed duration within the schedule of a
software project
• Work Task
ƒ the smallest amount subject to management accountability
• Work Package
ƒ a specification of the work that must be accomplished to complete a work task
• Work Product
ƒ any tangible item produced during the project

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 7


Detailed WBS:
Software Lifecycle SS
Software
System (SS)
Analysis
Reqmts

SSA
Defined Software Lifecycle

Subsystem
(SSA)

SSA1
Subsystem
(SSA1)
Design

Requirements
of SSA1 Work packages

WP 1
Design of SSA1 WP 2
Code

WP 3

Code of SSA1
From WBS to
Schedule & Budget Items
SS
Software
System (SS)

SSA
Subsystem
(SSA)

SSA1
Subsystem
(SSA1)

Cost Requirements
Account of SSA1 Work packages

WP 1
WP 2
WP 3
Estimations…

• Product size, e.g., LOC, FP & FeP


• Effort & Resources
e.g., COCOMO & others
• Cost & Schedule

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 10


Preliminary Scheduling Steps

1. Identify project activities and products


ƒ An activity must have a clearly defined start and end point,
o normally marked by the production of a tangible deliverable

2. Identify dependency
Some activities may require other activities to be completed before they can begin
ƒ Establish a preliminary activity and product flow diagram

3. Allocate resources that an activity requires must be forecastable

4. Revise plan to create controllable activities

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 11


Project Networks

• A pictorial representation of the sequence in which the project work can be


done
Activity Plan
Specify Design Code/test
module module module
A A A

• Several types of project networks Specify


module
B Check
Design
module
B
Code/test
module
B Integrate/
Specify
overall specifi- test
Specify Design Code/test system
cations

Activity-on-the-Node (AON)
system module module
ƒ
module
C C C

Specify Design Code/test


module module module

Activity-on-the-Arrow (AOA)
D D D

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 12


Project Networks: Activity label Duration
Activity-on-the-Node (AON) Earliest Specify Design Earliest
Code/test
module module module
start Activity
A A A finish
Specify Design Code/test

Latest Specify
description
module
B Check
module
B
module
B Latest
Integrate/
test
finish
overall specifi-

start Specify Design Code/test system


system cations
module module module
C C C

Specify Float=
Design Code/test
Activity span module module module

(Latest finish −
D D D

Earliest finish )
Activity Precedence network (AON)
Activity Node
ƒ a directed graph with
o activities (nodes)
nodes and
o dependencies between them (directed arrows)
arrows
¾ The only activity with no predecessor is the start activity
¾ The only activity with no successor is the final activity

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 13


Example: 4 modules Project

Consider a system that will have 4 major software modules

• Develop specifications for the overall system and for each of the modules

• the specifications of each module need to be V&V together to make sure that they are
mutually consistent

• Each module needs to be designed, coded,


coded and tested,
tested and then

• all of the modules need to be integrated and tested as a system

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 14


AON: The 4 Module Project

Specify Design Code/test


module module module
A A A

Specify Design Code/test


module module module
Specify B V&V B B Integrate/
overall Specs. test
Specify Design Code/test system
system module module
module
C C C

Specify Design Code/test


module module module
D D D

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 15


Critical Path Method

• Two main objectives

ƒ Planning the project so that it is completed as quickly as possible

ƒ Identifying activities where


a delay in their execution will affect
the overall end date or later activities’ start dates

The
The most
most crucial
crucial part
part of
of the
the project
project network
network is
is the
the critical
critical path
path
the
the longest
longest time
time sequences
sequences of
of tasks
tasks in
in aa scheduling
scheduling network
network

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 16


CPM Rules

• A project network may only have one start node and one end node
• A network may not contain loops nor dangles
• Precedents are the immediate preceding activities

• Time moves from left to right

• Nodes are numbered sequentially

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 17


Activity label Duration

Critical Path Method Steps Earliest


start Activity
Earliest
finish
Latest description Latest
start finish
Float=
Activity span
(Latest finish −
Earliest finish )
Activity Node
1. A forward pass (Early Schedule)
ƒ the Earliest dates at which activities can start and the project
completed is determined

2. A backward pass (Late Schedule)


ƒ the Latest dates for the activities is determined

3. Determine the critical path of the schedule

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 18


Precedence Network: FW/BW Passes

2 4 5 9 ES
B 0 3 D 0 5 EF
Time slot
2 4 5 9 10 12
1 1
F 0 3 Duration
A 0 1
10 12
1 1
2 3 4 5
LF
C 1 2 E 4 2 LS
3 4 8 9

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 19


The Critical Path

• For any activity within the network


ƒ if LF - EF (float) equal zero
o it is on the critical path
ƒ Otherwise,
o The float describes the length of time that is possible for the activity to be
delayed from its ES time without delaying the project

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 20


Precedence Network: Critical Path Calculation

2 4 5 9
B 0 3 D 0 5
2 4 5 9 10 12
1 1
F 0 3
A 0 1
10 12
1 1
2 3 4 5
C 1 2 E 4 2
3 4 8 9

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 21


The Critical Path

ƒƒ It
It represents
represents earliest
earliest time
time required
required to
to complete
complete aa project
project

ƒƒ If
If something
something on
on the
the critical
critical path
path slips,
slips, the
the whole
whole project
project slips
slips

ƒƒ Accelerating
Accelerating tasks
tasks not
not on
on the
the critical
critical path
path
oo will
will not
not change
change the
the project
project completion
completion date
date

ƒƒ Need
Need to
to have
have the
the optimal
optimal allocation
allocation of
of resources
resources to
to its
its tasks
tasks

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 22


Float-Slack Time

• Free float
ƒ the amount of time an activity may be delayed without
o affecting the early start of any successor activities

• Total float
ƒ the amount of time an activity may be delayed without
o affecting the project completion date

When we choose to delay the start of an activity


First consider activities with free float

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 23


Project Networks:
Activity-On-the-Arrow (AOA)

• Milestone network AOA is a diagram with

ƒ Links (arrowed lines) represent activities


¾ A link has duration
ƒ Nodes (circles) represent the events
of activities starting and ending
¾ Nodes have no duration

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 24


Specify Design Code/test
module module module
A A A

Specify Design Code/test

CPM Network: 4 Module Project


module module module
Specify B Check B B Integrate/
overall specifi- test
Specify Design Code/test system
system cations
module module module
C C C

Specify Design Code/test


module module module
D D D

Event Target
number date
Design Code/test
module A module A
Specify Expected 5 Standard
module A date deviation
Specify Design Code/test
module B module B module B
Specify overall 6
system
1 2 3 4 9 10
Design Code/test
Specify Check Integrate/
module C module C
module C specifications test system
7
Specify
module D
Design Code/test
module D module C
8

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 25


PERT Charts

• PERT (Program Evaluation and Review Technique)


Technique uses three task duration estimates:

1. Most likely time (average): m


2. Optimistic time (best case): a
3. Pessimistic time (worst case): b

• The expected duration, te , is given by (1:4:1) average formula:

te = a + 4m + b
6
with Standard deviation, s , is given by: b - a
• s=
6

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 26


Estimated Durations: 4 Module Project

Estimated Estimated
Activity duration Activity duration
(days) (days)
1 Specify overall 34 9 Design module C 4
2 Specify module A 20 10 Design module D 4
3 Specify module B 15 11 Code/test module A 30
4 Specify module C 25 12 Code/test module B 28
5 Specify module D 15 13 Code/test module C 15
6 Check-specification 2 14 Code/test module D 25
7 Design module A 7 15 System integration 6
8 Design module B 6

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 27


Expected Times and Standard Deviations:
4 Module Project

Estimated duration (days)


Activity Optimistic Most Likely Pessimistic Expected Standard
(a) (m) (b) (te) (s) deviation
1 Specify overall 29 34 38 33.83 1.50
2 Specify module A 16 20 26 20.33 1.67
3 Specify module B 13 15 18 15.17 0.83
4 Specify module C 21 25 28 24.83 1.17
5 Specify module D 12 15 17 14.83 0.83
6 Check-specification 1 2 3 2.00 0.33
7 Design module A 5 7 10 7.17 0.83
8 Design module B 5 6 8 6.17 0.50

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 28


Expected Times and Standard Deviations:
4 Module Project(Cont.)

Estimated duration (days)


Activity Optimistic Most Likely Pessimistic Expected Standard
(a) (m) (b) (te) deviation (s)
9 Design module C 3 4 6 4.17 0.50
10 Design module D 3 4 7 4.33 0.67
11 Code/test module A 24 30 34 29.67 1.67
12 Code/test module B 23 28 31 27.33 1.33
13 Code/test module C 11 15 17 14.67 1.00
14 Code/test module D 22 25 29 25.17 1.17
15 System integration 4 6 8 6.00 0.67

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 29


PERT Node Specify
module A
Design
module A
5
Code/test
module A

Specify Design Code/test


module B module B module B

Specify overall 6
system
1 2 3 4 9 1
Design Code/test 0
Specify Check Integrate/
module C module C
module C specifications test system
7

Event Target Specify


module D
Design Code/test
number date module D module C
8

Expected Standard
date deviation

• Expected date: largest ∑ te


along a path leading to node

• Standard deviation of a node:


• square root of the largest sum of squares
of all standard deviations along a path leading to node

• Target date: a desired date

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 30


PERT Network: 4 Module Project

3?
54.16 2.24
t = 20.33
s = 1.67

1 t = 15.17 3?
0 t = 33.83 2
s = 1.50 s = 0.83 49.00 1.71
0 0 33.83 1.50

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 31


Z Values and Probabilities
PERT
Assessment

• For each node that has a target date, T Expected


Date

T - te
z = s

The z value can be converted to


a probability of not meeting the target date using Z graph

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 32


22 Nov., 2005
Probability of not meeting target date (%)

0
100

10
20
30
40
50
60
70
80
90
-3.25
-3.00
-2.75
-2.50
-2.25
-2.00
-1.75
-1.50
-1.25
-1.00
-0.75
vs.

-0.50
-0.25

Z value
0.00
0.25

SE351a, ECE UWO, (c) Hamada Ghenniwa


0.50
0.75
1.00
Z Value for a Normal Distribution

1.25
1.75
Probability of Not Meeting the Target Date

2.00
2.25
2.50
2.75
3.00
3.25
33
A Comparison of CPM and PERT Charts

• PERT is event oriented, which can be considered milestones


ƒ CPM emphasizes activities
• PERT is more likely to be used
ƒ in projects that have relatively high levels of uncertainty
• PERT, explicit treatment of probability for its time estimates
ƒ CPM does not

• Either network approach


ƒ should have a minimum of about 20 events
ƒ networks that are not computerized
o should be limited to less than 100 events

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 34


Gantt Charts

• In use since the early 1900’s


• Shows activities as bar charts with start and completion times
• Depicts start and stop times relative to calendar and milestones
• Typically used for high-level planning but may also show detailed
tasks
• Represents overlap between activities
• May show progress (status)

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 35


Gantt Charts

• A Gantt or bar chart is frequently used for smaller projects


ƒ Usually, less than 25 activities
• Gantt charts are easier to understand than a PERT chart or CPM

Weeks
Task 1 2 3 4 5 6 7 8

Specify module A

Specify module B

Design module A

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 36


Full Wall Charts

• Full wall charting


ƒ uses a wall sized chart
ƒ having an entire project team gather to schedule a project at one time
ƒ using post-its to represent activities and milestones
• Post-its are rearranged until the schedule is optimized
• Full wall charting requires
ƒ all participants to be in the same room at the same time
ƒ not suitable for geographically dispersed team members

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 37


Selecting a Scheduling Technique

Criteria Milestone Gantt Full Wall CPM PERT


Activities v. Event Oriented Events Activity Event Activity Event
Suitability for Large Projects Poor Poor Fair Excellent Excellent
Suitability for Small Project Good Good Poor Poor Poor
Degree of Control Very Low Low Moderate High Highest

Acceptance by unsophisticated user Best Excellent Good Fair Poor


Ease of Assembly Easiest Easy Hardest Hard Harder
Degree of Flexibility Lowest Low Moderate High Highest
Ease of Manual Calculation Easiest Easy Moderate Hard Hardest
Accuracy of Projection Fair Fair High Higher Highest
Cost to Prepare and Maintain Lowest Low Highest High Higher

Vague Project Scope Poorest Poor Fair Good Excellent


Complex Project Logic Poorest Poor Better Excellent Excellent
Critical Completion Date Fair Fair Good Good Excellent

Freq’t Progress Check Req’d Good Good Good Fair Hard

Frequent Updating Req’d Easiest Easy Hardest Hard Harder

Frequent Logic Changes Req’d Poor Poor Poor Fair Fair


Appeal to Client Good Good Excellent Excellent Excellent

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 38


Resource Allocation

Personnel
• Match the activity plan to available resources Resource Allocation

ƒ Labor, equipment, funding, ...

ƒ Develop a resource schedule


o Resource requirements over time

ƒ Develop a cost schedule


o Planned cumulative expenditure over time

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 39


Staffing Curves

• Staffing is not constant with time; large projects


there is typically a buildup, peak, and
decline in personnel level

Average Person Level


intermediate projects
• Small projects typically have
flatter manpower curves than small projects
larger projects

Percent of Schedule Completed

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 40


How Programmers Spend Their Time

Developing
programs
13%
Read Job
Programs & communication
manuals 32%
16%

Training
6%

Miscellaneous Personal
(walking, 13%
offsite, . . . )
Mail, miscellaneous
15%
documents
5%

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 41


Allocating HR…

• People: They come with different skill sets.


o The task is to match the skill sets with the tasks

Skills Skills Activities

Activities + Staff = Staff


Needs Skills Staff
Inventory Inventory Assignments

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 42


Revisit the 4 Module Project

Phase 1 Phase 2 Phase 3 Phase 4 Phase 5 Phase 6

Specify Design Code/test


module module module
A A A

Specify Design Code/test


module module module
Specify B Check B B Integrate/
overall specifi- test
Specify Design Code/test system
system cations
module module module
C C C

Specify Design Code/test


module module module
D D D

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 43


Resource Requirements:
The 4 Module Project

Phase Activity Skills Duration (days)

All Project Mgr. 104


1 1 Specify overall Senior analysts 34

2 2 Specify module A Analyst/designer 20


3 Specify module B Analyst/designer 15
4 Specify module C Analyst/designer 25
5 Specify module D Analyst/designer 15

3 6 Check-specification Senior analyst 2

4 7 Design module A Analyst/designer 7


8 Design module B Analyst/designer 6
9 Design module C Analyst/designer 4
10 Design module D Analyst/designer 4

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 44


Resource Requirements vs. Activity Plan –
Assuming Earliest Start Date

Week Number
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1
2
Activities

3
4
5
6
7
8
9
10
No. Personnel

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 45


Earliest Start Date Scheduling
Often Leads to Inefficiencies

• Earliest start date scheduling


ƒ frequently creates resource loadings that start with a peak and tail off
ƒ Changing the level of personnel over time generally adds cost to a
project
o Recruiting costs
o Training costs
ƒ Key people may be idle for periods of time

• Ideal resource loading will be smooth with,


ƒ possibly an initial build-up and phased run-down

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 46


Smoothing Resource Requirements:
Activities Rescheduling

Week Number
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
11
2 2 2
Activities

3 3

44
55
No. Personnel

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 47


Cumulative Cost
Cost Schedule
5 10
Cost Schedule

• Converting a resource schedule to a time-phased Budget


ƒ Identify required personnel
o by name and labor rate

Skills Skills Activities

Activities + Staff = Staff


Needs Skills Staff
Inventory Inventory Assignments

ƒ Factor in overhead rates


o travel, equipment costs, etc.
¾ Usually overheads are a % of direct labor costs
ƒ Convert personnel loading vs. time to budget loading vs. time
22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 48
Snippet of Cumulative &Weekly Costs:
4 Module Project
Week Number

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

$100K

$75K/15

$50K/10

$25K/5

Cumulative Cost /Weekly Cost


22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 49
Project Management:
The Control panel

Activity Plan

Specify Design Code/test PERT


module module module
A A A Assessment
Specify Design Code/test
module module module
Specify B Check B B Integrate/
overall specifi- test
Specify Design Code/test system
system cations
module module module
C C C Expected Date
Specify Design Code/test
module module module
D D D

Cumulative Cost
Personnel

5 10
Resource Allocation Cost Schedule

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 50


Smoothing Resource Requirements:
Activities Rescheduling

Week Number
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
1
2 2
Activities

3
4
5
No. Personnel

22 Nov., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 51

You might also like