U & P U. Patel Department of Computer Engineering
SOFTWARE ENGINEERING
COCOMO-FP calculation
Prepared by:
Dr. Sneha Padhiar
Assistant Professor,
U & P U. Patel Department of
Computer Engineering
1
4/10/2024
2
Software Cost Estimation
• Determine size of the product
• From the size estimate,
• determine the effort needed.
• From the effort estimate,
• determine project duration, and cost.
3
Size
Estimation
Effort
Estimation
Cost
Estimation
Duration
Estimation
Staffing
Estimation
Scheduling
Software Cost Estimation
4
Software Measurement
 Direct Measures (internal attributes)
Cost, effort, LOC, speed, memory
 Indirect Measures (external attributes)
Functionality, quality, complexity, efficiency, reliability, maintainability
5
Size Oriented metrics
 Size-oriented software metrics are derived by normalizing quality and/or
productivity measures by considering the size of the software that has been
produced.
simple size-oriented metrics for each project:
 Errors per KLOC (thousand lines of code)
 Defects per KLOC
 $ per KLOC
 Pages of documentation per KLOC
 Errors per person-month
 KLOC per person-month
 $ per page of documentation
6
Software Cost Estimation Techniques
• Empirical techniques:
• an educated guess based on past experience.
• Heuristic techniques:
• assume that the characteristics to be estimated can be expressed in terms of
some mathematical expression.
• Analytical techniques:
• derive the required results starting from certain simple assumptions.
7
Empirical Size Estimation
Techniques
•Expert Judgement:
•An euphemism for guess made by an expert.
•Suffers from individual bias.
•Delphi Estimation:
•overcomes some of the problems of expert
judgement.
8
Software Size Metrics
•LOC (Lines of Code):
•Simplest and most widely used metric.
•Comments and blank lines should not be counted.
9
COCOMO Model
•COCOMO (COnstructive COst MOdel) proposed by
Boehm.
•Divides software product developments into 3
categories:
• Organic
• Semidetached
• Embedded
10
Elaboration of Product classes
• Organic:
• Relatively small groups
• working to develop well-understood applications.
• Semidetached:
• Project team consists of a mixture of experienced and
inexperienced staff.
• Embedded:
• The software is strongly coupled to complex hardware,
or real-time systems.
11
COCOMO Model(CONT.)
• For each of the three product categories:
• From size estimation (in KLOC), Boehm provides equations to predict:
• project duration in months
• effort in programmer-months
• Boehm obtained these equations:
• examined historical data collected from a large number of actual projects.
12
COCOMO Model(CONT.)
•Software cost estimation is done through three
stages:
•Basic COCOMO,
•Intermediate COCOMO,
•Complete COCOMO.
13
Basic COCOMO Model(CONT.)
•Gives only an approximate estimation:
• Effort = a1 * (KLOC)^a2
• Tdev = b1 * (Effort)^b2
• KLOC is the estimated kilo lines of source
code,
• a1,a2,b1,b2 are constants for different
categories of software products,
• Tdev is the estimated time to develop the
software in months,
• Effort estimation is obtained in terms of
person months (PMs).
14
Development Effort Estimation
•Organic :
• Effort = 2.4 (KLOC)^1.05 PM
• Semi-detached:
•Effort = 3.0(KLOC)^1.12 PM
• Embedded:
•Effort = 3.6 (KLOC)^1.20PM
15
Development Time Estimation
•Organic:
•Tdev = 2.5 (Effort)^0.38 Months
•Semi-detached:
•Tdev = 2.5 (Effort)^0.35 Months
•Embedded:
•Tdev = 2.5 (Effort)^0.32 Months
16
Development Effort & Time Estimation
• Organic :
• Effort = 2.4 (KLOC)^1.05 PM
• Tdev = 2.5 (Effort)^0.38 Months
• Semi-detached:
• Effort = 3.0(KLOC)^1.12 PM
• Tdev = 2.5 (Effort)^0.35 Months
• Embedded:
• Effort = 3.6 (KLOC)^1.20PM
• Tdev = 2.5 (Effort)^0.32 Months
17
Example
• The size of an organic software product has been estimated to be
32,000 lines of source code.
• Effort = 2.4*(32)^1.05 = 91 PM
• Nominal development time = 2.5*(91)^0.38 = 14 months
Let’s Try
• Assume that the size of an organic s/w product has been estimated
to be 32,000 lines of source code. Assume that the average salary
of software be Rs. 15,000/- month. Determine the effort required to
develop the software product and the nominal development time.
• Suppose you are developing a software product in the Embedded
mode. You have estimated size of the product to be about
1, 00,000 lines of code. Compute the nominal effort and
development time.
19
Function Point Metric
• Overcomes some of the shortcomings of the LOC metric
• Proposed by Albrecht in early 80's:
• FP=4 #inputs + 5 #Outputs + 4 #inquiries + 10 #files + 10 #interfaces
• Input:
• A set of related inputs is counted as one input.
20
Function Point Metric
• Output:
• A set of related outputs is counted as one output.
• Inquiries:
• Each user query type is counted.
• Files:
• Files are logically related data and thus can be data
structures or physical files.
• Interface:
• Data transfer to other systems.
FUNCTION POINT CALCULATION(FP POINT)
Practice sum
FP:
Compute function point value for a project with the following domain characteristics:
No. of I/P = 30
No. of O/P = 62
No. of user Inquiries = 24
No. of files = 8
No. of external interfaces = 2
Assume that all the complexity adjustment values are average. Find FP Point and LOC for the same. Using COCOMO model
calculate the total effort required to complete above task
COCOMO:
Suppose you are developing a software product in the organic mode. You have estimated size of the product to be about
1, 00,000 lines of code. Compute the nominal effort and development time.
Calculator Link
• https://w3.cs.jmu.edu/bernstdh/web/common/webapps/oop/fpcalculat
or/FunctionPointCalculator.html
• http://groups.umd.umich.edu/cis/course.des/cis525/js/f00/harvey/FP
_Calc.html
• https://www.qsm.com/resources/function-point-languages-table

