Software Project Management: Activity Planning

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 56

Software Project Management

Activity Planning
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 2


Step Wise – An Overview

0
Select
project

1 Identify 2 Identify
project scope project
and objectives infrastructure

3
Analyse project
characteristics

to next slide
Software Project Management 3
Step Wise – An Overview (cont’d)

from previous slide

4
Identify the
Review products and activities

5
Estimate efforts
Lower for activity
level For each
detail activity
6
identify
activity risks
from next slide
to next slide
Software Project Management 4
Step Wise – An Overview (cont’d)

to previous slides from previous slide

10 7
Lower level Allocate
planning resources

9 8
Execute Review/
plan publicize plan

Software Project Management 5


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 6


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 7


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 8


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 9


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 10


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 11


Step 3: Analyse Project Characteristics
• Step 3.1 Distinguish the project as either objective-
driven or product-driven
• Step 3.2 Analyse 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 12


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 13


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 14


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 15


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 16


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 17


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 18


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 19


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 20


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 21


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 22


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 23


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 24


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 25


Other Objectives of Activity Planning
• Feasibility assessment
• Resource allocation
• Detailed costing
• Motivation
• Co-ordination

Software Project Management 26


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 27


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 28


Various Approaches Towards
Identifying Activity
• Activity-based approach
• Product-based approach
• Hybrid approach

Software Project Management 29


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 30


Activity-based Approach (cont’d)

W o rk B re a k d o w n S tru c tu re (a n e x tra c t)

S o ftw a re
p r o je c t

R e q u ir e m e n t s S y s te m C o d in g T e s t in g
A n a ly s is D e s ig n

D a ta P ro c e s s
D e s ig n D e s ig n

Software Project Management 31


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 32


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

Software Project Management 33


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 34


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

Software Project Management 35


Product-based Approach – An
example
A P r o d u c t B r e a k d o w n S tr u c tu r e ( a n e x tr a c t)

In v e n to r y
C o n tr o l

In v e n to r y Ite m M anagem ent


D a ta b a s e s P r o c e s s in g R e p o r tin g

Ite m Vendor Ite m Ite m Ite m S a le s


D a ta b a s e D a ta b a s e P u r c h a s in g S a le s R e p o r tin g R e p o r tin g

Ite m Ite m Ite m In v o ic in g S a le s O r d e r


A d d itio n D e le tio n M o d ific a tio n s u b s y s te m P r o c e s s in g

Software Project Management 36


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 37


S o ftw a re P ro je c t

S y s t e m In s t a l l a t io n S o ftw a re c o m p o n e n t U ser m anual U s e r T r a in in g

A n a ly s e r e q u ir e m e n t s R e v ie w r e q u ir e m e n t s A n a l y s e r e q u ir e m e n t s D e s ig n c o u r s e

D e t a il e d d e s ig n O u t l in e d e s ig n D e s ig n m a n u a l W r it e m a t e r ia l s

In t e g r a t e s y s t e m D e t a ile d d e s ig n D ocum ent m anual P r in t c o u r s e m a t e r ia l s

T e s t s y s te m C o d e s o ftw a re C a p tu re s c re e n s T r a in in g

D e l iv e r s y s t e m T e s t s o ftw a re P r in t M a n u a l

Software
Project
Hybrid Approach (cont’d)
• IBM in its MITP methodology suggests 5 levels
– Level 1: Project
– Level 2: Deliverables (software, manuals etc)
– Level 3: Components
– Level 4: Work-packages
– 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


Rules for constructing networks
• Project Network should have only one start
node
• Project Network should have only one end
node
• A node has duration
• Links normally have no durations
• Precedents are the immediate preceding
activities.
Software Project Management 45
Rules for constructing networks
contd.
• Time moves from left to right
• Network may not contain loops
• A network should not contain dangles i.e.
which activities are added as an afterthought

Software Project Management 46


Labeling conventions
• BS 4335 standard
Earliest start Duration Earliest finish

Activity label, activity description

Latest start Float Latest finish

Software Project Management 47


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 48


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 49


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 50


Critical Path Schedule

Software
Project
Critical Path schedule

Software Project Management 52


Example to construct a CPM
Id. Activity Name Duration (weeks) Precedents
A Hardware selection 7
B Software design 4
C Hardware Installation 6 A
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 53


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

3
Earliest start 1 7 Latest start date
date 6

Slack

Software Project Management 54


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 55
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 56


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 57

You might also like