0% found this document useful (0 votes)
7 views99 pages

4.1 Project Planning and Scheduling

Uploaded by

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

4.1 Project Planning and Scheduling

Uploaded by

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

Software Project Planning

MODULE 4
Overview

 Step Wise project planning framework


 Preparation of a software project plan
 Planning and scheduling the activities in
software project management
 Various approaches towards activity
plan
 Various scheduling techniques such as
sequencing and CPM

Software Project Management 3


Software Project Management 4
Step Wise – An Overview
(cont’d)
 Step 0: Select project
 Step 1: Identify project scope and
objectives
 Step 2: Identify project infrastructure
 Step 3: Analyze project characteristics
 Step 4: Identify project products and
activities

Software Project Management 5


Step Wise - An Overview
(cont’d)
 Step 5: Estimate effort for each activity
 Step 6: Identify activity risks
 Step 7: Allocate resources
 Step 8: Review/publicize plan
 Step 9: Execute plan
 Step 10: Execute lower levels of
planning

Software Project Management 6


Step 1: Identify Project
Scope and Objectives
 Step 1.1 Identify objectives and
practical measures of the effectiveness
in meeting those objectives
 Step 1.2 Establish a project authority
 To ensure the unity of purpose among all
persons concerned

Software Project Management 7


Step 1: Identify Project
Scope Objectives (cont’d)
 Step 1.3 Identify all stakeholders
in the project and their interests
 Step 1.4 Modify objectives in the
light of stakeholder analysis
 Step 1.5 Establish methods of
communication between all
parties

Software Project Management 8


Step 2: Identify Project
Infrastructure
 Step 2.1 Identify relationship between
the project and strategic planning
 To determine the order of related projects
(in the organization) being carried out
 To establish a framework within which
the system fits
 To ensure the hardware and software
standards are followed

Software Project Management 9


Step 2: Identify Project
Infrastructure (cont’d)
 Step 2.2 Identify installation
standards and procedures
 more appropriate name: “Identify
standards and procedures related
to the software project”
 Step 2.3 Identify project team
organization

Software Project Management 10


Step 3: Analyse Project
Characteristics
 Step 3.1 Distinguish the project as either
objective-driven or product-driven
 Step 3.2 Analyze other project
characteristics (including quality-based
ones)
 Step 3.3 Identify high level project risks
 Step 3.4 Take into account user
requirements concerning
implementation

Software Project Management 11


Step 3: Analyse Project
Characteristics (cont’d)
 Step 3.5 Select general lifecycle approach
in the light of the above
 Step 3.6 Review overall resource
estimates
Up to this stage,
 the major risks of the project are identified

 the overall approach of the project is decided

So, it is a good place to re-estimate the required


effort and other resources for the project

Software Project Management 12


Step 4: Identify Project
Products and Activities
 Step 4.1 Identify and describe project
products
 Identify all the products related to the project
 Account for the required activities
 Step 4.2 Document generic product flows
 To document the relative order of the products
 Step 4.3 Recognize product instances

Software Project Management 13


Step 4: Identify Project
Products and
Activities(cont’d)
 Step 4.4 Produce an ideal activity network

Activity network shows the tasks that have to
be carried out as well as their sequence of
execution for the creation of a product from
another
 Step 4.5 Modify the ideal to take into
account need for stages and checkpoints
 To check compatibility of products of previous
activities

Software Project Management 14


Step 5: Estimate Effort for
Each Activity
 Step 5.1 Carry out bottom-up
estimates
 need to estimate staff effort, time for
each activity, and other resources
 Step 5.2 Revise plan to create
controllable activities
 need to break a task into a series of
manageable sub-tasks

Software Project Management 15


Step 6: Identify Activity
Risks
 Step 6.1 Identify and quantify the
risks of each activity
 Step 6.2 Plan risk reduction and
contingency measures where
appropriate
 Step 6.3 Adjust overall plans and
estimates to take account of risks

Software Project Management 16


Step 7: Allocate Resources
(Staffing)
 Step 7.1 Identify and allocate resources
 type of staff needed for each activity
 staff availabilities are identified
 staff are provisionally allocated to task
 Step 7.2 Revise plans and estimates to
take into account resource constraints
 staffing constraints
 staffing issues

Software Project Management 17


Step 8: Review/publicize
Plan
 Step 8.1 Review quality aspects of the
project plan
 To ensure each activity is completed with
a quality product
 Each activity should have ‘exit
requirements.
 This ensures the quality of the product on
