SlideShare a Scribd company logo
"
Chapter 5: Software
effort estimation
NET481: Project Management
Afnan Albahli
Topics to be covered
  Difficulties of Estimation‭ ‬
  Where are estimates done?
  Problems of over- and under- estimate
  Estimation techniques
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
2
What makes a successful
project?
Delivering:
  agreed functionality
  on time
  at the agreed cost
  with the required quality
Stages:
1. set targets
2. Attempt to achieve targets
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
3
BUT what if the targets are not achievable?
What makes a successful
project?
  Targets are set for a project and the project manager tries to
meet them
  A project manager has to produce‭:
  An estimate of the effort‭.
  An estimate of the activity durations‭.
  An estimate of
  effort‭ affects Cost
  An estimate of
  activity durations‭ affects The delivery time
4
Some problems with estimating
  Nature of software‭. ‬
  Complexity and invisibility of software‭.
  Subjective nature of much of estimating
  Over-estimating small tasks and‭
  Under-estimating large ones‭.
  Political pressures
  Different objectives of people in an organization‭
  Managers may wish to reduce estimated costs in order to win
support for acceptance of a project proposal
‬ ‬
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
5
Some problems with estimating
  Changing technologies
  Technology is rapidly changing‭, ‬making the experience
of previous‭ ‬project estimates difficult to use in new ones‭. ‬
  Projects differ
  Experience on one project may not be applicable to
another
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
6
Where are estimates done‭?
Estimates are carried out at different stages of a software‭
project for a variety of reasons‭.
  Feasibility study‭
  Estimates here conforms that the benefits of the potential
system will justify the costs‭ ‬
  Strategic planning‭
  Project portfolio management will involve‭:
  Estimating benefits and costs of new applications‭ (‬projects‭) ‬to
allocate priorities‭.
  Such estimates may also influence the scale of development
staff recruitment ‬
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
7
Where are estimates done‭?
  System specification‭
  Design shows how user requirements will be fulfilled‭.
  Estimating The efforts needed to implement different‭ design
proposals‭.
  Estimates at the design stage will also confirm that the
feasibility study is still valid‭
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
8
Where are estimates done‭?
  Evaluation of suppliers proposals‭
  A manager could consider putting development to tender
  Potential contractors would examine the system‭ specifications
and produce estimates‭ (‬their bid‭). ‬ ‬
  The manager can still produce his own estimates why‭? ‬
  To question a bid that for instance that seems too low‭ which could
be an indication of a bad understanding‭ of the system
specifications‭.
  Or to compare the bids to in-house development
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
9
Where are estimates done‭?
  Project planning
  As the planning and implementation of the project‭ becomes
more detailed ‬
  More estimates of smaller work components will be‭ made
  These will confirm earlier broad estimates‭
  And support more detailed planning‭ (‬e.g‭. ‬staff‭ allocation)
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
10
Over- and under- estimating
  An over-estimate is likely to cause project to take longer than it
would otherwise
  This can be explained by the application of two laws‭:
  Parkinson’s Law: ‘Work expands to fill the time available’
  Thus‭, ‬e.g‭. ‬for an easy task over estimating the duration
required to complete it will cause some staff to work less‭
hard to fill the time‭.
  Brook’s Law‭: ‬putting more people on a late job makes it‭ later
  So overestimating the effort required to perform a task‭
(‬activity‭) ‬means more staff assigned to it than needed‭
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
11
Over- and under- estimating
  Underestimating a project‭: Can cause the project to not be delivered‭
on time or cost
  but still could be delivered faster than a more generous estimate
  On the other side the danger of underestimating a project is the
effect on the quality
  Zeroth law of reliability‭: ‬if a system doesn't have to be reliable it
can meet any other objective
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
12
Basis for successful estimating
A.  The need for historical data‭.
  Most estimating methods need information about past projects
  Care has to be considered when applying past performance
to new projects because of possible‭ differences in factors such as‭:
  Different programming languages
  Different experience of staff‭‭
  Different terminology
