Software Cost Estimation Main issues:  What factors determine cost/effort?  How to relate effort to development time?

Slides:



Advertisements
Similar presentations
COST ESTIMATION TECHNIQUES AND COCOMO. Cost Estimation Techniques 1-)Algorithmic cost modelling 2-)Expert judgement 3-)Estimation by analogy 4)-Parkinsons.
Advertisements

Estimation using COCOMO More Science, Less Art. COCOMO History COCOMO History Constructive Cost Model Dr. Barry Boehm TRW in 1970s COCOMO
Early Effort Estimation of Business Data-processing Enhancements CS 689 November 30, 2000 By Kurt Detamore.
Chapter 26 Estimation for Software Projects
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
Software project management (intro)
Ch8: Management of Software Engineering. 1 Management of software engineering  Traditional engineering practice is to define a project around the product.
1 COST ESTIMATION Basics, COCOMO, FP. 2 What is estimated? TIME MONEY TIME: –duration, chronological weeks, months, years –effort, person-month (man-month)
COCOMO II 資管研一 張永昌. Agenda Overall Model Definition COCOMO II Models for the Software Marketplace Sectors COCOMO II Model Rationale and Elaboration Development.
Measuring process attributes. Good Estimates Predictions are needed for software development decision-making (figure 12.1) A prediction is useful only.
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
Chapter 23 – Project planning Part 2. Estimation techniques  Organizations need to make software effort and cost estimates. There are two types of technique.
1 Cost Estimation CIS 375 Bruce R. Maxim UM-Dearborn.
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
Information System Economics Software Project Cost Estimation.
© The McGraw-Hill Companies, Software Project Management 4th Edition Software effort estimation Chapter 5.
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Lecture 22 Instructor Paulo Alencar.
COCOMO Models Ognian Kabranov SEG3300 A&B W2004 R.L. Probert.
Estimation Why estimate? What to estimate? When to estimate?
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 23Slide 1 Chapter 23 Software Cost Estimation.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Effort estimation.
CS /39 Illinois Institute of Technology CS487 Software Engineering David A. Lash.
A Brief Introduction to COCOMO Hossein Saiedian EECS810: Software Engineering.
1 UseCase-based effort estimation of software projects TDT 4290 Customer-driven project IDI, NTNU, 14. Sept Bente Anda, Simula Research Lab., Oslo,
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Lecture 17: Chapter 26 Estimation for Software Projects Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman.
Software cost estimation Predicting the resources required for a software development process 1.
1 Chapter 23 Estimation for Software Projects. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for.
T. E. Potok - University of Tennessee CS 594 Software Engineering Lecture 3 Dr. Thomas E. Potok
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
Cost Estimation. Problem Our ability to realistically plan and schedule projects depends on our ability to estimate project costs and development efforts.
Cost Estimation What is estimated? –resources (humans, components, tools) –cost (person-months) –schedule (months) Why? –Personnel allocation –Contract.
Project Estimation Model By Deepika Chaudhary. Factors for estimation Initial estimates may have to be made on the basis of a high level user requirements.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 2.
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 26Slide 1 Software cost estimation l Predicting the resources required for a software development.
SFWR ENG 3KO4 Slide 1 Management of Software Engineering Chapter 8: Fundamentals of Software Engineering C. Ghezzi, M. Jazayeri, D. Mandrioli.
Software Project Estimation IMRAN ASHRAF
Estimation for Software Projects 1. Software Project Planning 2 The overall goal of project planning is to establish a pragmatic strategy for controlling,
Estimation using COCOMO
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Effort Estimation In WBS,one can estimate effort (micro-level) but needed to know: –Size of the deliverable –Productivity of resource in producing that.
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
Cost Estimation Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.
Chapter 5: Software effort estimation
بشرا رجائی برآورد هزینه نرم افزار.
Chapter 33 Estimation for Software Projects
Project Cost Management
כ"ז/שבט/תשע"ח An Overview of Software Development Effort and Cost Estimation Techniques Professor Ron Kenett Tel Aviv University School of Engineering.
PROJECT LIFE CYCLE AND EFFORT ESTIMATION
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Constructive Cost Model
Software Development & Project Management
COCOMO Model Basic.
Chapter 5: Software effort estimation- part 2
Chapter 5: Software effort estimation
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
COCOMO Models.
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
COCOMO 2 COCOMO 81 was developed with the assumption that a waterfall process would be used and that all software would be developed from scratch. Since.
Chapter 33 Estimation for Software Projects
Software metrics.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Cost Estimation
Software Sizing and Costing
COnstructive COst MOdel
Chapter 26 Estimation for Software Projects.
COCOMO MODEL.
Presentation transcript:

