Project Estimation: Metrics and Measurement

Slides:



Advertisements
Similar presentations
Software Engineering: A Practitioner’s Approach Chapter 25 Process and Project Metrics copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Advertisements

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 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 4 Software Process and Project Metrics
1 Estimating Software Development Using Project Metrics.
Metrics. A Good Manager Measures measurement What do we use as a basis? size? size? function? function? project metrics process metrics process product.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Chapter 4 Software Process and Project Metrics
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
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 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Process and Project Metrics
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Metrics for Process and Projects
Metrics for Process and Projects
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Metrics.
Metrics Project and Process Metrics. Why do we measure? Assessing project status Allows us to track risks Before they go critical Adjust workflow See.
Software Engineering II - Topic: Software Process Metrics and Project Metrics Instructor: Dr. Jerry Gao San Jose State University
Software project management (intro)
Project Management Metrics.
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
1 Cost Estimation CIS 375 Bruce R. Maxim UM-Dearborn.
Software Engineering: A Practitioner’s Approach
Cmpe 589 Spring Software Quality Metrics Product  product attributes –Size, complexity, design features, performance, quality level Process  Used.
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.
Software Engineering Software Process and Project Metrics.
Chapter 6 : Software Metrics
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CS460 © 2003 Ray S. Babcock Metrics The term metrics refers to any measurement related to software development. ● Lines of Code ● number of defects ● defects.
Software Engineering SM ? 1. Outline of this presentation What is SM The Need for SM Type of SM Size Oriented Metric Function Oriented Metric 218/10/2015.
1 Chapter 4 Software Process and Project Metrics.
Software Project Management Lecture # 3. Outline Chapter 22- “Metrics for Process & Projects”  Measurement  Measures  Metrics  Software Metrics Process.
Lecture 4 Software Metrics
SEG3300 A&B W2004R.L. Probert1 COCOMO Models Ognian Kabranov.
SOFTWARE PROCESS AND PROJECT METRICS. Topic Covered  Metrics in the process and project domains  Process, project and measurement  Process Metrics.
Estimation for Software Projects 1. Software Project Planning 2 The overall goal of project planning is to establish a pragmatic strategy for controlling,
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.
Advanced Software Engineering Lecture 4: Process & Project Metrics.
Chapter 22 Metrics for Process and Projects Software Engineering: A Practitioner’s Approach 6 th Edition Roger S. Pressman.
Intro to Estimating Part Art, Part Science. Importance of Good Estimates Time (Realistic Deadlines) most software projects are late because the time was.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
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 Software Engineering: A Practitioner’s Approach Chapter 25 Process and Project Metrics Software Engineering: A Practitioner’s Approach Chapter 25 Process.
Chapter 4 Software Process and Project Metrics
Software Project Sizing and Cost Estimation
Why Do We Measure? assess the status of an ongoing project
Software Planning
Function Point.
Software Metrics “How do we measure the software?”
Activities During SPP Size Estimation
For University Use Only
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.
Why Do We Measure? assess the status of an ongoing project
Chapter 25 Process and Project Metrics
COCOMO Models.
Software metrics.
Why Do We Measure? assess the status of an ongoing project
Why Do We Measure? assess the status of an ongoing project
Chapter 32 Process and Project Metrics
Metrics for Process and Projects
COCOMO MODEL.
Presentation transcript:

Project Estimation: Metrics and Measurement

Persons and Months Calculated Efforts (in pm) of task/project = Number of persons X duration in months The efforts for a task with 2 persons working for 3 months is 3 x 2 = 6 pm A worker can be full time or part-time Full-Time Equivalent (FTE) number of workers = Sum (number of part-time x percent) + Number of full time workers For example: A project with 4 workers at 75%, 3 others at 50%, and 2 full-time. The FTE is: (4X.75)+(3x.5)+2 =6.5 persons

The mythical person-month

Metrics Guidelines Use common sense and organizational sensitivity when interpreting metrics data. Provide regular feedback to the individuals and teams who have worked to collect measures and metrics. Work with practitioners and teams to set clear goals and metrics that will be used to achieve them. Don’t use metrics to appraise individuals and never use metrics to threaten individuals or teams. Metrics data that indicate a problem area should not be considered “negative.” These data are merely an indicator for process improvement. Don’t obsess on a single metric to the exclusion of other important metrics.

Types of Metrics Size oriented metrics: Based on number of lines of code (LOC) to be written. Function oriented metric: Based on number of Function Points (FP) to be completed.

Typical Size-Oriented Metrics errors per KLOC (thousand lines of code) defects per KLOC $ per LOC page of documentation per KLOC errors / person-month LOC per person-month $ / page of documentation

Typical Function-Oriented Metrics errors per FP (thousand lines of code) defects per FP $ per FP pages of documentation per FP FP per person-month

Why FP Measures?

