SlideShare a Scribd company logo
Estimation
for Software
Projects
Software Engineering
ITS66404
This Photo by Unknown Author is licensed under CC BY-SA
Agenda
Software Project Planning
Estimation Steps
Scope
Categories of Estimation
Estimation Techniques
Examples
2
Introduction
Software Project Planning encompasses 5 major activities. Estimation is one if it.
Estimation is a process to predict the time and the cost that a project requires to be
finished appropriately. But in terms of software development, it also means of
consideration of the experience of the software development company; the technique
they employ; the process they may go through to finish the task. This whole process
requires the use of complex tools and good mathematical background knowledge. It is
in some cases is the accomplishment of the hard work of a whole team.
3
Sample footer text 3/1/20XX 4
HOW MUCH WILL YOUR
SOFTWARE COST?
Software Project Planning
+ Encompasses of 5 major activities: Estimation, scheduling,
risk analysis, Quality Management Planning & Change
Management Planning.
+ Estimation determine how much money, effort, resources
and time it will take to build a specific system or software
Sample footer text 3/1/20XX 5
1st Estimation Steps
 The software team first estimates:
+ The work to be done
+ The resources required
+ The time that will elapse (the time it will take) from start to
finish
Sample footer text 3/1/20XX 6
2nd Estimation Steps
 They will establish a project
schedule that
+ Defines tasks and milestones
+ Identifies who is responsible
for conducting tasks
+ Specifies intertask
dependencies
Sample footer text 3/1/20XX 7
8
Task Set For Project Planning
1. Establish project scope
2. Determine feasibility
3. Analyze risks
1. Risk analysis already discussed in
Project Management chapter.
4. Define required resources
1. Determine require human resources
2. Define reusable software resources
3. Identify environmental resources
5. Estimate cost and effort
+ Decompose the problem
+ Develop two or more estimates using size, function
points, process tasks or use-cases
+ Reconcile the estimates
6. Develop a project schedule
+ Establish a meaningful task set
+ Define a task network
+ Use scheduling tools to develop a
timeline chart
+ Define schedule tracking mechanisms
9
Observation on Estimation
+ Estimation of resources, cost, and schedule for a software
engineering effort requires:
• experience
• access to good historical information (metrics)
• the courage to commit to quantitative predictions when qualitative
information is all that exists
+ Estimation carries inherent risk and this risk leads to
uncertainty
10
Write it Down!
Software
Project
Plan
Project Scope
Estimates
Risks
Schedule
Control strategy
11
To Understand Scope ...
+ Understand the customers needs
+ understand the business context
+ understand the project boundaries
+ understand the customer’s motivation
+ understand the likely paths for change
+ understand that ... Even when you understand,
nothing is guaranteed!
12
What is Scope?
+ Software scope describes
the functions and features that are to be delivered to end-users
the data that are input and output
the “content” that is presented to users as a consequence of using the
software
the performance, constraints, interfaces, and reliability that bound the
system.
+ Scope is defined using one of two techniques:
+ A narrative description of software scope is developed after
communication with all stakeholders.
+ A set of use-cases is developed by end-users.
13
Categories of
Resources
+ People
+ Environment
+ Reusable Software
14
Project
Estimation
Considerations
+ Project scope must be understood
+ Elaboration (decomposition) is
necessary
+ Historical metrics are very helpful
+ At least two different techniques
should be used
+ Uncertainty is inherent in the
process
15
Project Estimation
16
Estimation Techniques
+ Past (similar) project experience
+ Conventional estimation techniques
task breakdown and effort estimates
size (e.g., FP) estimates
+ Empirical models
+ Automated tools
There are plenty of estimation strategies that estimators could employ. But, firstly, they could
take into consideration the complexity of the project, the amount of information acquired, and
time constraints. An appropriate combination of those things could result in the estimating
approaches as follows:
17
Estimation Accuracy
+ Predicated on …
the degree to which the planner has properly estimated the size of the product to be built
the ability to translate the size estimate into human effort, calendar time, and dollars (a
function of the availability of reliable software metrics from past projects)
the degree to which the project plan reflects the abilities of the software team
the stability of product requirements and the environment that supports the software
engineering effort.
The whole process of estimation would cost the company rather considerable cost and time at the very
first stage of building an app. But this will make the final result more credible, realistic, and customer-
satisfying. Projects especially big ones are advised to employ this crucial step to avoid unpredictable
failure.
18
Conventional Techniques:
1. LOC/FP Approach
+ compute LOC/FP using estimates of information domain
values
+ use historical data to build estimates for the project
+ LOC- Line of Codes
+ FP – Function points
19
Example: LOC Approach
Average productivity for systems of this type = 620 LOC/pm.
Burdened labor rate =$8000 per month, the cost per line of code is approximately $13.
Based on the LOC estimate and the historical productivity data, the total estimated project
cost is $431,000 and the estimated effort is 54 person-months.
2. FP Approach
+ A Function Point (FP) is a unit of measurement to express the
amount of business functionality, an information system (as a
product) provides to a user.
+ FPs measure software size. They are widely accepted as an
industry standard for functional sizing.
20
21
Example: FP Approach
average productivity = 6.5 FP/pm.
burdened labor rate = $8000 per month,
approximately $1230/FP.
Based on the FP estimate and the historical productivity data,
total estimated project cost is $461,000 and
estimated effort is 58 person-months.
22
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-
Hill 2009). Slides copyright 2009 by Roger Pressman.
Tool-Based Estimation
project characteristics
calibration factors
LOC/FP data
23
Estimation with Use-Cases
Using 620 LOC/pm as the average productivity for systems of this type and a burdened
labor rate of $8000 per month, the cost per line of code is approximately $13. Based on
the use-case estimate and the historical productivity data, the total estimated project cost
is $552,000 and the estimated effort is 68 person-months.
Thank you
24
Addendums
25
Addendum
26
27