Software Cost Estimation Main issues:  What factors determine cost/effort?  How to relate effort to development time?

SE, Cost estimation, Hans van Vliet, © Cost estimation, topics  Quantitative models (E = 2.5 KLOC 1.05 )  Qualitative models (e.g. expert estimation)  Agile cost estimation  Relate cost to development time

SE, Cost estimation, Hans van Vliet, © On productivity  Even if quantitative models are not that good, the cost drivers of these models learn us about productivity:  Writing less code helps  Reuse helps  Quality of people is important  Tools help  …

SE, Cost estimation, Hans van Vliet, © Algorithmic models  Base formula: E = a + bKLOC c  C usually is around 1  C > 1: diseconomy of scale  C < 1: economy of scale  This nominal cost is multiplied by a number of cost drivers (volatility of requirements, amount of documentation required, CMM level, quality of people, …)

SE, Cost estimation, Hans van Vliet, © Walston-Felix  One of the early algorithmic models (1977)  Many factors (29 out of 51 projects)  Only three alternatives (high, medium, low) per factor  Its form influenced many later models

SE, Cost estimation, Hans van Vliet, © COCOMO (COnstructive COst MOdel)  Very well-documented (Boehm book, 1981)  Basic form: E = bKLOC c, where b (~3) and c (1+ε) depend on the type of project (mode):  Organic: relatively small and well-known  Embedded: inflexible environment with many constraints  Semidetached: somewhere in between  More complex form: takes into account 15 multiplicative cost drivers

SE, Cost estimation, Hans van Vliet, © Putnam model, Rayleigh curve

SE, Cost estimation, Hans van Vliet, © Function Point Analysis (FPA)  Size (=cost) is based on number of data structures used:  I: number of input types  O: number of output types  E: number of enquiry types  L: number of logical internal types  F: number of interfaces  Then, magically, UFP = 4I + 5O + 10E + 4L + 7F

SE, Cost estimation, Hans van Vliet, © FPA cnt’d  Somewhat more complex model: constants depend on complexity level (simple, average, complex)  Cost drivers (application characteristics) next adjust the value of UFP by at most +/- 40%  Extensive guidelines for counting Function Points  Reflects data-centric world of the 1970’s  Widely used

SE, Cost estimation, Hans van Vliet, © COCOMO2  Successor to COCOMO  Three, increasingly complex models:  Application composition model; counting components of large granularity, using object points (objects are: screens, reports, and the like); FPA-like, with 3 levels of complexity for each object.  Early design model: same, but uses 7 cost drivers (project characteristics, combinations of cost drivers from the post- architecture version) instead of 3 simple complexity levels  Post-architecture model: like COCOMO, with updated set of 17 cost drivers  Rather than having 3 modes (COCOMO), COCOMO2 has a more elaborate scaling model

SE, Cost estimation, Hans van Vliet, © Use Case Points  FPA-like model, starting from use cases  Counting depends on the use case  How many steps in success scenario  How many classes in the implementation  Complexity of the actors involved  Next, corrections for the technical and environmental complexity

SE, Cost estimation, Hans van Vliet, © Difficulties with applying these models  People do not collect numbers, so:  This project costs the same as the last project  We have 6 months, so it will take 6 months  …and other political estimates  These models require calibration

SE, Cost estimation, Hans van Vliet, © Guidelines  Estimation  planning  bidding  Combine methods  Ask justification  Select experts with similar experience  Accept and assess uncertainty  Provide earning opportunities  Try to avoid, or postpone, effort estimation

SE, Cost estimation, Hans van Vliet, © Cone of uncertainty

SE, Cost estimation, Hans van Vliet, © From total effort to  number of months  A lot of consensus between models: T  2.5E 1/3  Compressing this value has a price:  Team larger  more communication  New people first slows down productivity  Combined: Brooks’ law: Adding manpower to a late project makes it later

SE, Cost estimation, Hans van Vliet, © Impossible region

SE, Cost estimation, Hans van Vliet, © Agile cost estimation  Estimate size of features in story points  These are relative sizes: one feature is twice as large as another one, etc.  Use a few simple relative sizes, e.g., 1, 2, 4, and 8  Use a Delphi-like procedure to get consensus

SE, Cost estimation, Hans van Vliet, © Agile cost estimation, cnt’d  Translation of story points to real time: velocity: number of function points completed in one iteration  Start: yesterday’s weather: productivity is the same as that for the last project  If the outcome is wrong: adjust the velocity, not the story points