SOFTWARE ESTIMATION COCOMO AND FP CALCULATION

  • 1.
    U & PU. Patel Department of Computer Engineering SOFTWARE ENGINEERING COCOMO-FP calculation Prepared by: Dr. Sneha Padhiar Assistant Professor, U & P U. Patel Department of Computer Engineering 1 4/10/2024
  • 2.
    2 Software Cost Estimation •Determine size of the product • From the size estimate, • determine the effort needed. • From the effort estimate, • determine project duration, and cost.
  • 3.
  • 4.
    4 Software Measurement  DirectMeasures (internal attributes) Cost, effort, LOC, speed, memory  Indirect Measures (external attributes) Functionality, quality, complexity, efficiency, reliability, maintainability
  • 5.
    5 Size Oriented metrics Size-oriented software metrics are derived by normalizing quality and/or productivity measures by considering the size of the software that has been produced. simple size-oriented metrics for each project:  Errors per KLOC (thousand lines of code)  Defects per KLOC  $ per KLOC  Pages of documentation per KLOC  Errors per person-month  KLOC per person-month  $ per page of documentation
  • 6.
    6 Software Cost EstimationTechniques • Empirical techniques: • an educated guess based on past experience. • Heuristic techniques: • assume that the characteristics to be estimated can be expressed in terms of some mathematical expression. • Analytical techniques: • derive the required results starting from certain simple assumptions.
  • 7.
    7 Empirical Size Estimation Techniques •ExpertJudgement: •An euphemism for guess made by an expert. •Suffers from individual bias. •Delphi Estimation: •overcomes some of the problems of expert judgement.
  • 8.
    8 Software Size Metrics •LOC(Lines of Code): •Simplest and most widely used metric. •Comments and blank lines should not be counted.
  • 9.
    9 COCOMO Model •COCOMO (COnstructiveCOst MOdel) proposed by Boehm. •Divides software product developments into 3 categories: • Organic • Semidetached • Embedded
  • 10.
    10 Elaboration of Productclasses • Organic: • Relatively small groups • working to develop well-understood applications. • Semidetached: • Project team consists of a mixture of experienced and inexperienced staff. • Embedded: • The software is strongly coupled to complex hardware, or real-time systems.
  • 11.
    11 COCOMO Model(CONT.) • Foreach of the three product categories: • From size estimation (in KLOC), Boehm provides equations to predict: • project duration in months • effort in programmer-months • Boehm obtained these equations: • examined historical data collected from a large number of actual projects.
  • 12.
    12 COCOMO Model(CONT.) •Software costestimation is done through three stages: •Basic COCOMO, •Intermediate COCOMO, •Complete COCOMO.
  • 13.
    13 Basic COCOMO Model(CONT.) •Givesonly an approximate estimation: • Effort = a1 * (KLOC)^a2 • Tdev = b1 * (Effort)^b2 • KLOC is the estimated kilo lines of source code, • a1,a2,b1,b2 are constants for different categories of software products, • Tdev is the estimated time to develop the software in months, • Effort estimation is obtained in terms of person months (PMs).
  • 14.
    14 Development Effort Estimation •Organic: • Effort = 2.4 (KLOC)^1.05 PM • Semi-detached: •Effort = 3.0(KLOC)^1.12 PM • Embedded: •Effort = 3.6 (KLOC)^1.20PM
  • 15.
    15 Development Time Estimation •Organic: •Tdev= 2.5 (Effort)^0.38 Months •Semi-detached: •Tdev = 2.5 (Effort)^0.35 Months •Embedded: •Tdev = 2.5 (Effort)^0.32 Months
  • 16.
    16 Development Effort &Time Estimation • Organic : • Effort = 2.4 (KLOC)^1.05 PM • Tdev = 2.5 (Effort)^0.38 Months • Semi-detached: • Effort = 3.0(KLOC)^1.12 PM • Tdev = 2.5 (Effort)^0.35 Months • Embedded: • Effort = 3.6 (KLOC)^1.20PM • Tdev = 2.5 (Effort)^0.32 Months
  • 17.
    17 Example • The sizeof an organic software product has been estimated to be 32,000 lines of source code. • Effort = 2.4*(32)^1.05 = 91 PM • Nominal development time = 2.5*(91)^0.38 = 14 months
  • 18.
    Let’s Try • Assumethat the size of an organic s/w product has been estimated to be 32,000 lines of source code. Assume that the average salary of software be Rs. 15,000/- month. Determine the effort required to develop the software product and the nominal development time. • Suppose you are developing a software product in the Embedded mode. You have estimated size of the product to be about 1, 00,000 lines of code. Compute the nominal effort and development time.
  • 19.
    19 Function Point Metric •Overcomes some of the shortcomings of the LOC metric • Proposed by Albrecht in early 80's: • FP=4 #inputs + 5 #Outputs + 4 #inquiries + 10 #files + 10 #interfaces • Input: • A set of related inputs is counted as one input.
  • 20.
    20 Function Point Metric •Output: • A set of related outputs is counted as one output. • Inquiries: • Each user query type is counted. • Files: • Files are logically related data and thus can be data structures or physical files. • Interface: • Data transfer to other systems.
  • 21.
  • 29.
    Practice sum FP: Compute functionpoint value for a project with the following domain characteristics: No. of I/P = 30 No. of O/P = 62 No. of user Inquiries = 24 No. of files = 8 No. of external interfaces = 2 Assume that all the complexity adjustment values are average. Find FP Point and LOC for the same. Using COCOMO model calculate the total effort required to complete above task COCOMO: Suppose you are developing a software product in the organic mode. You have estimated size of the product to be about 1, 00,000 lines of code. Compute the nominal effort and development time.
  • 30.
    Calculator Link • https://w3.cs.jmu.edu/bernstdh/web/common/webapps/oop/fpcalculat or/FunctionPointCalculator.html •http://groups.umd.umich.edu/cis/course.des/cis525/js/f00/harvey/FP _Calc.html • https://www.qsm.com/resources/function-point-languages-table