each activity.

Software Project Management 18


Step 8: Review/publicize
Plan (cont’d)
 Step 8.2 Document plans and
obtain agreement
 all parties understand and agree to
the commitments in the plan

Software Project Management 19


Aside – When to plan
 Planning is an on-going process of
refinement
 Planning at different stages of the
project has different emphases and
purposes

Software Project Management 20


Project Vs Activity
 A project is composed of a number
of related activities
 A project may start when at least
one of its activities is ready to start
 A project will be completed when
all of its activities have been
completed

Software Project Management 21


Project Vs Activity (cont’d)
 An activity must have a clear start
and a clear stop
 An activity should have a duration
that can be forecasted
 Some activities may require that
other activities are completed
before they can begin

Software Project Management 22


Activity Planning
 A project plan is a schedule of activities
indicating the start and stop for each
activity
 Also provide the project and resource
schedules
 The start and stop of each activity should
be visible and easy to measure
 Each activity should have some
‘deliverables’ for ease of monitoring

Software Project Management 23


Activity Planning (cont’d)
 During planning, managers consider:

Resource availability

Resource allocation

Staff responsibility

Project Monitoring

Cash flow forecasting

Re-planning of the project towards the
pre-defined goal
Software Project Management 24
Other Objectives of
Activity Planning
 Feasibility assessment
 Resource allocation
 Detailed costing
 Motivation
 Co-ordination

Software Project Management 25


Different Levels of Plans
 Project Schedule: a plan that shows
1. the dates when each activity should
start and stop
2. when and how much of the resources
will be required
 Activity Plan: a plan that describes
 how each activity will be undertaken

Software Project Management 26


Project Schedule in 4
Stages

 Ideal Activity Plan


 An activity plan without any
constraints
 Risk consideration for each activity
 Resource consideration for whole
project
 Schedule production and
publication
Software Project Management 27
Various Approaches
Towards Identifying
Activity
 Activity-based approach
 Product-based approach
 Hybrid approach

Software Project Management 28


Activity-based Approach
 Use Work Breakdown Structure
(WBS) to generate a task list
 WBS involves
 identifying the main tasks
 break each main task down into
subtasks
 The subtasks can further be broken
down into lower level tasks.

Software Project Management 29


 Creating a list of activities that the
project is thought to involve. This
includes brainstorming from
team members and analysis of
past projects.

 For a large software project, it is


good to subdivide the project into
the main life cycle phases and
list the activities accordingly.

Software Project Management 30


Issues in WBS:
1.If there are too many levels, there
will be a large number of small
tasks. This will be difficult to
manage.
2.If there are too little levels (the

WBS is too shadow), the details for


project control would be
insufficient.
Software Project Management 31
Activity-based Approach
(cont’d)
W ork B reakdow n S tructure (an extract)

S oftw are
project

R equirem ents S ystem C oding Testing


A nalysis D esign

D ata P rocess
D esign D esign

Software Project Management 32


Activity-based Approach
(cont’d)
 Advantages
 More likely to obtain a task catalogue
that is complete and is composed of
non-overlapping tasks
 WBS represents a structure that can
be refined as the project proceeds
 The structure already suggests the
dependencies among the activities

Software Project Management 33


Activity-based Approach
(cont’d)
 Disadvantage
 Very likely to miss some activities if
an unstructured activity list is used

Software Project Management 34


Product-based Approach
 Product Breakdown Structure
(PBS)
 To show how a system can be
broken down into different products
for development
 Product Flow Diagram (PFD)
 To indicate, for each product, which
products are required as ‘inputs’

Software Project Management 35


Product-based Approach
(cont’d)
 Advantages
 Less likely to miss a product
unexpectedly from a PBS

Software Project Management 36


Product-based Approach –
An example
A Product Breakdown Structure (an extract)

Inventory
Control

Inventory Item Management


Databases Processing Reporting

Item Vendor Item Item Item Sales


Database Database Purchasing Sales Reporting Reporting

Item Item Item Invoicing Sales Order


Addition Deletion Modification subsystem Processing

Software Project Management 37


Hybrid Approach
 A mix of the activity-based
approach and the product-based
approach
 More commonly used approach
 The WBS consists of
 a list of the products of the project;
and
 a list of activities for each product
Software Project Management 38
Hybrid Approach (cont’d)
Software Project

System Installation Software com ponent User m anual User T raining

Analyse requirem ents Review requirem ents Analyse requirem ents Design course

Detailed design O utline design Design m anual W rite m aterials