Computing Function Points F P = Count-total x Complexity (Count-total =  count x weight, Complexity = ([0.65 + .01 x  Fi])

Taking Complexity into Account Formula: F P = count-total x [0.65 + .01 x  Fi]

Exercise Compute the Function Point (FP) value ( F P = count-total x [0.65 + .01 x  Fi]): Count Weighting Factor Number of user inputs 10 4 Number of user outputs 20 5 Number of inquiries 15 4 Number of files 3 10 Number of external interface 5 8 The complexity adjustments values rating (Fi) are: Critical value of performance: 3 Heavy operational environment: 3 On line: 3 Multiple screen operation: 3 On-line master files update: 3 Complexity of I/O: 3 Complexity of internal processing: 4 Backup and recovery: 4 Data communications: 4 Distributed Processing: 4 Reusable code: 4 Conversion: 4 Multiple installations: 4 Facilitation of changes: 4

Function Point Value Exercise Total-count= (10x4+20x5+15x4+3x10+5x8)=270  Fi = 3+3+3+3+3+3+4+4+4+4+4+4+4+4)= 50 Function Points = 270 x (.65 + .01x50) =310.5 FPs

Cost Estimation

Conventional Methods Total Efforts = Estimated efforts required per FP x Size in FPs Or: Total efforts = Estimated efforts required per KLOC x Size in KLOCs KLOC : Thousand Lines of Code

Empirical Estimation Models

Example: LOC Approach

Project Staffing Estimation The unit of measure for project HR efforts is person-months (pm). For a project with two persons who work for one month the total efforts is 2 persons * 1 month = 2 pm. Efforts in pm= number of full time workers * duration in months Number of full-time workers = Efforts/ Duration

Empirical Estimation Models General model: E = A + B (ev)c where: A, B, C: empirically derived constant ev: estimated variable of size in terms of KLOC or FP Samples models: E= 5.2 (KLOC) .091 (Walston-Felix) E= 5.5 + .73 (KLOC) 1.16 (Bailey-Basili) E=3.2 (KLOC) 1.047 (Doty) E= -13.39 + .0545 FP (Albrech and Gaffney) E= 585.7 + 15.12 FP (Matson, Barnett, and Mellichamp)

COCOMO

COCOMO: Basic Model

Example: COCOMO

COCOMO II Total Efforts in pm = 3.13 x (KLOC)1.072 Example: for a software module of 8050 LOCs Total efforts= 3.13 X(8.05) 1.072 = 29.28 pm For a cost of $10,000/pm Total cost = $29,280

Estimation Guidelines

Metric for Software Quality Correctness Maintainability Integrity = Sum [1 - threat x (1- security)] Usability Number of defects found and removed Defect Removal Efficiency = ------------------------------------------------ Total defects that exist at stage

Exercise 1 Efforts of a 3 person project is originally estimated at 12 person-months. However, after two months only 40% completed. 1. Compute the remaining efforts in person-months. Let T = total revised efforts Efforts consumed : 3 p x 2 m = 6 pm 6 pm = .40 x T T= 15 pm 2. If you wanted to hire more workers to meet the completion schedule, how many should you hire? Remaining efforts = 15 – 6 = 9 pm for 2 months Number of new hires = (9/2) – 3 = 1.5 (2 rounded) 3. If each new worker only works at 70% capacity and requires training that reduces the productivity of an experienced worker 20%, can the project meet the deadline in the remaining 2 months? FTE = 2 x .80 + 1 x 1.0 + 2 x .70 = 4 Full Time workers 4 x 2 = 8 pm Required efforts 9 pm, 1 pm short.

Exercise #2 Use the Basic COCOMO model to estimate efforts and duration of an embedded software development project with size of 55 KLOC. 1. How many workers should be hired for this project? Embedded: a=3.6 b=1.2, c= 2.5, d = .32 2. If the project must be completed within 15 months, how many additional workers should be hired?

Solutions Embedded: a=3.6 b=1.2, c= 2.5, d = .32 1. How many workers should be hired for this project? Embedded: a=3.6 b=1.2, c= 2.5, d = .32 Efforts= 3.6*(55)1.2 = 441.3 pm Duration = 2.5 * (441.3).32 = 17.54 months Number of workers needed: 441.3/17.54 = 25.1 2. If the project must be completed within 15 months, how many additional workers should be hired? Number of workers required for 15 month completion: 441/15=29.4 Additional workers: 29.4 – 25.1 = 4.3 rounded to 5

Group Project Meeting

Homework 3: Due Sunday 3/15 @11:59 PM D2L Dropbox Efforts of a 5 person project is originally estimated at 40 person-months. However, after 3 months only 30% completed. Compute the remaining efforts in person- months. If you wanted to hire more workers to meet the completion schedule, how many should you hire? If each new worker only works at 70% capacity and requires training that reduces the productivity of an experienced worker 20%, can the project meet the deadline in the remaining 3 months?