0% found this document useful (0 votes)
6 views65 pages

Mod 5

The document outlines the essential components of planning a software project, emphasizing the importance of effective project management to avoid common pitfalls that lead to project failures. Key areas covered include effort estimation, scheduling, quality planning, risk management, and project monitoring. The document also discusses various estimation models and risk mitigation strategies to enhance project predictability and success.

Uploaded by

jcsoundarya
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)
6 views65 pages

Mod 5

The document outlines the essential components of planning a software project, emphasizing the importance of effective project management to avoid common pitfalls that lead to project failures. Key areas covered include effort estimation, scheduling, quality planning, risk management, and project monitoring. The document also discusses various estimation models and risk mitigation strategies to enhance project predictability and success.

Uploaded by

jcsoundarya
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/ 65

Planning a Software Project

Agenda

Background
Effort estimation
Schedule and resource estimation
Quality Planning
Risk management
Project monitoring plans

Project Planning 2
Software Project

Goal: Build a software system to


meet commitments on cost,
schedule, quality
Worldwide - many projects fail

Project Planning 3
Project Failures
Major reasons for project failures
 unclear objectives
 bad planning
 no project management methodology
 new technology
 insufficient staff
All of these relate to project management
Effective project management is key to
successfully executing a project

Project Planning 4
Why improve PM?

Better predictability leading to


commitments that can be met
Lower cost through reduced rework,
better resource mgmt, better planning,..
Improved quality through proper quality
planning and control
Better control through change control,
CM, monitoring etc.

Project Planning 5
Why improve PM ….

Better visibility into project health


and state leading to timely
intervention
Better handling of risks reducing the
chances of failure
All this leads to higher customer
satisfaction
And organization improvement
Project Planning 6
The Project Mgmt Process
Has three phases - planning,
monitoring and control, and closure
Planning is done before the much of
the engineering process and closure
after the process
Monitoring phase is in parallel with LC
We focus on planning; monitoring
covered through its planning

Project Planning 7
Project Planning
Basic objective: To create a plan to
meet the commitments of the project,
I.e. create a path that, if followed, will
lead to a successful project
Planning involves defining the LC
process to be followed, estimates,
detailed schedule, plan for quality, etc.
Main output - a project management
plan and the project schedule
Project Planning 8
Key Planning Tasks
 Estimate effort
 Define project milestones and create a schedule
 Define quality objectives and a quality plan
 Identify risks and make plans to mitigate them
 Define measurement plan, project-tracking
procedures, training plan, team organization, etc.

Project Planning 9
Effort Estimation
Effort Estimation
For a project total cost and duration
has to be committed in start
Requires effort estimation, often in
terms of person-months
Effort estimate is key to planning -
schedule, cost, resources depend on
it
Many problems in project execution
stem from improper estimation
Project Planning 11
Estimation..

No easy way


Estimation accuracy can improve with
more information about the project
Early estimates are more likely to be
inaccurate than later
 More uncertainties in the start
 With more info, estimation becomes
easier
Project Planning 12
Estimation accuracy

Project Planning 13
Effort Estimation Models..
A model tries to determine the effort
estimate from some parameter values
A model also requires input about the
project
So to apply a model, we should be able
to extract properties about the system
Two types of models - top-down and
bottom-up

Project Planning 14
Effort Estimation Models

Knowledge about
SW project

Effort Estimate

Extract Estimation Model

Values of some
characteristics

Project Planning 15
Top down estimation
 First determines the total effort, then effort for
components
 Simple approach – estimate effort from size
and productivity
 Get the estimate of the total size of the software
 Estimate project productivity using past data and
project characteristics
 Obtain the overall effort estimate from productivity
and size estimates
 Effort distribution data from similar project are
used to estimate effort for different phases

Project Planning 16
Top-down Estimation
A better method is to have effort
estimate as a function of size using:
Effort = a * size b
E is in person-months, size in KLOC
Incorporates the observation that
productivity can dip with increased size
Constants a and b determined through
regression analysis of past project data

