Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Software Estimation Techniques By: Kamalmeet Singh
What is Software Estimation? <ul><li>How much resources? </li></ul><ul><li>How much time? </li></ul><ul><li>How much effor...
Why do we need it? <ul><li>Would you like to start creating something without knowing the cost? </li></ul><ul><li>Will it ...
Difficulties <ul><li>Premature estimations, if you don’t have the complete details </li></ul><ul><li>Lack of Historical da...
How to do it?
Factors to be considered <ul><li>Product Objectives </li></ul><ul><li>Corporate Assets </li></ul><ul><li>Project Constrain...
Product Objectives <ul><li>Scope: </li></ul><ul><ul><li>Capabilities to be provided by the software </li></ul></ul><ul><li...
Corporate Assets <ul><li>People </li></ul><ul><li>Process models </li></ul><ul><li>Development tools </li></ul><ul><li>Reu...
Project Constraints <ul><li>Design constraints </li></ul><ul><ul><li>Compatibility with h/w and s/w </li></ul></ul><ul><ul...
What do we need to calculate? <ul><li>LOC </li></ul><ul><li>(Lines Of Code) </li></ul><ul><li>Or </li></ul><ul><li>FP </li...
Function Point Analysis <ul><li>Function point count= UFP * VAM </li></ul><ul><li>UFP: Unadjusted Function Point </li></ul...
Unadjusted FP (UFPs) <ul><li>1. External Inputs - data or control inputs (input files, tables, forms, screens, messages, e...
UFP metrics
Value Adjustment Factors <ul><li>1. data communications </li></ul><ul><li>2. distributed functions </li></ul><ul><li>3. pe...
Value Adjustment Multiplier <ul><li>0 - factor not present or has no influence </li></ul><ul><li>1 - insignificant influen...
Calculating Effort <ul><li>Effort in Person Month </li></ul><ul><li>For LOC </li></ul><ul><li>E=5.2 * (KLOC)^0.91  [waltso...
Models for Cost Estimation <ul><li>SDM- Software Development Model </li></ul><ul><li>SLIM- Software Lifecycle Management <...
Basic COCOMO Model <ul><li>Organic projects - are relatively small, simple software projects in which small teams with goo...
Basic COCOMO <ul><ul><li>E=a(KLOC)^b </li></ul></ul><ul><ul><li>D=c(E)^d </li></ul></ul><ul><ul><li>P=E/D </li></ul></ul><...
Intermediate COCOMO <ul><li>E= a( KLOC)^ (b) *  EAF   </li></ul><ul><ul><li>Software project a b </li></ul></ul><ul><ul><l...
EAF
Conclusion
Questions?
Thank You
Upcoming SlideShare
Loading in …5
×

75

Share

Software Estimation Techniques

A presentation about Software Estimation Techniques

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Software Estimation Techniques

  1. 1. Software Estimation Techniques By: Kamalmeet Singh
  2. 2. What is Software Estimation? <ul><li>How much resources? </li></ul><ul><li>How much time? </li></ul><ul><li>How much effort? </li></ul><ul><li>How much Cost? </li></ul>
  3. 3. Why do we need it? <ul><li>Would you like to start creating something without knowing the cost? </li></ul><ul><li>Will it be better to buy/outsource than create? </li></ul>
  4. 4. Difficulties <ul><li>Premature estimations, if you don’t have the complete details </li></ul><ul><li>Lack of Historical data </li></ul><ul><li>Failure to follow the estimates: conditions prescribed in the estimate must not be violated </li></ul><ul><li>Failure to update the estimates </li></ul>
  5. 5. How to do it?
  6. 6. Factors to be considered <ul><li>Product Objectives </li></ul><ul><li>Corporate Assets </li></ul><ul><li>Project Constraints </li></ul>
  7. 7. Product Objectives <ul><li>Scope: </li></ul><ul><ul><li>Capabilities to be provided by the software </li></ul></ul><ul><li>Quality: </li></ul><ul><ul><li>Performance </li></ul></ul><ul><ul><li>Resource usage </li></ul></ul><ul><ul><li>Compatibility with h/w and s/w </li></ul></ul><ul><ul><li>Factors like – usability, security, safety, reliabilty and transportability </li></ul></ul>
  8. 8. Corporate Assets <ul><li>People </li></ul><ul><li>Process models </li></ul><ul><li>Development tools </li></ul><ul><li>Reusable software components </li></ul><ul><li>Policies and procedures </li></ul><ul><li>Workplace environment </li></ul>
  9. 9. Project Constraints <ul><li>Design constraints </li></ul><ul><ul><li>Compatibility with h/w and s/w </li></ul></ul><ul><ul><li>Memory and timing </li></ul></ul><ul><ul><li>Implementation language </li></ul></ul><ul><li>Process constraints </li></ul><ul><ul><li>Number and type of people </li></ul></ul><ul><ul><li>Development environment </li></ul></ul><ul><ul><li>Scheduled delivery date </li></ul></ul>
  10. 10. What do we need to calculate? <ul><li>LOC </li></ul><ul><li>(Lines Of Code) </li></ul><ul><li>Or </li></ul><ul><li>FP </li></ul><ul><li>(Function Points) </li></ul>
  11. 11. Function Point Analysis <ul><li>Function point count= UFP * VAM </li></ul><ul><li>UFP: Unadjusted Function Point </li></ul><ul><li>VAM: Value Adjustment Multiplier </li></ul>
  12. 12. Unadjusted FP (UFPs) <ul><li>1. External Inputs - data or control inputs (input files, tables, forms, screens, messages, etc.) to the system </li></ul><ul><li>2. External Outputs - data or control outputs from the system </li></ul><ul><li>3. External Inquiries - I/O queries which require a response (prompts, interrupts, calls, etc.) </li></ul><ul><li>4. External Interfaces - libraries or programs which are passed into and out of the system (I/O routines, sorting procedures, math libraries, run-time libraries, etc.) </li></ul><ul><li>5. Internal Data Files - groupings of data stored internally in the system (entities, internal control files, directories) </li></ul>
  13. 13. UFP metrics
  14. 14. Value Adjustment Factors <ul><li>1. data communications </li></ul><ul><li>2. distributed functions </li></ul><ul><li>3. performance </li></ul><ul><li>4. heavily used operational configuration </li></ul><ul><li>5. transaction rate </li></ul><ul><li>6. on-line data entry </li></ul><ul><li>7. design for end user efficiency </li></ul><ul><li>8. on-line update of logical internal files </li></ul><ul><li>9. complex processing </li></ul><ul><li>10. reusability of system code </li></ul><ul><li>11. installation ease </li></ul><ul><li>12. operational ease </li></ul><ul><li>13. multiple sites </li></ul><ul><li>14. ease of change </li></ul>
  15. 15. Value Adjustment Multiplier <ul><li>0 - factor not present or has no influence </li></ul><ul><li>1 - insignificant influence </li></ul><ul><li>2 - moderate influence </li></ul><ul><li>3 - average influence </li></ul><ul><li>4 - significant influence </li></ul><ul><li>5 - strong influence </li></ul>
  16. 16. Calculating Effort <ul><li>Effort in Person Month </li></ul><ul><li>For LOC </li></ul><ul><li>E=5.2 * (KLOC)^0.91 [waltson-Felix model] </li></ul><ul><li>E=5.5 + 0.73 * (KLOC)^1.16 [Bailey Basili model] </li></ul><ul><li>E=3.2 * (KLOC)^1.05 [Boehm simple model] </li></ul><ul><li>E=5.288 * (KLOC)^1.047 [Doty model for KLOC>9] </li></ul><ul><li>For FP </li></ul><ul><li>E=-13.39 + 0.0545 FP [Albert and Gaffney model] </li></ul><ul><li>E=60.62 * 7.728 * 10^-8 FP^3 [Kermer model] </li></ul><ul><li>E=585.7 +15.12 FP [Matso, Barnett and Mellichamp model] </li></ul>
  17. 17. Models for Cost Estimation <ul><li>SDM- Software Development Model </li></ul><ul><li>SLIM- Software Lifecycle Management </li></ul><ul><li>COCOMO- Constructive Cost Model </li></ul><ul><li>COCOMO II- COCOMO next version </li></ul><ul><li>COPMO- Cooperative Programming Model </li></ul>
  18. 18. Basic COCOMO Model <ul><li>Organic projects - are relatively small, simple software projects in which small teams with good application experience work to a set of less than rigid requirements. </li></ul><ul><li>Semi-detached projects - are intermediate (in size and complexity) software projects in which teams with mixed experience levels must meet a mix of rigid and less than rigid requirements. </li></ul><ul><li>Embedded projects - are software projects that must be developed within a set of tight hardware, software, and operational constraints. </li></ul>
  19. 19. Basic COCOMO <ul><ul><li>E=a(KLOC)^b </li></ul></ul><ul><ul><li>D=c(E)^d </li></ul></ul><ul><ul><li>P=E/D </li></ul></ul><ul><ul><li>E- effort </li></ul></ul><ul><ul><li>D- development time </li></ul></ul><ul><ul><li>P- number of people </li></ul></ul><ul><ul><li>Software project a b c d </li></ul></ul><ul><ul><li>Organic 2.4 1.05 2.5 0.38 </li></ul></ul><ul><ul><li>Semi-detached 3.0 1.12 2.5 0.35 </li></ul></ul><ul><ul><li>Embedded 3.6 1.20 2.5 0.32 </li></ul></ul>
  20. 20. Intermediate COCOMO <ul><li>E= a( KLOC)^ (b) * EAF </li></ul><ul><ul><li>Software project a b </li></ul></ul><ul><ul><li>Organic 3.2 1.05 </li></ul></ul><ul><ul><li>Semi-detached 3.0 1.12 </li></ul></ul><ul><ul><li>Embedded 2.8 1.20 </li></ul></ul><ul><li>EAF: Effort Adjustment Factor </li></ul>
  21. 21. EAF
  22. 22. Conclusion
  23. 23. Questions?
  24. 24. Thank You
  • kailaparth

    Jul. 24, 2020
  • PhanindraCherukuri2

    Jul. 9, 2020
  • MuhammadShariq21

    Apr. 8, 2019
  • karmukilanperiyasamy

    Nov. 2, 2018
  • PreciousShumba1

    Aug. 27, 2018
  • adnanmalik04

    Feb. 25, 2018
  • mandliRamanaReddy

    Jul. 23, 2017
  • KUMARAGURU5

    Jun. 13, 2017
  • faryalKhan20

    Apr. 2, 2017
  • NagarajuMV2

    Mar. 1, 2017
  • YasiinMsemo

    Dec. 19, 2016
  • MurtuzaKhan8

    Dec. 11, 2016
  • sehamyam

    Nov. 25, 2016
  • ShwetabhSrivastava

    Nov. 25, 2016
  • salman_webz

    May. 13, 2016
  • ELYSEENSHOKEYINKA

    May. 12, 2016
  • rehamo123

    May. 3, 2016
  • Gabreilamont

    Mar. 2, 2016
  • DannyMcArdle1

    Jan. 24, 2016
  • MohanaShankar

    Jan. 1, 2016

A presentation about Software Estimation Techniques

Views

Total views

104,420

On Slideshare

0

From embeds

0

Number of embeds

1,361

Actions

Downloads

0

Shares

0

Comments

0

Likes

75

×