There are international Data Base containing data about thousands of‭
projects that can be used as reference‭‭
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
13
Basis for successful estimating
B.  Measuring work‭.
  The time and cost to implement software depends on‭:
  The developer’s capability and experience
  The technology that will be used‭
  The usual practice is to start by expressing work size
‭‭independently of the effort‭, using measures such as:
(‬
a)
S
LOC OR KLOC‭: ‬Source lines of code or thousands of lines of‭
code
(‬b) Alternative size measure is Function Points‭ (‬FP‭)
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
14
A taxonomy of estimating
methods
  Bottom-up - activity based, analytical
  Parametric or algorithmic models e.g. function points
  Expert opinion - just guessing?
  Analogy - case-based, comparative
  Parkinson and ‘price to win’
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
15
Bottom-up versus top-down
  Bottom-up
  use when no past project data
  identify all tasks that have to be done – so quite time-
consuming
  use when you have no data about similar past projects
  Top-down
  produce overall estimate based on project cost drivers
  based on past project data
  divide overall estimate between jobs to be done
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
16
Bottom-up estimating
1. Break project into smaller and smaller components
2. Stop when you get to what one person can do in one/two
weeks
3. Estimate costs for the lowest level activities
4. At each higher level calculate estimate by adding estimates
for lower levels
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
17
Top-down Estimation‭
  It is associated with parametric or algorithmic models‭.
  A formula for a parametric model‭:
  Effort‭ = (‬System Size‭) * (‬Productivity Rate‭)
  The model of forecasting the SW development effort has
two components
  System size is a method of assessing the amount of‭ work
  Productivity rate is a method of assessing the rate of‭ work at
which the task can be done‭
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
18
Top-down Estimation‭
  Example:
System Size‭ = ‬3‭ ‬KLOC‭.‭
Productivity Rate‭ = ‬40‭ ‬days per KLOC‭.
Effort‭ = (‬System Size‭) * (‬Productivity Rate‭)
Effort‭ = ‬3‭* ‬40‭ =‬120‭ ‬Days‭.
System Size is a size driver‭.
Productivity Rate is a productivity driver‭.
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
19
Top-down Estimation‭
  Other parametric models‭:
  Function points is concerned more with task sizes‭.
  COCOMO is concerned more with productivity rate‭.
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
20
Top-down estimates
  Produce overall
estimate using effort
driver(s)
  distribute proportions
of overall estimate to
components
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
21
design code
overall
project
test
Estimate
100 days
30%
i.e.
30 days
30%
i.e.
30 days
40%
i.e. 40 days
Estimation by Analogy‭
  It is also called case-based reasoning‭.
  For a new project the estimator identifies the previous‭
completed projects that have similar characteristics to it‭.
  The new project is referred to as the target project or target
case
  The completed projects are referred to as the source projects or
source case
  The effort recorded for the matching source case is used as the
base estimate for the target project‭
  The estimator calculates an estimate for the new project by‭
adjusting the‭ (‬base estimate‭) ‬based on the differences
that exist‭ between the two projects
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
22
Estimation by Analogy‭
  There are software tools that automate this process by‭
selecting the nearest project cases to the new project‭.
  Some software tools perform that by measuring the‭ ‬
  Euclidean distance between cases‭ (‬projects‭).
  The Euclidean distance is calculated as follows‭: ‬
distance‭= ‬square-root of‭ ((‬target_parameter1-source_parameter1)2 ….
+ (‬target_parameter‭n -‬source_parameter‭n )‬2‭ )‬
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
23
Estimation by Analogy‭ Example
  Assume that cases are matched on the basis of two‭
parameters‭, ‬the number of inputs and the number of outputs‭.
•  The new project‭ (‬target case‭) ‬requires 7‭ ‬inputs and 15‭ output
•  You are looking into two past cases‭ (‬source cases‭) ‬to find a
better analogy with the target project‭: ‬
•  Project A‭: ‬has 8‭ ‬inputs and 17‭ ‬outputs‭.
•  Project B‭: ‬has 5‭ ‬inputs and 10‭ ‬outputs‭.
Which is a more closer match for the new project A or project B‭?
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
24
Answer
  Distance between new project and project A‭:
  Square-root of‭ ((‬7-8‭) ‬2‭ + (‬15-17‭) ‬2‭)= ‬2.24‭
  Distance between new project and project B‭:
  Square-root of‭ ((‬7-5‭) ‬2‭ + (‬15-10‭) ‬2‭)= ‬5.39