Integrate system Detailed design Docum ent m anual Print course m aterials

Test system Code software Capture screens Training

Deliver system Test software Print M anual

Software Project Management 39


Hybrid Approach (cont’d)
 IBM in its MITP (Managing the Implementation of Total
Project) methodology suggests 5 levels
 Level 1: Project
 Level 2: Deliverables (software, manuals etc)
 Level 3: Components (key work items lead to the
production of the deliverables)
 Level 4: Work-packages (major work items or
collection of related tasks to produce a component)
 Level 5: Tasks (individual responsibility)
Software Project Management 40
Planning and Scheduling
the Activities
 Once we have a project plan (or,
project schedule), we need to
schedule the activities in a project
taking into account the resource
constraints

Software Project Management 41


Scheduling Techniques
 Simple sequencing
 Suitable for small projects
 Critical Path Method (CPM)
 Suitable for large software projects
 The most commonly used
“networking” technique

Software Project Management 42


Simple sequencing
 A simple sequencing of the tasks and
the responsible personnel taken into
account of the resources
 Easily presented in a simple bar chart
 see figure 6.6 in Hughes book
 Suitable for allocating individuals to
particular tasks at an early stage

Software Project Management 43


Critical Path Method (CPM)
 Primary objectives:
 Planning the project so that it can be
completed as quickly as possible
 Identifying those activities where their
delays is likely to affect the overall
project completion date
 Developed by Du Pont Chemical
Company and published in 1958

Software Project Management 44


Critical Path Method
(cont’d)
 Capture the activities and their
inter-relationships using a graph
 Lines are used to represent the
activities
 Nodes are used to represent the start
and stop of activities

Software Project Management 45


Critical Path Method
(cont’d)
 Adding time dimension
 The forward pass

calculate the earliest start dates of the
activities

To calculate the project completion date
 The backward pass

calculate the latest start dates for
activities

identify the critical path from the graph

Software Project Management 46


Critical Path Method
(cont’d)
 Identifying critical path and
critical event
 Critical event: an event that has
zero slack
 Critical path: a path joining those

critical events

Software Project Management 47


Example to construct a
CPM
Id. Activity Name Duration Precedents
(weeks)
A Hardware selection 7
B Software design 4
C Hardware 6 A
Installation
D Coding 4 B
E Data Preparation 5 B
F User Documentation 9
G User Training 5 E,F
H System Installation 3 C,D

Software Project Management 48


Example to construct a
CPM (cont’d)
Event Number

3
Earliest start 1 7 Latest start date
date 6

Slack

Software Project Management 49


Example to construct a
CPM (cont’d)
2
7 7
0 C=6
A=7

1 B=4 3 D=4 4 H=3 6


0 0 4 6 13 13 16 16
0 2 0 0
E=5

F=9 5 G=5
9 11
2

Software Project Management 50


Activity Float
 Time allowed for an activity to delay
 3 different types:

Total float (without affecting the completion
of the project)
= latest start date – earliest start date

Free float (without affecting the next activity)
= earliest start date of next activity – latest
end date of previous activity

Interfering float (= total float - free float)

Software Project Management 51


Significance of critical path
 During planning stage
 Shortening the critical path will
reduce the overall project duration
 During management stage
 Pay more attention to those activities
which fall in the critical path

Software Project Management 52


Work Breakdown Structure (WBS)
• The WBS represents a logical decomposition
of the work to be performed and focuses on
how the product, service, or result is naturally
subdivided. It is an outline of what work is to
be performed.
LEVEL ELEMENT DESCRIPTION
1 Project
2 Category
3 Subcategory
4 Sub-Subcategory
5 Work Package
WBS
• Upper two or three levels
– require only general knowledge
– don’t get too detailed too quickly
• The deeper you go, the more knowledge you
need
• Bottom level tasks:
• simple enough to estimate durations
• can assign crews
• each task has a natural sequence relative to other tasks
Deliverables and Milestones
• Deliverables
– Tangible, verifiable work products
– Reports, presentations, prototypes, etc.

• Milestones
– Significant events or achievements
– Acceptance of deliverables or phase completion
– Cruxes (proof of concepts)
– Quality control
– Keeps team focused
Work Package
Developing the WBS
Example Work Breakdown Schedule
The WBS Should Follow the Work Package
Concept
Work Breakdown Structure
• Work Breakdown Structure (WBS)- used to decompose a
given task set recursively into small activities
61
62
63
Responsibility Matrix