Project Planning 17
COCOMO Model

Uses size, but adjusts using some


factors
Basic procedure
 Obtain initial estimate using size
 Determine a set of 15 multiplying
factors from different project attributes
 Adjust the effort estimate by scaling it
with the final multiplying factor

Project Planning 18
COCOMO..
 Initial estimate: a * size b ; some standard
values for a, b given for diff project types
 There are 15 cost driver attributes like
reliability, complexity, application
experience, capability, …
 Each factor is rated, and for the rating a
multiplication factor is given
 Final effort adjustment factor is the
product of the factors for all 15 attributes
Project Planning 19
COCOMO – Some cost drivers

Cost Driver Very Low Nomin High Very


low al High
Required reliability .75 .88 1.0 1.15 1.4
Database size .94 1.0 1.08 1.16
Product complexity .7 .85 1.0 1.15 1.3
Execution time constraint 1.0 1.11 1.3
Memory constraint 1.0 1.06 1.21
Analyst capability 1.46 1.19 1.0 .86 .71
Application experience 1.29 1.13 1.0 .91 .82
Programmer capability 1.42 1.17 1.0 .86 .70
Use of software tools 1.24 1.10 1.0 .91 .83
Development schedule 1.23 1.08 1.0 1.04 1.1
Project Planning 20
COCOMO – effort distribution

Effort distribution among different


phases is given as a percent of effort
Eg. For medium size product it is
 Product design – 16%
 Detailed design – 24%
 Coding and UT – 38%
 Integration and test – 22%

Project Planning 21
Bottom-up Estimation
An alternate approach to top-down
Effort for components and phases
first estimated, then the total
Can use activity based costing - all
activities enumerated and then each
activity estimated separately
Can group activities into classes -
their effort estimate from past data

Project Planning 22
An Estimation Procedure
Identify programs in the system and classify
them as simple, medium, or complex (S/M/C)
Define the average coding effort for S/M/C
Get the total coding effort.
Use the effort distribution in similar projects
to estimate effort for other tasks and total
Refine the estimates based on project
specific factors

Project Planning 23
Scheduling and Staffing
Project Schedule

A project Schedule is at two levels -


overall schedule and detailed
schedule
Overall schedule comprises of major
milestones and final date
Detailed schedule is the assignment
of lowest level tasks to resources

Project Planning 25
Overall Schedule

Depends heavily on the effort estimate


For an effort estimate, some flexibility
exists depending on resources assigned
 project can be done in 8 months with 7
people, or 7 months with 8 people
Stretching a schedule is easy;
compressing is hard and expensive

Project Planning 26
Overall Scheduling...

One method is to estimate schedule


S (in months) as a function of effort
in PMs
Can determine the fn through
analysis of past data

Often this schedule is checked and


corrected for the specific project
Project Planning 27
Determining Milestones

With effort and overall schedule


decided, avg project resources are
fixed
Manpower ramp-up in a project
decides the milestones
In reality manpower build-up is a
step function

Project Planning 28
Manpower Ramp-up

PTS

Design Build Test

Project Planning 29
Milestones ...
 With manpower ramp-up and effort
distribution, milestones can be decided
 Effort distribution and schedule
distribution in phases are different
 Generally, the build has larger effort but
not correspondingly large schedule
 COCOMO specifies distr of overall sched.
Design – 19%, programming – 62%,
integration – 18%
Project Planning 30
Detailed Scheduling

To reach a milestone, many tasks have to


be performed
Lowest level tasks - those that can be done
by a person (in less than 2-3 days)
Scheduling - decide the tasks, assign them
while preserving high-level schedule
Is an iterative task - if cannot “fit” all
tasks, must revisit high level schedule

Project Planning 31
Detailed Scheduling
Detailed schedule not done
completely in the start - it evolves
Can use Microsoft Project for keeping
it
Detailed Schedule is the most live
document for managing the project
Any activity to be done must get
reflected in the detailed schedule
Project Planning 32
Quality Planning
Quality Planning

Delivering high quality is a basic goal


Quality can be defined in many ways
Current industry standard - delivered
defect density (e.g. #defects/KLOC)
Defect - something that causes software
to behave in an inconsistent manner
Aim of a project - deliver software with
low delivered defect density

Project Planning 34
Defect Injection and Removal

Software development is labor


intensive
Defects are injected at any stage
As quality goal is low delivered
defect density, these defects have to
be removed
Done primarily by quality control
(QC) activities of reviews and testing
Project Planning 35
Defect Injection and Removal

Defect Injection

Development
Process

Req.
R Design R Coding R UT IT/ST AT
Analysis

Defect Removal

Project Planning 36
Approaches to Quality
Management

Ad hoc - some testing, some reviews


done as and when needed
Procedural - defined procedures are
followed in a project
Quantitative - defect data analysis
done to manage the quality process

Project Planning 37
Procedural Approach

A quality plan defines what QC tasks


will be undertaken and when
Main QC tasks - reviews and testing
Guidelines and procedures for
reviews and testing are provided
During project execution, adherence
to the plan and procedures ensured

Project Planning 38
Quantitative Approach

Analyzes defect data to make


judgements about quality
Past data is very important
Key parameters - defect injection and
removal rates, defect removal
efficiency (DRE)

Project Planning 39
Quality Plan

The quality plan drives the quality


activities in the project
Level of plan depends on models
available
Must define QC tasks that have to be
performed in the project
Can specify defect levels for each QC
tasks
Project Planning 40
Risk Management
Risk Management

Any project can fail - reasons can be


technical, managerial, etc.
Project management aims to tackle the
project management aspect
Engineering life cycles aim to tackle the
engineering issues
A project may fail due to unforeseen events
- risk management aims to tackle this

Project Planning 42
Risk Management
Risk: any condition or event whose
occurrence is not certain but which
can cause the project to fail
Aim of risk management: minimize
the effect of risks on a project
Risk management has two basic
aspects
 Risk assessment
 Risk control
Project Planning 43
Risk Assessment

To identify possible risks to a project,


i.e. to those events that might occur
and which might cause the project to
fail
No “algorithm” possible, done by
“what ifs”, checklists, past experience
Can have a list of “top 10” risks that
projects have seen in past
Project Planning 44
Top Risk Examples

Shortage of technically trained


manpower
Too many requirement changes
Unclear requirements
Not meeting performance requirements
Unrealistic schedules
Insufficient business knowledge
Working on new technology
Project Planning 45
Risk Prioritization

The number of risks might be large


Must prioritize them to focus
attention on the “high risk” areas
For prioritization, impact of each risk
must be understood
In addition, probability of the risk
occurring should also be understood

Project Planning 46
Risk Prioritization ...

Risk exposure (RE) = probability of


risk occurring * risk impact
RE is the expected value of loss for a
risk
Prioritization can be done based on
risk exposure value
Plans can be made to handle high RE
risks
Project Planning 47
A Simple approach to Risk
Prioritization

Classify risk occurrence probabilities


as: Low, Medium, High
Classify risk impact as: Low, Medium,
High
Focus on these for risk mitigation
Will work for most small and medium
sized projects

Project Planning 48
Risk Control

Can the risk be avoided?


 E.g. if new hardware is a risk, it can be
avoided by working with proven hardware
For others, risk mitigation steps need
to be planned and executed
 Actions taken in the project such that if
the risk materializes, its impact is
minimal
 Involves extra cost
Project Planning 49
Risk Mitigation Examples

Too many requirement changes


 Convince client that changes in
requirements will have an impact on the
schedule
 Define a procedure for requirement
changes
 Maintain cumulative impact of changes
and make it visible to client

Project Planning 50
Examples ...

Manpower attrition
 Ensure that multiple resources are assigned
on key project areas
 Have team building sessions
 Rotate jobs among team members
 Keep backup resources in the project
 Maintain documentation of individual’s work
 Follow the CM process and guidelines
strictly

Project Planning 51
Examples ...

Unrealistic schedules
 Negotiate for better schedule
 Identify parallel tasks
 Have resources ready early
 Identify areas that can be automated
 If the critical path is not within the
schedule, negotiate with the client
 Negotiate payment on actual effort

Project Planning 52
Risk Mitigation Plan

Risk mitigation involves steps that are


to be performed (hence has extra cost)
It is not a paper plan - these steps
should be scheduled and executed
These are different from the steps one
would take if the risk materializes -
they are performed only if needed
Risks must be revisited periodically

Project Planning 53
A Practical Risk Mgmt Approach

 Based on methods of some orgs


1. List risks; for each risk rate probability
as Low, Medium, High
2. For each risk assess impact on the
project as Low, medium, High
3. Rank the risks based on probability
and impact
4. Select top few items for mitigation

Project Planning 54
A risk mgmt plan

Risk Prob Impact


1. Failure to meet High High
perf reqs
2. Lack of people Med Med
with right skills
3. Complexity of the Med Med
application
4. Unclear Med Med
requirements
Project Planning 55
Project Monitoring Plans
Background
A plan is a mere document that can
guide
It must be executed
To ensure execution goes as per plan, it
must be monitored and controlled
Monitoring requires measurements
And methods for interpreting them
Monitoring plan has to plan for all the
tasks related to monitoring
Project Planning 57
Measurements
 Must plan for measurements in a project
 Without planning, measurements will not
be done
 Main measurements – effort, size,
schedule, and defects
 Effort – as this is the main resource; often
tracked through effort reporting tools
 Defects – as they determine quality; often
defect logging and tracking systems used
 During planning – what will be measured,
how, tool support, and data management

Project Planning 58
Project Tracking

Goal: To get visibility in project


execution so corrective actions can
be taken when needed to ensure
project succeeds
Diff types of monitoring done at
projects; measurements provide
data for it

Project Planning 59
Tracking…
 Activity-level monitoring
 Each activity in detailed schd is getting done
 Often done daily by managers
 A task done marked 100%; tools can
determine status of higher level tasks
 Status reports
 Generally done weekly to take stock
 Summary of activities completed, pending
 Issues to be resolved

Project Planning 60
Tracking…
Milestone analysis
 A bigger review at milestones
 Actual vs estimated for effort and sched
is done
 Risks are revisited
 Changes to product and their impact
may be analyzed
Cost-schedule milestone graph is
another way of doing this
Project Planning 61
Project Management Plan
The project management plan (PMP)
contains outcome of all planning activities -
focuses on overall project management
Besides PMP, a project schedule is needed
 Reflects what activities get done in the project
 Microsoft project (MSP) can be used for this
 Based on project planning; is essential for day-
to-day management

Project Planning 62
PMP Structure - Example

Project overview - customer, start and


end date, overall effort, overall value,
main contact persons, project
milestones, development
environment..
Project planning - process and tailoring,
requirements change mgmt, effort
estimation, quality goals and plan, risk
management plan, ..
Project Planning 63
PMP Example ...

Project tracking - data collection,


analysis frequency, escalation
procedures, status reporting,
customer complaints, …
Project team, its organization, roles
and responsibility, …

Project Planning 64
Project Planning - Summary
Project planning forms the foundation of
project management
Key aspects: effort and schedule
estimation, quality planning, risk mgmt., …
Outputs of all can be documented in a
PMP, which carries all relevant info about
project
Besides PMP, a detailed project schedule
maintains tasks to be done in the project

Project Planning 65

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