0% found this document useful (0 votes)
26 views

Softwarechap 04

The document discusses software project estimation and management. It covers topics like the people involved in software projects, stakeholders, product objectives, different process models, project planning, and risk management. Effective software project management focuses on people, product, process, and the project itself.

Uploaded by

mylove6947
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)
26 views

Softwarechap 04

The document discusses software project estimation and management. It covers topics like the people involved in software projects, stakeholders, product objectives, different process models, project planning, and risk management. Effective software project management focuses on people, product, process, and the project itself.

Uploaded by

mylove6947
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/ 34

Chapter- 4

Software Project Estimation


Software Project Management
• Software Project Management is to be done in
scientific way.
• It involves the knowledge, techniques and tools
necessary to manage the software development.
• It starts before any activity starts.
• The Software Project Management includes
basic function such as scoping, planning,
estimating, scheduling, organizing, directing,
coordinating, controlling and closing.
Management Spectrum
• The management spectrum describes the
management/hierarchy of people associated with
a software project.
• How to make a software project successful.
• Effective Software Project Management focuses
on the four P’s:
– People
– Product
– Process
– Project
• The order is not arbitrary.
The People
• People factor is very much important in the
process of software development.
• There are following areas for software people like,
recruiting, performance management,
training, compensation, career development,
workgroup development, and team/culture
development.
Stakeholders
• Senior managers who define the business issues that often have
significant influence on the project.
• Project (technical) managers who must plan, motivate, organize,
and control the practitioners who do software work.
• Practitioners/Software Engineer: who deliver the technical skills
that are necessary to engineer a product or application.
• Customers who specify the requirements for the software to be
engineered
• End-users who interact with the software once it is released for
production use.
Product
1. Before a project can be planned, the product
objectives and scope should be identified.
2. Objectives identify the overall goals for the
product without considering how these goals will be
achieved.
3. Scope identifies the primary data, functions and
behaviors that categorize the product.
4.It identifies cost, risk and realistic break downs of
project task.
Process
• The process model is the plan to be selected
depending on following factors
– a) Customers and developers.
– b) Characteristics of product itself.
– c) Project environment of software team.
• Regardless of the size and type of project, there
are small number of framework activities that
are applicable to all of them.
• There are also umbrella activities like SQA, that
occur throughout the system.
Project
• We conduct planned and controlled software
projects for one primary reason-it is the only
known way to manage complexity.
• A software project manager, who build the product
must avoid a set of common warning signs,
understand the critical success factors that
lead to good project management.
• And develop a common sense approach for
planning, monitoring and controlling the project.
Metric for Size estimation
• LOC is the simplest among all metrics available to estimate project size.
This metric is very popular because it is the simplest to use.
• Using this metric, the project size is estimated by counting the number
of source instructions in the developed program.
• Obviously, while counting the number of source instructions, lines used
for commenting the code and the header lines should be ignored.
• Determining the LOC count at the end of a project is a very simple job.
However, accurate estimation of the LOC count at the beginning of a
project is very difficult.
• In order to estimate the LOC count at the beginning of a project, project
managers usually divide the problem into modules, and each module
into sub modules and so on, until the sizes of the different leaf-level
modules can be approximately predicted.
• To be able to do this, past experience in developing similar products is
helpful. By using the estimation of the lowest level modules, project
managers arrive at the total size estimation.
2)Function Point:
•The conceptual idea behind the function point metric is that
the size of a software product is directly dependent on the
number of different Functions or features it supports.
•Each function when invoked reads some input data and
transforms it to the corresponding output data.
•computation of the number of input and the output data
values to a system gives some indication of the number of
functions supported by the system.
Cost estimation models
• Cost estimation models are some mathematical algorithms or parametric
equations that are used to estimate the cost of a product or a project.
• Various techniques or models are available for cost estimation, also known
as Cost Estimation Models as shown below :
Empirical estimation

• Empirical estimation is a technique or model in which empirically derived


formulas are used for predicting the data that are a required and
essential part of the software project planning step.
• These techniques are usually based on the data that is collected
previously from a project and also based on some guesses, prior
experience with the development of similar types of projects, and
assumptions.
• It uses the size of the software to estimate the effort. In this technique,
an educated guess of project parameters is made. Hence, these models
are based on common sense.
• However, as there are many activities involved in empirical estimation
techniques, this technique is formalized. For example Delphi technique
and Expert Judgement technique.
Heuristic Technique
• Heuristic word is derived from a Greek word that means “to discover”.
• The heuristic technique is a technique or model that is used for solving
problems, learning, or discovery in the practical methods which are used
for achieving immediate goals.
• These techniques are flexible and simple for taking quick decisions
through shortcuts and good enough calculations, most probably when
working with complex data. But the decisions that are made using this
technique are necessary to be optimal.
• In this technique, the relationship among different project parameters is
expressed using mathematical equations. The popular heuristic
technique is given by Constructive Cost Model (COCOMO). This
technique is also used to increase or speed up the analysis and
investment decisions.
Analytical Estimation Technique

• Analytical estimation is a type of technique that is used to measure