• Intersection of WBS and organization


structure
• Rows = persons or functional positions
• Columns = work tasks or packages for which
each personnel is responsible
• Useful for monitoring and control
64
65
66
67
Activity Network
• Activity network shows
 Different activities
 Estimated durations
 Interdependencies
Network Diagrams
• Network diagrams are the preferred technique
for showing activity sequencing.

• A network diagram is a schematic display of


the logical relationships among, or sequencing
of, project activities.

• Two main formats are the arrow and


precedence diagramming methods.
Information Technology Project Management, Fourth
69 Edition
Activity Network Diagram for Project X

70
Techniques of Scheduling
• CPM
• PERT
• GANTT
The PERT/CPM Approach for
Project Scheduling

• The PERT/CPM approach to project scheduling


uses network presentation of the project to
– Reflect activity precedence relations
– Activity completion time
• PERT/CPM is used for scheduling activities
such that the project’s completion time is
minimized.

72
Critical Path Method
• It is the chain of activities that determines the
duration of the project.
• Different Parameters:
 Earliest Start (ES) Time
 Latest Start (LS) Time
 Earliest Finish (EF) Time
 Latest Finish (LF) Time
 Slack Time (ST) = LS-ES, equivalently can be written as LF-EF
 Critical task is one with a zero slack time
 Path from start to finish containing only critical task is critical
path
Identifying the Activities of a Project

• To determine optimal schedules we need to


– Identify all the project’s activities.
– Determine the precedence relations among activities.
• Based on this information we can develop
managerial tools for project control.

74
Identifying Activities, Example

KLONE COMPUTERS, INC.

• KLONE Computers manufactures personal computers.

• It is about to design, manufacture, and market the


Klonepalm 2000 palmbook computer.

75
KLONE COMPUTERS, INC

• There are three major tasks to perform:


– Manufacture the new computer.
– Train staff and vendor representatives.
– Advertise the new computer.
• KLONE needs to develop a precedence relations
chart.
• The chart gives a concise set of tasks and their
immediate predecessors.
76
KLONE COMPUTERS, INC
Activity
Activity Description
Description
AA Prototype
Prototypemodel
modeldesign
design
BB Purchase
Purchaseofofmaterials
materials
Manufacturing
Manufacturing CC Manufacture
Manufactureofofprototype
prototypemodel
model
activities
activities DD Revision
Revisionofofdesign
design
EE Initial
Initialproduction
productionrun
run
FF Staff
Stafftraining
training
Training
Trainingactivities
activities GG Staff
Staffinput
inputononprototype
prototypemodels
models
HH Sales
Salestraining
training
Advertising
Advertisingactivities
activities II Pre-production
Pre-productionadvertising
advertising
campaign
campaign
JJ Post-redesign
Post-redesignadvertising
advertisingcampaign
campaign 77
KLONE COMPUTERS, INC

From the activity description chart,


we can determine immediate
predecessors for each activity.

Activity A is an immediate predecessor


A B of activity B, because it must be competed
just prior to the commencement of B.

78
Precedence
Relationships Chart

Immediate Estimated
Activity Predecessor Completion Time
A None 90
B A 15
C B 5
D G 20
E D 21
F A 25
G C,F 14
H D 28
I A 30
79
J D,I 45
KLONE COMPUTERS, INC. - Continued

• Management at KLONE would like to schedule the


activities so that the project is completed in minimal time.
• Management wishes to know:
– The earliest and latest start times for each activity which will not
alter the earliest completion time of the project.
– The earliest finish times for each activity which will not alter this
date.
– Activities with rigid schedule and activities that have slack in their
schedules.

80
Earliest Start Time / Earliest Finish Time

• Make a forward pass through the network as follows:


– Evaluate all the activities which have no immediate
predecessors.
• The earliest start for such an activity is zero ES = 0.
• The earliest finish is the activity duration EF = Activity duration.
– Evaluate the ES of all the nodes for which EF of all the
immediate predecessor has been determined.
• ES = Max EF of all its immediate predecessors.
• EF = ES + Activity duration.
– Repeat this process until all nodes have been evaluated
• EF of the finish node is the earliest finish time of the project.
81
Earliest Start / Earliest Finish –
Forward Pass

90,105 105,110 170


149,170
B C E
B C E
15 5 21

110,124
0,90 90,115 115,129 129,149 177
149,177
A F G D H 194
A F G D H
90 25 14 20 28
EARLIEST FINISH
120,165
90,120 194
149,194
I J
I J
30 45
82
Latest start time / Latest finish time