Project A is a better match because it has less distance than project B to
the new project‭
SPM (5e) Software effort estimation©
The McGraw-Hill Companies, 2009
25
Ad

More Related Content

What's hot (20)

Selection of an appropriate project approach
Selection of an appropriate project approachSelection of an appropriate project approach
Selection of an appropriate project approach
tumetr1
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
9anm12
 
Software Project Management ppt
Software Project Management pptSoftware Project Management ppt
Software Project Management ppt
Andreea Usatenco
 
Software Cost and Effort Esitmation
Software Cost and Effort EsitmationSoftware Cost and Effort Esitmation
Software Cost and Effort Esitmation
Muhammad Taqi
 
MG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENTMG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENT
Kathirvel Ayyaswamy
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimation
Dr. C.V. Suresh Babu
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
Reetesh Gupta
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
Krishna Sujeer
 
Function Point Analysis
Function Point AnalysisFunction Point Analysis
Function Point Analysis
Araf Karsh Hamid
 
Software testing Report
Software testing ReportSoftware testing Report
Software testing Report
Ahmed Maher Khalifa, MQM, ISTQB, LSSGB, SFC
 
Project Estimation
Project EstimationProject Estimation
Project Estimation
Kasun Ranga Wijeweera
 
Resource Allocation In Software Project Management
Resource Allocation In Software Project ManagementResource Allocation In Software Project Management
Resource Allocation In Software Project Management
Syed Hassan Ali
 
Project Management Concepts
Project Management ConceptsProject Management Concepts
Project Management Concepts
Saqib Raza
 
Spm unit 4
Spm unit 4Spm unit 4
Spm unit 4
sweetyammu
 
Software Project Estimation
Software Project EstimationSoftware Project Estimation
Software Project Estimation
Frank Vogelezang
 
SPM PPT
SPM PPTSPM PPT
SPM PPT
Suresh Kumar
 
software quality
software qualitysoftware quality
software quality
preetikapri1
 
Spm
Spm Spm
Spm
Suresh Kumar
 
Spm
Spm Spm
Spm
Suresh Kumar
 
New product development on antivirus
New product development on antivirusNew product development on antivirus
New product development on antivirus
PT Bipin Bhardwaj
 
Selection of an appropriate project approach
Selection of an appropriate project approachSelection of an appropriate project approach
Selection of an appropriate project approach
tumetr1
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
9anm12
 
Software Project Management ppt
Software Project Management pptSoftware Project Management ppt
Software Project Management ppt
Andreea Usatenco
 
Software Cost and Effort Esitmation
Software Cost and Effort EsitmationSoftware Cost and Effort Esitmation
Software Cost and Effort Esitmation
Muhammad Taqi
 
MG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENTMG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENT
Kathirvel Ayyaswamy
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
Reetesh Gupta
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
Krishna Sujeer
 
Resource Allocation In Software Project Management
Resource Allocation In Software Project ManagementResource Allocation In Software Project Management
Resource Allocation In Software Project Management
Syed Hassan Ali
 
Project Management Concepts
Project Management ConceptsProject Management Concepts
Project Management Concepts
Saqib Raza
 
Software Project Estimation
Software Project EstimationSoftware Project Estimation
Software Project Estimation
Frank Vogelezang
 
New product development on antivirus
New product development on antivirusNew product development on antivirus
New product development on antivirus
PT Bipin Bhardwaj
 

Similar to software-effort_estimation(updated)9 ch05 (20)

Chapter 5 -Software cost estimate- ref.pptx
Chapter 5 -Software cost estimate- ref.pptxChapter 5 -Software cost estimate- ref.pptx
Chapter 5 -Software cost estimate- ref.pptx
rahatansari3
 
dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...
dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...
dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...
hkhalailah29
 
Chapter 05 Software effort estimation PartII_final
Chapter 05 Software effort estimation PartII_finalChapter 05 Software effort estimation PartII_final
Chapter 05 Software effort estimation PartII_final
RohanMistry15
 
Estimation sharbani bhattacharya
Estimation sharbani bhattacharyaEstimation sharbani bhattacharya
Estimation sharbani bhattacharya
Sharbani Bhattacharya
 
Unit 5
Unit   5Unit   5
Unit 5
Jignesh Kariya
 
Ch05_Software_effort_estimuguhuigyugation (1).ppt
Ch05_Software_effort_estimuguhuigyugation (1).pptCh05_Software_effort_estimuguhuigyugation (1).ppt
Ch05_Software_effort_estimuguhuigyugation (1).ppt
piya99284
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5
SIMONTHOMAS S
 
Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2
Ram Paliwal
 
Sm presentation
Sm presentationSm presentation
Sm presentation
Bahria University Islamabad, Pakistan
 
Lecture5
Lecture5Lecture5
Lecture5
soloeng
 
estimation-for-software-projects-chapter-26-ppt.pptx
estimation-for-software-projects-chapter-26-ppt.pptxestimation-for-software-projects-chapter-26-ppt.pptx
estimation-for-software-projects-chapter-26-ppt.pptx
ubaidullah75790
 
Comparison of available Methods to Estimate Effort, Performance and Cost with...
Comparison of available Methods to Estimate Effort, Performance and Cost with...Comparison of available Methods to Estimate Effort, Performance and Cost with...
Comparison of available Methods to Estimate Effort, Performance and Cost with...
International Journal of Engineering Inventions www.ijeijournal.com
 
A new model for software costestimation
A new model for software costestimationA new model for software costestimation
A new model for software costestimation
ijfcstjournal
 
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCHA NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
ijfcstjournal
 
Chapter Seven about -project-evaluation.ppt
Chapter Seven about -project-evaluation.pptChapter Seven about -project-evaluation.ppt
Chapter Seven about -project-evaluation.ppt
nunezamarcraniel
 
Spm
Spm Spm
Spm
Suresh Kumar
 
Software Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceSoftware Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer Science
Arti Parab Academics
 
Chapter 2 -project evaluation
Chapter 2 -project evaluationChapter 2 -project evaluation
Chapter 2 -project evaluation
RohanMistry15
 
The True Costs and Benefits of CMMI Level 5
The True Costs and Benefits of CMMI Level 5The True Costs and Benefits of CMMI Level 5
The True Costs and Benefits of CMMI Level 5
rhefner
 
21UCAE52 Software Project Management.ppt
21UCAE52 Software Project Management.ppt21UCAE52 Software Project Management.ppt
21UCAE52 Software Project Management.ppt
ssuser7f90ae
 
Chapter 5 -Software cost estimate- ref.pptx
Chapter 5 -Software cost estimate- ref.pptxChapter 5 -Software cost estimate- ref.pptx
Chapter 5 -Software cost estimate- ref.pptx
rahatansari3
 
dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...
dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...
dokumen.tips_spm-5e-software-effort-estimation-the-mcgraw-hill-companies-2009...
hkhalailah29
 
Chapter 05 Software effort estimation PartII_final
Chapter 05 Software effort estimation PartII_finalChapter 05 Software effort estimation PartII_final
Chapter 05 Software effort estimation PartII_final
RohanMistry15
 
Ch05_Software_effort_estimuguhuigyugation (1).ppt
Ch05_Software_effort_estimuguhuigyugation (1).pptCh05_Software_effort_estimuguhuigyugation (1).ppt
Ch05_Software_effort_estimuguhuigyugation (1).ppt
piya99284
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5
SIMONTHOMAS S
 
Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2Software project planning in software engineering by ram k paliwal unit 2
Software project planning in software engineering by ram k paliwal unit 2
Ram Paliwal
 