More Related Content

PPTX
PPTX
Software metrics in software engineering
PDF
Software Project Planning and Estimation.pdf
PPTX
Estimation sharbani bhattacharya
PPT
Lecture6
PPT
SDPM (Success Driven Project Management)
PPT
Software Engineering (Project Planning & Estimation)
PDF
Software Engineering Software Project Management
Software metrics in software engineering
Software Project Planning and Estimation.pdf
Estimation sharbani bhattacharya
Lecture6
SDPM (Success Driven Project Management)
Software Engineering (Project Planning & Estimation)
Software Engineering Software Project Management

Similar to SE - Lecture 11 - Software Project Estimation.pptx (20)

PDF
Guide to Software Estimation
PPT
Softwareproject planning
PPTX
Computing Project
PPTX
Software engineering 8 Software project planning
PPT
Project Management Series By Himadri Banerji: The New Frontiers From Himadri ...
PPTX
Project Scheduling
PPTX
CS8494 SOFTWARE ENGINEERING Unit-5
PDF
SE18_Lec 13_ Project Planning
PDF
SWE-401 - 3. Software Project Management
PPTX
Software project plannings
PPTX
Software project plannings
PPT
project planning-estimation
DOCX
Software
PPSX
Software Project Planning II
PPTX
Ch23-Software Engineering 9
PPSX
Cost estimation
PPT
Revised CHAPTER-TWO.pptppppppppppppppppp
PDF
Software Project Management
DOCX
Software project planning and monitoring
PPTX
Primavera6.0
Guide to Software Estimation
Softwareproject planning
Computing Project
Software engineering 8 Software project planning
Project Management Series By Himadri Banerji: The New Frontiers From Himadri ...
Project Scheduling
CS8494 SOFTWARE ENGINEERING Unit-5
SE18_Lec 13_ Project Planning
SWE-401 - 3. Software Project Management
Software project plannings
Software project plannings
project planning-estimation
Software
Software Project Planning II
Ch23-Software Engineering 9
Cost estimation
Revised CHAPTER-TWO.pptppppppppppppppppp
Software Project Management
Software project planning and monitoring
Primavera6.0
Ad

More from TangZhiSiang (12)

PPTX
SE - Lecture 13 - Software Evolution and Tech Trends.pptx
PPTX
SE - Lecture 12 - Software Project Management (1).pptx
PPTX
SE - Lecture 9 n 10 Intro Robotic Process Automation.pptx
PPTX
SE - Lecture 8 - Software Testing State Diagram.pptx
PPTX
SE - Lecture 7 - Software Quality Reliability Mgmt - in lecture.pptx
PPTX
SE - Lecture 6 - Software Design n Construction.pptx
PPTX
SE - Lecture 5 - Requirements Engineering.pptx
PPTX
SE-Lecture 4 - Agile Software Development.pptx
PPTX
SE - Lecture 3 - Software Tools n Environment.pptx
PPTX
SE-Lecture 2A-Requirements.pptx
PPTX
SE - Lecture 2 - SW Devl Process.pptx
PPTX
SE - Lecture 1 - Introduction to S Engineering.pptx
SE - Lecture 13 - Software Evolution and Tech Trends.pptx
SE - Lecture 12 - Software Project Management (1).pptx
SE - Lecture 9 n 10 Intro Robotic Process Automation.pptx
SE - Lecture 8 - Software Testing State Diagram.pptx
SE - Lecture 7 - Software Quality Reliability Mgmt - in lecture.pptx
SE - Lecture 6 - Software Design n Construction.pptx
SE - Lecture 5 - Requirements Engineering.pptx
SE-Lecture 4 - Agile Software Development.pptx
SE - Lecture 3 - Software Tools n Environment.pptx
SE-Lecture 2A-Requirements.pptx
SE - Lecture 2 - SW Devl Process.pptx
SE - Lecture 1 - Introduction to S Engineering.pptx
Ad

Recently uploaded (20)

PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
Basic Mud Logging Guide for educational purpose
PPTX
PPH.pptx obstetrics and gynecology in nursing
PPTX
Cell Structure & Organelles in detailed.
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
01-Introduction-to-Information-Management.pdf
PDF
Business Ethics Teaching Materials for college
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
RMMM.pdf make it easy to upload and study
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PPTX
master seminar digital applications in india
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
Week 4 Term 3 Study Techniques revisited.pptx
Basic Mud Logging Guide for educational purpose
PPH.pptx obstetrics and gynecology in nursing
Cell Structure & Organelles in detailed.
Anesthesia in Laparoscopic Surgery in India
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
Abdominal Access Techniques with Prof. Dr. R K Mishra
01-Introduction-to-Information-Management.pdf
Business Ethics Teaching Materials for college
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Final Presentation General Medicine 03-08-2024.pptx
O5-L3 Freight Transport Ops (International) V1.pdf
Microbial disease of the cardiovascular and lymphatic systems
RMMM.pdf make it easy to upload and study
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
master seminar digital applications in india
STATICS OF THE RIGID BODIES Hibbelers.pdf