• Make a backward pass through the network as


follows:
– Evaluate all the activities that immediately precede the
finish node.
• The latest finish for such an activity is LF = minimal project
completion time.
• The latest start for such an activity is LS = LF - activity duration.
– Evaluate the LF of all the nodes for which LS of all the
immediate successors has been determined.
• LF = Min LS of all its immediate successors.
• LS = LF - Activity duration.
– Repeat this process backward until all nodes have been
evaluated.
83
Latest Start / Latest Finish –
Backward Pass
149,170
105,110 173,194
90,105
B C 110,115 E
95,110 B C E
15 5 21

90,115 115,129 129,149 149,177


90, 115 115,129 129,149
153,173 166,194
5,95 0,90 129,149
129,149
A 0,90 F G 129,149 D 146,166 H
A F G 129,149 20 D H 194
90 25 14 28
129,149
129,149
129,149
29,119
149,194
90,120
149,194
119,149
I J
I J
45
30
84
Slack Times

• Activity start time and completion time may be


delayed by planned reasons as well as by
unforeseen reasons.
• Some of these delays may affect the overall
completion date.
• To learn about the effects of these delays, we
calculate the slack time, and form the critical
path.
85
Slack Times

– Slack time is the amount of time an activity can be


delayed without delaying the project completion date,
assuming no other delays are taking place in the project.

Slack Time = LS - ES = LF - EF

86
Slack time in the Klonepalm 2000 Project
Activity LS - ES Slack
A 0 -0 0
B 95 - 90 5
C 110 - 105 5
D 119 - 119 0 Critical
Criticalactivities
activities
E 173 - 149 24
F 90 - 90 0 must
mustbe
berigidly
rigidly
G 115 - 115 0 scheduled
scheduled
H 166 - 149 17
I 119 - 90 29
J 149 - 149 0
87
The Critical Path
• The critical path is a set of activities that have no slack,
connecting the START node with the FINISH node.

• The critical activities (activities with 0 slack) form


at least one critical path in the network.

• A critical path is the longest path in the network.

• The sum of the completion times for the activities


on the critical path is the minimal completion time
of the project.

88
The Critical Path

90,105 105,110 149,170


95,110 B C 110,115 173,194 E
B C E
15 5 21

0,90 90,115 115,129 129,149 149,177


0,90 90, 115 115,129 129,149 166,194
A F G D H
A F G D H
90 25 14 20 28

149,194
90,120
149,194
119,149
I J
I J
45
30
89
Activity Float
• Time allowed for an activity to delay
• 3 different types:
– Total float (without affecting the completion of the project)
= latest start date – earliest start date
– Free float (without affecting the next activity)
= earliest start date of next activity – latest end date of
previous activity
– Interfering float (= total float - free float)

90
Significance of critical path
• During planning stage
– Shortening the critical path will reduce the overall
project duration
• During management stage
– Pay more attention to those activities which fall in
the critical path

91
Gantt Chart
• Gantt charts illustrate the start and finish
dates of the terminal elements and summary
elements of a project

• Gantt charts also show the dependency


relationships between activities.
Example - 1 on Gantt Chart
Example - 1 on Gantt Chart with
Critical Path
Example - 1 on Gantt Chart
Example - 1 on Gantt Chart with
Critical Path
• The length of the critical path is the sum of the
lengths of all critical tasks (the red tasks
1,2,3,4,5,7) which is 2+3+1+1.5+2+1 = 10.5
days.
PERT Chart
• Program Evaluation and Review Technique (PERT)

• Consists of a network of boxes (activities) and


arrows (task dependencies)

• Helps to identify parallel activities

• PERT estimation
Optimistic
Likely
Pessimistic
Example on PERT estimation
.

Design DB part
Code DB part
40, 45, 60
95, 105, 120
(O, L, P)

Specification Integrate & test


12, 15, 20 Design GUI part Code GUI part 100, 120, 140
20, 30, 38 38, 45, 52

Write user Finish


manual
50, 60, 70
Gantt v/s PERT
• Gantt chart is represented as a bar graph, while PERT chart is
represented as a flow chart.

• Gantt charts are limited to small projects and are not effective for
projects with more than 30 activities.

• Generally Gantt is useful for resource planning, while PERT is used


for monitoring the timely progress of activities

• Gantt chart do not efficiently represent the dependency of one


task to another, while PERT charts can manage large projects that
have numerous complex tasks a very high inter-task dependency

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy