1 COST ESTIMATION Basics, COCOMO, FP. 2 What is estimated? TIME MONEY TIME: –duration, chronological weeks, months, years –effort, person-month (man-month)

Slides:



Advertisements
Similar presentations
Estimation using COCOMO More Science, Less Art. COCOMO History COCOMO History Constructive Cost Model Dr. Barry Boehm TRW in 1970s COCOMO
Advertisements

Project Estimation: Metrics and Measurement
Software Cost Estimation Main issues:  What factors determine cost/effort?  How to relate effort to development time?
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
Ch8: Management of Software Engineering. 1 Management of software engineering  Traditional engineering practice is to define a project around the product.
CSC 395 – Software Engineering
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
Software Project Planning Infsy 570 Dr. R. Ocker.
Software Project Management
1 Project Planning CIS 375 Bruce R. Maxim UM-Dearborn.
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.
University of Toronto Department of Computer Science © 2001, Steve Easterbrook CSC444 Lec22 1 Lecture 22: Software Measurement Basics of software measurement.
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.
Chapter 6 : Software Metrics
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
Function Point Analysis What is Function Point Analysis (FPA)? It is designed to estimate and measure the time, and thereby the cost, of developing new.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Effort estimation.
By K Gopal Reddy.  Metrics in software are of two types.direct and indirect.  Function points as indirect metrics.  Function points are used to measure.
CS /39 Illinois Institute of Technology CS487 Software Engineering David A. Lash.
A Brief Introduction to COCOMO Hossein Saiedian EECS810: Software Engineering.
Group Members: Ayush Newatia, Barry Foye, Billy Felton, Kevin Anderson, Shahnaz Begum and Adam Jasinski Constructive Cost Model is a technique used to.
Quality Assurance vs. Quality Control Quality Assurance An overall management plan to guarantee the integrity of data (The “system”) Quality Control A.
Software cost estimation Predicting the resources required for a software development process 1.
Cost13 1 Cost Estimation Estimates based on LOC. cost13 2 Boehm's COCOMO u Software Engineering Economics u Prentice-Hall c1981 u type COCOMO in a search.
T. E. Potok - University of Tennessee CS 594 Software Engineering Lecture 3 Dr. Thomas E. Potok
Lecture 4 Software Metrics
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 3 1 Software Size Estimation I Material adapted from: Disciplined.
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.
Software Project Planning Part II. Troutman's Postulates Profanity is the one language understood by all programmers. Not until a program has been in.
Project Estimation techniques Estimation of various project parameters is a basic project planning activity. The important project parameters that are.
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
SOFTWARE PROCESS AND PROJECT METRICS. Topic Covered  Metrics in the process and project domains  Process, project and measurement  Process Metrics.
Cost9a 1 Software Estimating Technology: A Survey Richard Stutzke Crosstalk, May96 text pp
Effort Estimation Has been an “art” for a long time because
©Ian Sommerville, adapted by Werner Wild 2004Project Management Slide 1 Software cost estimation u Predicting the resources required for a software development.
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.
CSC 480 Software Engineering Lecture 6 September 11, 2002.
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.
Software Engineering (CSI 321) Project Planning & Estimation 1.
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
Rating Very Very Extra Cost Drivers Low Low Nominal High High High Product Attributes Required software reliability Database size.
INFSY 570 DR. R. OCKER Software Project Planning.
بشرا رجائی برآورد هزینه نرم افزار.
COCOMO Software Cost Estimating Model Lab 4 Demonstrator : Bandar Al Khalil.
Cost Estimation Software Quality Assurance and Testing.
Software Project Management
Function Point Analysis
Software Project Estimation
Software Planning
Constructive Cost Model
COCOMO Model Basic.
Chapter 5: Software effort estimation- part 2
Activities During SPP Size 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.
Software Cost Estimation
COnstructive COst MOdel
Software Project Management
COCOMO MODEL.
Presentation transcript:

1 COST ESTIMATION Basics, COCOMO, FP