SE - Lecture 11 - Software Project Estimation.pptx

  • 1. Estimation for Software Projects Software Engineering ITS66404 This Photo by Unknown Author is licensed under CC BY-SA
  • 2. Agenda Software Project Planning Estimation Steps Scope Categories of Estimation Estimation Techniques Examples 2
  • 3. Introduction Software Project Planning encompasses 5 major activities. Estimation is one if it. Estimation is a process to predict the time and the cost that a project requires to be finished appropriately. But in terms of software development, it also means of consideration of the experience of the software development company; the technique they employ; the process they may go through to finish the task. This whole process requires the use of complex tools and good mathematical background knowledge. It is in some cases is the accomplishment of the hard work of a whole team. 3
  • 4. Sample footer text 3/1/20XX 4 HOW MUCH WILL YOUR SOFTWARE COST?
  • 5. Software Project Planning + Encompasses of 5 major activities: Estimation, scheduling, risk analysis, Quality Management Planning & Change Management Planning. + Estimation determine how much money, effort, resources and time it will take to build a specific system or software Sample footer text 3/1/20XX 5
  • 6. 1st Estimation Steps  The software team first estimates: + The work to be done + The resources required + The time that will elapse (the time it will take) from start to finish Sample footer text 3/1/20XX 6
  • 7. 2nd Estimation Steps  They will establish a project schedule that + Defines tasks and milestones + Identifies who is responsible for conducting tasks + Specifies intertask dependencies Sample footer text 3/1/20XX 7
  • 8. 8 Task Set For Project Planning 1. Establish project scope 2. Determine feasibility 3. Analyze risks 1. Risk analysis already discussed in Project Management chapter. 4. Define required resources 1. Determine require human resources 2. Define reusable software resources 3. Identify environmental resources 5. Estimate cost and effort + Decompose the problem + Develop two or more estimates using size, function points, process tasks or use-cases + Reconcile the estimates 6. Develop a project schedule + Establish a meaningful task set + Define a task network + Use scheduling tools to develop a timeline chart + Define schedule tracking mechanisms
  • 9. 9 Observation on Estimation + Estimation of resources, cost, and schedule for a software engineering effort requires: • experience • access to good historical information (metrics) • the courage to commit to quantitative predictions when qualitative information is all that exists + Estimation carries inherent risk and this risk leads to uncertainty
  • 10. 10 Write it Down! Software Project Plan Project Scope Estimates Risks Schedule Control strategy
  • 11. 11 To Understand Scope ... + Understand the customers needs + understand the business context + understand the project boundaries + understand the customer’s motivation + understand the likely paths for change + understand that ... Even when you understand, nothing is guaranteed!
  • 12. 12 What is Scope? + Software scope describes the functions and features that are to be delivered to end-users the data that are input and output the “content” that is presented to users as a consequence of using the software the performance, constraints, interfaces, and reliability that bound the system. + Scope is defined using one of two techniques: + A narrative description of software scope is developed after communication with all stakeholders. + A set of use-cases is developed by end-users.
  • 13. 13 Categories of Resources + People + Environment + Reusable Software
  • 14. 14 Project Estimation Considerations + Project scope must be understood + Elaboration (decomposition) is necessary + Historical metrics are very helpful + At least two different techniques should be used + Uncertainty is inherent in the process
  • 16. 16 Estimation Techniques + Past (similar) project experience + Conventional estimation techniques task breakdown and effort estimates size (e.g., FP) estimates + Empirical models + Automated tools There are plenty of estimation strategies that estimators could employ. But, firstly, they could take into consideration the complexity of the project, the amount of information acquired, and time constraints. An appropriate combination of those things could result in the estimating approaches as follows:
  • 17. 17 Estimation Accuracy + Predicated on … the degree to which the planner has properly estimated the size of the product to be built the ability to translate the size estimate into human effort, calendar time, and dollars (a function of the availability of reliable software metrics from past projects) the degree to which the project plan reflects the abilities of the software team the stability of product requirements and the environment that supports the software engineering effort. The whole process of estimation would cost the company rather considerable cost and time at the very first stage of building an app. But this will make the final result more credible, realistic, and customer- satisfying. Projects especially big ones are advised to employ this crucial step to avoid unpredictable failure.
  • 18. 18 Conventional Techniques: 1. LOC/FP Approach + compute LOC/FP using estimates of information domain values + use historical data to build estimates for the project + LOC- Line of Codes + FP – Function points
  • 19. 19 Example: LOC Approach Average productivity for systems of this type = 620 LOC/pm. Burdened labor rate =$8000 per month, the cost per line of code is approximately $13. Based on the LOC estimate and the historical productivity data, the total estimated project cost is $431,000 and the estimated effort is 54 person-months.
  • 20. 2. FP Approach + A Function Point (FP) is a unit of measurement to express the amount of business functionality, an information system (as a product) provides to a user. + FPs measure software size. They are widely accepted as an industry standard for functional sizing. 20
  • 21. 21 Example: FP Approach average productivity = 6.5 FP/pm. burdened labor rate = $8000 per month, approximately $1230/FP. Based on the FP estimate and the historical productivity data, total estimated project cost is $461,000 and estimated effort is 58 person-months.
  • 22. 22 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw- Hill 2009). Slides copyright 2009 by Roger Pressman. Tool-Based Estimation project characteristics calibration factors LOC/FP data
  • 23. 23 Estimation with Use-Cases Using 620 LOC/pm as the average productivity for systems of this type and a burdened labor rate of $8000 per month, the cost per line of code is approximately $13. Based on the use-case estimate and the historical productivity data, the total estimated project cost is $552,000 and the estimated effort is 68 person-months.
  • 27. 27