0% found this document useful (0 votes)
95 views22 pages

Software Project Planning Chapter Four

The document discusses software project planning and estimation. It covers key topics like project scope identification, feasibility analysis, resource estimation including human resources, reusable software components, and development environments. It also discusses decomposition techniques and software sizing as methods for estimating project costs, effort, and schedules. Accurate estimation requires understanding project complexity and risks.

Uploaded by

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

Software Project Planning Chapter Four

The document discusses software project planning and estimation. It covers key topics like project scope identification, feasibility analysis, resource estimation including human resources, reusable software components, and development environments. It also discusses decomposition techniques and software sizing as methods for estimating project costs, effort, and schedules. Accurate estimation requires understanding project complexity and risks.

Uploaded by

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

Chapter Four

Software project planning


 Introduction
Software Project Management begins with 'Project
Planning’ activities which include:
 Estimation
 Scheduling
 Risk Analysis
 Quality Management Planning
 Change Management Planning
Project Estimation
 Estimation is the first step in project planning.
 Estimation is to determine how much:
◦ Money/cost,
◦ efforts,
◦ resources and
◦ time
will be required to build a specific software based
system or product.
Who does Estimation?
 Estimation is done by software project
managers using information solicited from:
◦ Stakeholders,
◦ Software engineers and
◦ Software metrics data from past projects.
Estimation Steps – Summary
 Description of product scope.
 Decomposition of problem into set of smaller
problems.
 Each sub problem is estimated using historical data,
software metrics and experience (from past projects)
as guides.
 Problem complexity and risks are considered before
final estimate is made.
 Estimation and Risk
 Estimation carries inherent risk & risk leads to
uncertainty.
 Estimation risk is measured by the degree of uncertainty
in the quantitative estimates established for resources,
cost, and schedule.
 Availability of comprehensive historical information and
software metrics (from past projects) helps establish
better estimates and hence reduces risk factors.
Estimation and Risk (Contd.)
 If project scope is poorly understood or requirements are
subject to change then uncertainty and estimation risk
become dangerously high.
 As a result, variability in software requirements means
instability in cost and schedule.
 However, a project manager should not become obsessive
about estimation as modern software engineering
approaches are iterative in nature hence making it possible
to revise estimates.
 Software Project Planning Process

 Software project planning provides a


framework that enables the manager to make
reasonable estimates of resources, cost and
schedule.
Software Project Planning Activities
 Establish project scope
 Determine feasibility
 Analyze risks
 Define resources
 Estimate cost and effort
 Develop project schedule
 Software Scope
The first activity in software project planning is
the determination of software scope.
 It describes
◦ functions & features to be delivered to end-user
◦ Input and output data
◦ “content” presented to users as they use the software.
◦ Performance considerations (processing & response
time, etc)
◦ Constraints (limitations).
 Software Feasibility
 Feasibility check is conducted after scope
identification.
 It addresses questions like:
◦ Can we build software to meet this scope?
◦ Is the project feasible?
Software Feasibility (Cont..)
 Putnam and Myers address software feasibility
in four dimensions:
◦ Technology
 Is the project technically feasible? Is it within state
of the art?, etc.
◦ Finance
 Is it financially feasible? Can the development be
completed at a cost that the software organization,
the client or the market can afford
◦ Time
 Will the project completed on time?
◦ Resources
 Does the organization have enough resources
needed to succeed?
 Resources
 After scope and feasibility, next comes
estimation of resources.
 Three major categories of resources are:
◦ People/Human resources
◦ Reusable software components
◦ Development environment (S/W & H/W tools)
Resources ( Cont..)

 Each resource has 4 characteristics


 Description of resource
 Statement of availability
 Time when resource will be required
 Duration of time when resource will be
applied
1. Human resources
 This estimation involves
◦ Selecting Skills (required to complete development)
◦ Specifying organizational positions (manager, senior s/w
engr, ..) and specialty
◦ Determining number of people based on development effort:
 For small projects, single person can do all s/w engg tasks
 For large projects, more number of people involved which may be
geographically distributed. So, location of resource also specified
 No. of people can be determined after estimating development
effort (e.g., person-months)
2. Reusable Software Resources
 Four categories of reusable software
components:
a) Off-the-shelf components
 Ready-to-use existing software acquired from third party
(COTS /Commercial off-the-shelf).

b) Full-experience components
 Existing specifications, designs, code, test data from past
projects similar to software to be developed (for current
project). May require little modifications.
Cont...
c) Partial experience component
 Existing specifications, designs, code, test data from past
projects related to software to be developed (for current
project) but will require substantial modifications.

d) New components
 Software components that must be built for current
project
3. (Development) Environment
resources
 Software Engineering Environment (SEE)
includes hardware and software support for
a software project.
 Hardware and software elements availability
and time must be specified .
 Software Project Estimation
Software cost and effort estimation will never be
an exact science.

Too many variables—human, technical,


environmental, political—can affect the ultimate
cost of software and effort applied to develop it.
Cont..
To achieve reliable cost and effort estimates, a number
of options arise:
1. Delay estimation until late in the project .
(obviously, we can achieve 100% accurate estimates after
the project is complete!).
2. Base estimates on similar projects that have
already been completed.
3. Use relatively simple decomposition techniques
to generate project cost and effort estimates.
4. Use one or more empirical models for software
cost and effort estimation.

Which option is better?


Each approach can be used as a cross-check for the other
 Decomposition Techniques
 Decomposition can be performed in two
aspects
◦ Decomposition of problem
◦ Decomposition of process

 Estimation uses one or both forms of


decompositions. But before this, software
size must be estimated.
Software Sizing
 Proper estimation of software size and mapping of
size estimate to human effort, calendar time and
cost are important things which contribute to
accuracy of overall software project estimation.
 In project planning, size refers to a quantifiable
outcome.
◦ Direct approach – size is measured as LOC
◦ Indirect approach – size is measured as function-
points

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