2 What is estimated? TIME MONEY TIME: –duration, chronological weeks, months, years –effort, person-month (man-month) – unit is typically month (year)

3 Basic Relation person-month / nbr-of-people = duration example: –36 person-month, 1 developer, 36 month –36 person-month, 2 people, 18 month –36 person-month, 12 people, 3 month Beware of the “million monkey” syndrome [Brooks]

4 Basic Principles - Decomposition It is easier to estimate time & cost for a smaller unit than to estimate time & cost for the complete system. Estimation by decomposition: –Decompose your system or development process, estimate time & cost for the parts and summarize.

5 Basic Principles - Empirical Knowledge Find parameters which characterise your system and derive time & cost based on a documented case history. Empirical model: time = function (parameters) You rely on a correlation between time & cost and the set of independent parameters

6 Typical Parameters number and complexity of functions number and complexity of modules number of lines of code (LOCS) number and duration of steps in your development process skills and technologies involved

7 When to do your estimate the later the more accurate your parameters early estimate: –you need to estimate your parameters –divide an conquer strategy –garbage in => garbage out keep your estimate up-to-date

8 COCOMO [B. Boehm] COnstructive COst MOdel empirical method hierarchy of COCOMO models (parameters) –basic: prg size –intermediate: prg size & cost drivers –advanced: prg size & cost drivers per phase Cost Drivers: Personnel/Team Capability, Product Complexity, Req. Reliability, Problem Domain Experience, Development practices, Tools, Language Experience, etc. for each project type

9 COCOMO - Parameters prg size: LOCS (lines of code) “cost drivers” evaluate: product, hardware, personnel, project measured on a 6 point scale allow for derivation of an EAF (Effort Adjustment Factor)

10 COCOMO - Project Types organic mode: –relatively small and simple –small team of skilled developers semi-detached: –intermediate in size and complexity –mixed skill levels on the team embedded: –hard constraints for HW, SW, operation

11 Basic COCOMO - The Functions person-month = a*(KLOC) b duration-in-month = c*(person-month) d KLOC... kilo lines of code a, b, c, d depend on the project type

12 Basic COCOMO - Tables project type:abcd organic semi-detached embedded

13 Basic Cocomo - Example You must decide on: –LOCS: 50,000 lines of code –project type: semi-detached person-month: 3.0*(50) 1.12 ~ 240 duration-in-month: 2.5*(240) 0.35 ~ 17 number of people:240 / 17 ~ 14

14 Function Points (FP) Based on the number and complexity of the system functions to be delivered to the customer Steps: –(1) Categorize the functions according to type (input, output, database, interface, etc.) and complexity (simple, moderate, average, complex, highly complex) –(2) Derive the number of function points: multiply the number of functions in each category by the appropriate complexity weights and total the number of PF –(3) Determine the total Project Influence Factors (PIF): PIF types (distributed processing,multiple development sites, etc.), and levels of difficulty ( from 0-no difficulty, to 3-average difficulty, to 5- great difficulty) –(4) Compute the Total Effort: PM =.036 * FP * PIF

15 FP: Example (1&2) PF (3) PIF (4) Total Effort FunctionDiff. LevelNumber ComplexityFP Input DB Output M A S Total Total PIFDifficulty Level Data performance objectives Multiple sites PM = 0.036*58*7 = All values from FP tables.

16 Function Points: Evaluation Tightly coupled with Functional Requirements (see SRS) - works well with DFDs Intuitive Method - makes intuitive sense to the customers Notice: A rough estimate of the functional requirements will yield ONLY a very rough estimate of total effort

17 “3 Time Programming” Rule Estimate the number of software modules/programs and their complexity Estimate the effort required to complete coding and debugging of each module and the total programming effort Total Project Effort = (Estimated Programming Effort) * 3 This includes Management, Documentation, Design, …. => Helpful ONLY to experienced programmers => Corrects at least the OPTIMISTS A “Rough Guess” is better than a “Wild Guess” or “No Estimate”

18 It Couldn’t be More Simple: