• Like
  • Save
Software Estimation Techniques
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Software Estimation Techniques

  • 78,667 views
Published

A presentation about Software Estimation Techniques

A presentation about Software Estimation Techniques

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
78,667
On SlideShare
0
From Embeds
0
Number of Embeds
10

Actions

Shares
Downloads
0
Comments
8
Likes
42

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

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