Lecture5
Lecture5Lecture5
Lecture5
soloeng
 
estimation-for-software-projects-chapter-26-ppt.pptx
estimation-for-software-projects-chapter-26-ppt.pptxestimation-for-software-projects-chapter-26-ppt.pptx
estimation-for-software-projects-chapter-26-ppt.pptx
ubaidullah75790
 
A new model for software costestimation
A new model for software costestimationA new model for software costestimation
A new model for software costestimation
ijfcstjournal
 
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCHA NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
A NEW MODEL FOR SOFTWARE COSTESTIMATION USING HARMONY SEARCH
ijfcstjournal
 
Chapter Seven about -project-evaluation.ppt
Chapter Seven about -project-evaluation.pptChapter Seven about -project-evaluation.ppt
Chapter Seven about -project-evaluation.ppt
nunezamarcraniel
 
Software Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceSoftware Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer Science
Arti Parab Academics
 
Chapter 2 -project evaluation
Chapter 2 -project evaluationChapter 2 -project evaluation
Chapter 2 -project evaluation
RohanMistry15
 
The True Costs and Benefits of CMMI Level 5
The True Costs and Benefits of CMMI Level 5The True Costs and Benefits of CMMI Level 5
The True Costs and Benefits of CMMI Level 5
rhefner
 
21UCAE52 Software Project Management.ppt
21UCAE52 Software Project Management.ppt21UCAE52 Software Project Management.ppt
21UCAE52 Software Project Management.ppt
ssuser7f90ae
 
Ad

More from Shahid Riaz (20)

Shimla deputation (1906)
Shimla deputation (1906)Shimla deputation (1906)
Shimla deputation (1906)
Shahid Riaz
 
#Syed ahmad shaheed barailvi
#Syed ahmad shaheed barailvi#Syed ahmad shaheed barailvi
#Syed ahmad shaheed barailvi
Shahid Riaz
 
How to program in c++ with 100 examples
How to program in c++ with 100 examples  How to program in c++ with 100 examples
How to program in c++ with 100 examples
Shahid Riaz
 
Virtual private networks in theory and practice
Virtual private networks in theory and practiceVirtual private networks in theory and practice
Virtual private networks in theory and practice
Shahid Riaz
 
Database systems administration week 1
Database systems administration week 1Database systems administration week 1
Database systems administration week 1
Shahid Riaz
 
Database systems administration traning 02
Database systems administration traning 02Database systems administration traning 02
Database systems administration traning 02
Shahid Riaz
 
Database systems administration traning 02
Database systems administration traning 02Database systems administration traning 02
Database systems administration traning 02
Shahid Riaz
 
Database systems administration traning 01
Database systems administration traning 01Database systems administration traning 01
Database systems administration traning 01
Shahid Riaz
 
Database systems administration traning 0
Database systems administration traning 0Database systems administration traning 0
Database systems administration traning 0
Shahid Riaz
 
Database systems administration traning 04
Database systems administration traning  04Database systems administration traning  04
Database systems administration traning 04
Shahid Riaz
 
Managing people and organizing team
Managing people and organizing teamManaging people and organizing team
Managing people and organizing team
Shahid Riaz
 
Lec 1 intro to internet
Lec 1 intro to internetLec 1 intro to internet
Lec 1 intro to internet
Shahid Riaz
 
Course guidlines course book it 3548
Course guidlines course book it 3548Course guidlines course book it 3548
Course guidlines course book it 3548
Shahid Riaz
 
Lecture12 software design class diagram
Lecture12 software design class diagramLecture12 software design class diagram
Lecture12 software design class diagram
Shahid Riaz
 
Lecture11 use case sequence diagram
Lecture11 use case sequence diagramLecture11 use case sequence diagram
Lecture11 use case sequence diagram
Shahid Riaz
 
Lecture10 use case model operation contracts
Lecture10 use case model operation contractsLecture10 use case model operation contracts
Lecture10 use case model operation contracts
Shahid Riaz
 
