Presented by Trey Brumley and Ryan Carter

Slides:



Advertisements
Similar presentations
Software Metrics Software Engineering.
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
1 Estimating Software Development Using 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.
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 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 Quality Metrics
Software Engineering II - Topic: Software Process Metrics and Project Metrics Instructor: Dr. Jerry Gao San Jose State University
Software Metrics II Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
Software metrics Selected key concepts. Introduction Motivation:  Management:  Appraisal  Assurance  Control  Improvement  Research:  Cause-effect.
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 Complexity metrics  measure certain aspects of the software (lines of code, # of if-statements, depth of nesting, …)  use these numbers as a criterion.
Chapter 9: Software Metrics
Software Process and Product Metrics
Cyclomatic Complexity Dan Fleck Fall 2009 Dan Fleck Fall 2009.
1 Software Quality CIS 375 Bruce R. Maxim UM-Dearborn.
Software Engineering Software Process and Project Metrics.
Chapter 6 : Software Metrics
Software Measurement & Metrics
1. Software Metric- A definition 2. Types of Software metrics 3. Frame work of product metrics 4. Product metrics.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15b: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Product Metrics An overview. What are metrics? “ A quantitative measure of the degree to which a system, component, or process possesses a given attribute.”
Version control – Project repository, version management capability, make facility, issue/bug tracking Change control Configuration audit – compliments.
1 Chapter 15 Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
1 Chapter 4 Software Process and Project Metrics.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
Software Metrics (Part II). Product Metrics  Product metrics are generally concerned with the structure of the source code (example LOC).  Product metrics.
Software Quality Metrics
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
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.
Measurement and quality assessment Framework for product metrics – Measure, measurement, and metrics – Formulation, collection, analysis, interpretation,
Software Engineering 2004 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa SOFTWARE PRODUCT QUALITY Today: - Software quality -
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.
Hussein Alhashimi. “If you can’t measure it, you can’t manage it” Tom DeMarco,
Metrics "A science is as mature as its measurement tools."
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Cyclomatic complexity (or conditional complexity) is a software metric (measurement). Its gives the number of indepented paths through strongly connected.
1 Week 7 Software Engineering Spring Term 2016 Marymount University School of Business Administration Professor Suydam.
Software Test Metrics When you can measure what you are speaking about and express it in numbers, you know something about it; but when you cannot measure,
Static Software Metrics Tool
School of Business Administration
Metrics of Software Quality
Assessment of Geant4 Software Quality
Software Metrics 1.
Design Characteristics and Metrics
Software metric By Deepika Chaudhary.
Chapter 4 Software Process and Project Metrics
Lecture 15: Technical Metrics
For University Use Only
CPSC 873 John D. McGregor GQM.
Object-Oriented Metrics
Software Project Sizing and Cost Estimation
Halstead software science measures and other metrics for source code
Software Metrics “How do we measure the software?”
For University Use Only
Software metrics.
Chapter 19 Technical Metrics for Software
Software Metrics SAD ::: Fall 2015 Sabbir Muhammad Saleh.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 15 Product Metrics for Software copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Metrics for Process and Projects
6. Software Metrics.
Coupling Interaction: It occurs due to methods of a class invoking methods of other classes. Component Coupling: refers to interaction between two classes.
Chapter 8: Design: Characteristics and Metrics
Presentation transcript:

Presented by Trey Brumley and Ryan Carter Metrics Presented by Trey Brumley and Ryan Carter

Overview What are metrics? Types of metrics What is measured? Analysis Design Coding Testing

What are metrics? “A quantitative measure of the degree to which a system, component, or process possesses a given attribute.” [IEE93] Some quantitative attribute within a program that can be measured. Simple, persuasive, consistent, independent, and effective “If it can be measured, it can be improved.”

What is measured? Processes Products Collections of software-related activities Products Any artifacts, documents, or deliverables that result from a process activity.

Different types of Metrics - Pt. 1 Metrics for Analysis System size Functionality delivered Specification quality Metrics for Design Architectural Metrics Component Level Interface Design

Different types of Metrics - Pt. 2 Metrics for Coding Halstead metrics Complexity metrics Length metrics Metrics for Testing Defect metrics ADCT or alternatively, DACT

Metrics of Analysis System size Function-based Metrics Total number of functions, classes, etc. Function-based Metrics Function point metric variables, formulae, and questions Specification quality Specificity Completeness

Metrics of Design - Pt. 1 Architectural Design Object System, Data, and Structural complexities Design Structure Quality Index Object Size, complexity, completeness, cohesion, coupling, volatility Object-Oriented System size, class or method size, coupling and inheritance, class/method internals

Metrics of Design - Pt. 2 Layout Cohesion Time Position of entities, frequency of use, cost of transition Cohesion Connection between different on-screen contents Time Time to achieve a specific action, time to recover from error, time to achieve a use case

Metrics of Coding Lines of Code metric McCabe’s Cyclomatic Complexity Total lines of code and related functions McCabe’s Cyclomatic Complexity Determines program complexity value Number of edges minus number of nodes plus number of connected components Halstead metrics Number of operators, operands, and respective occurrences Determines length, volume, time, effort, and error quantity

Metrics of Testing Can be gained from various sources Cyclomatic complexity, function-base metrics Halstead testing metrics Metrics for Object-Oriented testing Metrics used in design provide an indication of design quality Metrics consider aspects of encapsulation and inheritance

Sample metrics Lines of Code (LOC) metrics Complexity metrics Errors, defects, dollars, or documentation pages per KLOC (thousand lines of code) Complexity metrics Structural Complexity S(i) = [fout(i)]2 -- fout = num. of modules directly invoked by module i. Data complexity D(i) = v(i)/[fout(i) + 1] -- v(i) = num. of iin/output variables in or out of i. System complexity C(i) = S(i) + D(i)

Source Monitor Free tool to measure software metrics How to use: Available at: http://www.campwoodsw.com/sourcemonitor.html How to use: Step 1: Write a complete program. Step 2: In a new project SM, specify your program’s directory when prompted to search for source code. Step 3: SM will read through all source code and compile a list of metrics. Simple as that!

Conclusion Metrics are used to quantify and measure data Helps to improve efficiency Different metrics for different stages in programming Some are simple, some are complex, some even rely on other metrics’ results to compute their own. Source Monitor is a free, easy way to measure metrics in programs. http://www.campwoodsw.com/sourcemonitor.html