Software Engineering Software Process and Project Metrics.

Slides:



Advertisements
Similar presentations
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Advertisements

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.
Project Estimation: Metrics and Measurement
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.
Chapter 22 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.
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.
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
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 Process and Product Metrics
Project Metrics Infsy 570 Dr. R. Ocker.
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 6 : Software Metrics
Software Measurement & 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.
Product Metrics An overview. What are metrics? “ A quantitative measure of the degree to which a system, component, or process possesses a given attribute.”
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 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.
Software Metrics – part 2 Mehran Rezaei. Software Metrics Objectives – Provide State-of-art measurement of software products, processes and projects Why.
Lecture 4 Software Metrics
SOFTWARE METRICS. Software Process Revisited The Software Process has a common process framework containing: u framework activities - for all software.
Computing and SE II Chapter 15: Software Process Management Er-Yu Ding Software Institute, NJU.
SOFTWARE PROCESS AND PROJECT METRICS. Topic Covered  Metrics in the process and project domains  Process, project and measurement  Process Metrics.
CSc 461/561 Information Systems Engineering Lecture 5 – Software 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.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15a: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
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/11/2016CS-499G1 Costs without Maintenance. 1/11/2016CS-499G2 Costs with Maintenance.
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.
9/8/99Lecture 51 CIS 4251 / CIS 5930 SOFTWARE DEVELOPMENT Fall 1999 Sept. 8, 1999 Marge Holtsinger.
Software Project Management Lecture # 3. Outline Metrics for Process and Projects  Introduction  Software Metrics Process metrics Project metrics Direct.
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 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 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 Software Engineering: A Practitioner’s Approach Chapter 25 Process and Project Metrics Software Engineering: A Practitioner’s Approach Chapter 25 Process.
Chapter 22 Process and Project Metrics
Software Engineering (CSI 321)
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 Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Project Planning &
For University Use Only
Chapter 25 Process and Project Metrics
Software metrics.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Why Do We Measure? assess the status of an ongoing project
Process and Project Metrics
Chapter 32 Process and Project Metrics
Chapter 22 Process and Project Metrics
Metrics for Process and Projects
Presentation transcript:

Software Engineering Software Process and Project Metrics

Objectives Define software metrics Why is it important to measure? Software measurement Metrics for software quality

Measurement & Metrics... collecting metrics is too hard... it's too time-consuming... it's too political... it won't prove anything... Anything that you need to quantify can be measured in some way that is superior to not measuring it at all.. Tom Gilb These courseware materials are used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

Software Metrics Are quantitative measures that give an insight into the efficacy of a process and the projects which use it. A set of such measures is called a work product. With measurement better estimates can be made and true improvement can be achieved over time.

Why is it important to measure? To characterize, i.e., gain understanding of processes, products, and resources. To evaluate and determine the status of project development with respect to plans. To predict relationships between processes, products, and models needed for planning. To improve by identifying inefficiencies and other opportunities.

Measures, Metrics and Indicators A measure is established when data is collected on a single data point e.g. measures used for an automobile might be its weight and horsepower. A software metric relates individual measures in a meaningful way e.g. max speed per quarter mile. An indicator is a metric or combination of metrics that become useful information e.g. cost per vehicle at manufacture.

Process Vs. Project Vs. Product Metrics Process metrics are used to assess the activities that are used to engineer and build computer software e.g. defect removal efficiency etc. Project metrics are used to monitor progress during software development and to control product quality e.g. effort/time per SE task, errors uncovered per review hour, scheduled vs. actual milestone dates etc.

Process Vs. Project Vs. Product Metrics Product metrics focus on the qualities of deliverables e.g. complexity of the design, code metrics etc.

Software Measurement Direct measures of the S.E. process include cost and effort applied. of the product include lines of code (LOC) produced, execution speed, memory size, etc. Indirect measures of the product include, quality, complexity, reliability, maintainability, etc.

Size-Oriented Metrics Size-oriented metrics are derived by normalizing quality or productivity measures over the product size. Examples: Errors per KLOC (thousand LOC), defects per KLOC, $ per LOC, etc. Accepted as the best way to measure the process of software development.

Function-Oriented Metrics Methods that indirectly measure the functionality delivered by the application. They make use of other direct measures. Examples: errors per FP (thousand lines of code), $ per FP, etc. Function points (FP) can be used to normalize software. These are easier to compute prior to implementation.

Computing Function Points Analyze information domain of the application and develop counts Weight each count by assessing complexity Assess influence of global factors that affect the application Compute function points Establish count for input domain and system interfaces Assign level of complexity or weight to each count Grade significance of external factors, F such as reuse, concurrency, OS,... degree of influence: N = F i complexity multiplier: C = ( x N) function points = (count x weight) x C where: i These courseware materials are used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

Computing Function Points These courseware materials are used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001

Metrics for Software Quality Factors that define software quality: Correctness - the degree to which a program operates according to specification Maintainability - the degree to which a program is amenable to change Integrity – the degree to which a program is vulnerable to outside attack Usability - the degree to which a program is easy to use

Defect removal efficiency (DRE) is an important software quality metric. DRE = E / (E+D) the ideal value for DRE is 1. E = # of errors before delivery D = # of defects found after delivery

Metrics Guidelines Provide regular feedback to the individuals and teams who have worked to collect measures and metrics. Don’t use metrics to appraise individuals. Work with practitioners and teams to set clear goals and metrics that will be used to achieve them. 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.

Remember… If developers do not measure they have no means for determining whether they are improving or not. Process improvement is essential to remain competitive economically. Small and large organizations alike can benefit economically from the intelligent use of software metrics.