Lecture9 domain model visualizing
Lecture9 domain model visualizingLecture9 domain model visualizing
Lecture9 domain model visualizing
Shahid Riaz
 
Lecture8 system sequence
Lecture8 system sequenceLecture8 system sequence
Lecture8 system sequence
Shahid Riaz
 
Lecture7 use case modeling
Lecture7 use case modelingLecture7 use case modeling
Lecture7 use case modeling
Shahid Riaz
 
Lecture6 activity diagrams
Lecture6 activity diagramsLecture6 activity diagrams
Lecture6 activity diagrams
Shahid Riaz
 
Shimla deputation (1906)
Shimla deputation (1906)Shimla deputation (1906)
Shimla deputation (1906)
Shahid Riaz
 
#Syed ahmad shaheed barailvi
#Syed ahmad shaheed barailvi#Syed ahmad shaheed barailvi
#Syed ahmad shaheed barailvi
Shahid Riaz
 
How to program in c++ with 100 examples
How to program in c++ with 100 examples  How to program in c++ with 100 examples
How to program in c++ with 100 examples
Shahid Riaz
 
Virtual private networks in theory and practice
Virtual private networks in theory and practiceVirtual private networks in theory and practice
Virtual private networks in theory and practice
Shahid Riaz
 
Database systems administration week 1
Database systems administration week 1Database systems administration week 1
Database systems administration week 1
Shahid Riaz
 
Database systems administration traning 02
Database systems administration traning 02Database systems administration traning 02
Database systems administration traning 02
Shahid Riaz
 
Database systems administration traning 02
Database systems administration traning 02Database systems administration traning 02
Database systems administration traning 02
Shahid Riaz
 
Database systems administration traning 01
Database systems administration traning 01Database systems administration traning 01
Database systems administration traning 01
Shahid Riaz
 
Database systems administration traning 0
Database systems administration traning 0Database systems administration traning 0
Database systems administration traning 0
Shahid Riaz
 
Database systems administration traning 04
Database systems administration traning  04Database systems administration traning  04
Database systems administration traning 04
Shahid Riaz
 
Managing people and organizing team
Managing people and organizing teamManaging people and organizing team
Managing people and organizing team
Shahid Riaz
 
Lec 1 intro to internet
Lec 1 intro to internetLec 1 intro to internet
Lec 1 intro to internet
Shahid Riaz
 
Course guidlines course book it 3548
Course guidlines course book it 3548Course guidlines course book it 3548
Course guidlines course book it 3548
Shahid Riaz
 
Lecture12 software design class diagram
Lecture12 software design class diagramLecture12 software design class diagram
Lecture12 software design class diagram
Shahid Riaz
 
Lecture11 use case sequence diagram
Lecture11 use case sequence diagramLecture11 use case sequence diagram
Lecture11 use case sequence diagram
Shahid Riaz
 
Lecture10 use case model operation contracts
Lecture10 use case model operation contractsLecture10 use case model operation contracts
Lecture10 use case model operation contracts
Shahid Riaz
 
Lecture9 domain model visualizing
Lecture9 domain model visualizingLecture9 domain model visualizing
Lecture9 domain model visualizing
Shahid Riaz
 
Lecture8 system sequence
Lecture8 system sequenceLecture8 system sequence
Lecture8 system sequence
Shahid Riaz
 
Lecture7 use case modeling
Lecture7 use case modelingLecture7 use case modeling
Lecture7 use case modeling
Shahid Riaz
 
Lecture6 activity diagrams
Lecture6 activity diagramsLecture6 activity diagrams
Lecture6 activity diagrams
Shahid Riaz
 
Ad

Recently uploaded (20)

How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 