work. In this technique, firstly the task is divided or broken down into
its basic component operations or elements for analyzing.
• if the standard time is available from some other source, then these
sources are applied to each element or component of work.
• if there is no such time available, then the work is estimated based
on the experience of the work. In this technique, results are derived
by making certain basic assumptions about the project. Hence, the
analytical estimation technique has some scientific basis. Halstead’s
software science is based on an analytical estimation model.
Project Risks
What can go wrong?
What is the likelihood?
What will the damage be?
d o a b o u t i t ?
c a n we
W h at
Risk Management
• Software risk :A software risk is anything which
can cause a delay in software or stops the
progress of a system or even terminates the
software project.
• Risk is an expectation of loss, a potential
problem that may or may not occur in the future.
• It is generally caused due to lack of information,
control or time.
• A possibility of suffering from loss.
• Loss can be anything, increase in production
cost, development of poor quality software,
not being able to complete the project on time.
Concept of Proactive and Reactive
risk strategies
Reactive Risk:
• Reactive risk strategy follows that the risks have to be
tackled at the time of their occurrence.
• No precautions are to be taken as per this strategy.
• They are meant for risks with relatively smaller impact.
• More commonly, the software team does nothing about
risks until something goes wrong.
• Then, the team flies into action in an attempt to correct
the problem rapidly. This is often called a fire-fighting
mode
Proactive Risk:
• It follows that the risks have to be identified before
start of the project.
• They have to be analysed by assessing their
probability of occurrence, their impact after
occurrence, and steps to be followed for its
precaution
Types of Software Risks
There are two basic types of risks:
(a) Generic Risk : Generic Risk is the general
purpose possible threat to every software
product.
(b) Product Specific Risk: Product Specific risk
can be find out only by those with a clear
understanding of the technology going to be
used for that project.
Different Categories of Risks: -
(a) Project Risk: - Threaten the project plan. That is if
project risk become real it is likely that project schedule
will slip and that costs will increase. Project risks
identity potential budgetary, schedule, personnel,
resource, customer and requirement problem.
(b) Technical Risk: - Threaten the quality and
timeliness of the software to be produced. If technical
risk becomes real, implementation may become difficult
or impossible.
(c) Business Risk: - Threaten the viability of the
software to be built. Business risk often jeopardizes the
product or the project.
Continue
(d) Market Risk:- Building product that no one wants
(e) Strategic Risk: - Building a product that no
longer fits into the business strategy
(f) Management Risk: - Building a product that the
sale force doesn‘t understand.
(g) Budget Risk: - Losing budgetary or personnel
commitment
Risk Assessment

• In initial stages of project planning a risk is stated


generally. As the time passes, it is important to
divide that risks into sub types and try to refine it.
Risk Management Paradigm

control

track

RI S identify

plan
K analyze
Risk identification

• Risk identification can be defined as systematic


attempt to specify or find out threats to the
project plan. Project plan includes estimation,
resource distribution etc.
• With the help of finding well known and predictable
risks, the project manager or leader can take first
step to deal with or avoid them.
• These risks need to be controlled or avoided as per
its form.
Risk Analysis

• After identification of the risk, risk analysis has to


be done.
• The process of risk analysis is analyzing the
potential risks with its types and details.
• The time and efforts needed for risks analysis
are huge.
• Analysis starts with what risks are there, their
probability and consequences with their impact
on the project.
Risk refinement : In initial stages of project
planning a risk is stated generally. As the time
passes it is important to divide that risks into its
sub types and try to refine it.
The way to refine risk is to represent the risk in
condition – transition – consequence i.e. CTC
format. The risk can be stated as follows.
<Condition>(Possibly)<Consequence>
Risk Prioritization
• For the purpose of deciding the priority of the
risk, process called as risk prioritization is used.
• When first four columns of the risk table are filled
with the risk related data, the table needs to be
sorted by probability and by impact.
• The risk with high probability and high impact
risks are located at the top of the table.
• The risks with low probability go to the bottom of
the table after sorting.
• This is called as first order prioritization of the
risks.
• The project manager analyses the sorted risk
table and defines the cutoff line.
• It is a horizontal line at some point in the table.
The risk above this line will be given more
attention. The risks below the line will be again
reviewed and evaluated.
• After this, again second order prioritization of the
risk below cut off line is done.
RMMM strategy

• An effective strategy must consider three issues:


risk avoidance, risk monitoring, and risk
management and contingency planning.
• A risk management technique is usually seen in
software project plan
• Risk is documented with the help of Risk
Information sheet.
Risk Mitigation(Avoid Risk)
• It is Proactive approach. Apply before risk have generate.
• Step to mitigate the risk as follow:
 Communicate with current staff to find probable risk: Meet with
current staff to determine causes for turnover (e.g., poor working
conditions, low pay, competitive job market).
 Mitigate those causes that are under your control before the
project starts.:
– Removing all causes that the reason for risk creation.
 Develop a policy in an organization which will help to continue the
Project
 Controlling the corresponding document from time to time.
 Conducting timely review to speed up the work.
Risk Monitoring
 Risk monitoring is an activity used to track a project
progress.
 Performed by project Manager.
 Objective of risk monitoring process:
 -To check if predicted risk occure or not.
 -To ensure proper application of risk avoidance are
apply or not
 -To gather information for future risk assessments
 -To determine which risk generate which problem
throughout the project.
Risk Management

 It is reactive approach. apply after risk have generate.


 It assumes that the mitigation activity failed and risk
occure in reality.
 This task is done by project manager .they will solve
generated risk.
 If project manager effectively uses project mitigation to
remove risk successfully then it is easier to manage the
risk.
RMMM Plan Example
• Risk Generated: Late Delivery of project
1. Mitigation:
• Before development apply some precautionary Measure
• Developer already knew project will be complete in 20 days. but he
told customer project will complete in 30 days.
2.Monitoring:
• To develop project schedule Mentioned start and end date of project
.with in 20 to 30 days.
3.Management:
• Project not complete with in deadline then negotiate with customer.
• Ask some extra time or give some additional feature etc.

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