software-effort_estimation(updated)9 ch05

  • 1. " Chapter 5: Software effort estimation NET481: Project Management Afnan Albahli
  • 2. Topics to be covered   Difficulties of Estimation‭ ‬   Where are estimates done?   Problems of over- and under- estimate   Estimation techniques SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 2
  • 3. What makes a successful project? Delivering:   agreed functionality   on time   at the agreed cost   with the required quality Stages: 1. set targets 2. Attempt to achieve targets SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 3 BUT what if the targets are not achievable?
  • 4. What makes a successful project?   Targets are set for a project and the project manager tries to meet them   A project manager has to produce‭:   An estimate of the effort‭.   An estimate of the activity durations‭.   An estimate of   effort‭ affects Cost   An estimate of   activity durations‭ affects The delivery time 4
  • 5. Some problems with estimating   Nature of software‭. ‬   Complexity and invisibility of software‭.   Subjective nature of much of estimating   Over-estimating small tasks and‭   Under-estimating large ones‭.   Political pressures   Different objectives of people in an organization‭   Managers may wish to reduce estimated costs in order to win support for acceptance of a project proposal ‬ ‬ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 5
  • 6. Some problems with estimating   Changing technologies   Technology is rapidly changing‭, ‬making the experience of previous‭ ‬project estimates difficult to use in new ones‭. ‬   Projects differ   Experience on one project may not be applicable to another SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 6
  • 7. Where are estimates done‭? Estimates are carried out at different stages of a software‭ project for a variety of reasons‭.   Feasibility study‭   Estimates here conforms that the benefits of the potential system will justify the costs‭ ‬   Strategic planning‭   Project portfolio management will involve‭:   Estimating benefits and costs of new applications‭ (‬projects‭) ‬to allocate priorities‭.   Such estimates may also influence the scale of development staff recruitment ‬ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 7
  • 8. Where are estimates done‭?   System specification‭   Design shows how user requirements will be fulfilled‭.   Estimating The efforts needed to implement different‭ design proposals‭.   Estimates at the design stage will also confirm that the feasibility study is still valid‭ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 8
  • 9. Where are estimates done‭?   Evaluation of suppliers proposals‭   A manager could consider putting development to tender   Potential contractors would examine the system‭ specifications and produce estimates‭ (‬their bid‭). ‬ ‬   The manager can still produce his own estimates why‭? ‬   To question a bid that for instance that seems too low‭ which could be an indication of a bad understanding‭ of the system specifications‭.   Or to compare the bids to in-house development SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 9
  • 10. Where are estimates done‭?   Project planning   As the planning and implementation of the project‭ becomes more detailed ‬   More estimates of smaller work components will be‭ made   These will confirm earlier broad estimates‭   And support more detailed planning‭ (‬e.g‭. ‬staff‭ allocation) SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 10
  • 11. Over- and under- estimating   An over-estimate is likely to cause project to take longer than it would otherwise   This can be explained by the application of two laws‭:   Parkinson’s Law: ‘Work expands to fill the time available’   Thus‭, ‬e.g‭. ‬for an easy task over estimating the duration required to complete it will cause some staff to work less‭ hard to fill the time‭.   Brook’s Law‭: ‬putting more people on a late job makes it‭ later   So overestimating the effort required to perform a task‭ (‬activity‭) ‬means more staff assigned to it than needed‭ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 11
  • 12. Over- and under- estimating   Underestimating a project‭: Can cause the project to not be delivered‭ on time or cost   but still could be delivered faster than a more generous estimate   On the other side the danger of underestimating a project is the effect on the quality   Zeroth law of reliability‭: ‬if a system doesn't have to be reliable it can meet any other objective SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 12
  • 13. Basis for successful estimating A.  The need for historical data‭.   Most estimating methods need information about past projects   Care has to be considered when applying past performance to new projects because of possible‭ differences in factors such as‭:   Different programming languages   Different experience of staff‭‭   Different terminology There are international Data Base containing data about thousands of‭ projects that can be used as reference‭‭ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 13
  • 14. Basis for successful estimating B.  Measuring work‭.   The time and cost to implement software depends on‭:   The developer’s capability and experience   The technology that will be used‭   The usual practice is to start by expressing work size ‭‭independently of the effort‭, using measures such as: (‬ a) S LOC OR KLOC‭: ‬Source lines of code or thousands of lines of‭ code (‬b) Alternative size measure is Function Points‭ (‬FP‭) SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 14
  • 15. A taxonomy of estimating methods   Bottom-up - activity based, analytical   Parametric or algorithmic models e.g. function points   Expert opinion - just guessing?   Analogy - case-based, comparative   Parkinson and ‘price to win’ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 15
  • 16. Bottom-up versus top-down   Bottom-up   use when no past project data   identify all tasks that have to be done – so quite time- consuming   use when you have no data about similar past projects   Top-down   produce overall estimate based on project cost drivers   based on past project data   divide overall estimate between jobs to be done SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 16
  • 17. Bottom-up estimating 1. Break project into smaller and smaller components 2. Stop when you get to what one person can do in one/two weeks 3. Estimate costs for the lowest level activities 4. At each higher level calculate estimate by adding estimates for lower levels SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 17
  • 18. Top-down Estimation‭   It is associated with parametric or algorithmic models‭.   A formula for a parametric model‭:   Effort‭ = (‬System Size‭) * (‬Productivity Rate‭)   The model of forecasting the SW development effort has two components   System size is a method of assessing the amount of‭ work   Productivity rate is a method of assessing the rate of‭ work at which the task can be done‭ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 18
  • 19. Top-down Estimation‭   Example: System Size‭ = ‬3‭ ‬KLOC‭.‭ Productivity Rate‭ = ‬40‭ ‬days per KLOC‭. Effort‭ = (‬System Size‭) * (‬Productivity Rate‭) Effort‭ = ‬3‭* ‬40‭ =‬120‭ ‬Days‭. System Size is a size driver‭. Productivity Rate is a productivity driver‭. SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 19
  • 20. Top-down Estimation‭   Other parametric models‭:   Function points is concerned more with task sizes‭.   COCOMO is concerned more with productivity rate‭. SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 20
  • 21. Top-down estimates   Produce overall estimate using effort driver(s)   distribute proportions of overall estimate to components SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 21 design code overall project test Estimate 100 days 30% i.e. 30 days 30% i.e. 30 days 40% i.e. 40 days
  • 22. Estimation by Analogy‭   It is also called case-based reasoning‭.   For a new project the estimator identifies the previous‭ completed projects that have similar characteristics to it‭.   The new project is referred to as the target project or target case   The completed projects are referred to as the source projects or source case   The effort recorded for the matching source case is used as the base estimate for the target project‭   The estimator calculates an estimate for the new project by‭ adjusting the‭ (‬base estimate‭) ‬based on the differences that exist‭ between the two projects SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 22
  • 23. Estimation by Analogy‭   There are software tools that automate this process by‭ selecting the nearest project cases to the new project‭.   Some software tools perform that by measuring the‭ ‬   Euclidean distance between cases‭ (‬projects‭).   The Euclidean distance is calculated as follows‭: ‬ distance‭= ‬square-root of‭ ((‬target_parameter1-source_parameter1)2 …. + (‬target_parameter‭n -‬source_parameter‭n )‬2‭ )‬ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 23
  • 24. Estimation by Analogy‭ Example   Assume that cases are matched on the basis of two‭ parameters‭, ‬the number of inputs and the number of outputs‭. •  The new project‭ (‬target case‭) ‬requires 7‭ ‬inputs and 15‭ output •  You are looking into two past cases‭ (‬source cases‭) ‬to find a better analogy with the target project‭: ‬ •  Project A‭: ‬has 8‭ ‬inputs and 17‭ ‬outputs‭. •  Project B‭: ‬has 5‭ ‬inputs and 10‭ ‬outputs‭. Which is a more closer match for the new project A or project B‭? SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 24
  • 25. Answer   Distance between new project and project A‭:   Square-root of‭ ((‬7-8‭) ‬2‭ + (‬15-17‭) ‬2‭)= ‬2.24‭   Distance between new project and project B‭:   Square-root of‭ ((‬7-5‭) ‬2‭ + (‬15-10‭) ‬2‭)= ‬5.39 Project A is a better match because it has less distance than project B to the new project‭ SPM (5e) Software effort estimation© The McGraw-Hill Companies, 2009 25