University of Sunderland CIFM03Lecture 4 1 Software Measurement and Reliability CIFM03 Lecture 4.

Slides:



Advertisements
Similar presentations
Lecture 8: Testing, Verification and Validation
Advertisements

Metrics for Process and Projects
Managing Software Quality Main issues:  Quality cannot be added as an afterthought  To measure is to know  Product quality vs process quality.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Overview Lesson 10,11 - Software Quality Assurance
Software Configuration Management
SAK5102 Software Evaluation Measuring External Attributes.
SIM5102 Software Evaluation
Creator: ACSession No: 5 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringSeptember 2005 Software Measurement - Basics CSE300 Advanced Software.
Testing an individual module
University of Sunderland CIFM03Lecture 5 1 QMS implementation and management CIFM03 Lecture 5.
SOFTWARE PROJECT MANAGEMENT Project Quality Management Dr. Ahmet TÜMAY, PMP.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
Software Dependability CIS 376 Bruce R. Maxim UM-Dearborn.
Software Project Management
University of Toronto Department of Computer Science © 2001, Steve Easterbrook CSC444 Lec22 1 Lecture 22: Software Measurement Basics of software measurement.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Cmpe 589 Spring Software Quality Metrics Product  product attributes –Size, complexity, design features, performance, quality level Process  Used.
CS 501: Software Engineering Fall 1999 Lecture 16 Verification and Validation.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Software Reliability SEG3202 N. El Kadri.
SOFTWARE ENGINEERING1 Introduction. Software Software (IEEE): collection of programs, procedures, rules, and associated documentation and data SOFTWARE.
Software Engineering Software Process and Project Metrics.
Chapter 6 : Software Metrics
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Software Quality Assurance SE Software Quality Assurance What is “quality”?
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
This chapter is extracted from Sommerville’s slides. Text book 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.”
1Software Measurement Advanced Software Engineering COM360 University of Sunderland © 2001.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 23 Reliability III.
University of Sunderland CIFM03Lecture 2 1 Quality Management of IT CIFM03 Lecture 2.
Software Project Management Lecture # 11. Outline Quality Management (chapter 26 - Pressman)  What is quality?  Meaning of Quality in Various Context.
Software Metrics and Reliability. Definitions According to ANSI, “ Software Reliability is defined as the probability of failure – free software operation.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
Software Testing and Quality Assurance Software Quality Assurance 1.
Managing Software Quality Main issues:  Quality cannot be added as an afterthought  To measure is to know  Product quality vs process quality ©2008.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Lecture Introduction to Software Development SW Engg. Development Process Instructor :Muhammad Janas khan Thursday, September.
Scale2 1 Measurement Scales The “richness” of the measure.
SOFTWARE ENGINEERING1 Introduction. SOFTWARE ENGINEERING2 Software Q : If you have to write a 10,000 line program in C to solve a problem, how long will.
Software Project Management
Software Reliabilty1 Software Reliability Advanced Software Engineering COM360 University of Sunderland © 1998.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
McGraw-Hill/IrwinCopyright © 2014 by The McGraw-Hill Companies, Inc. All rights reserved. MEASUREMENT Chapter 11.
Advanced Software Engineering Lecture 4: Process & Project Metrics.
1 Lecture 12: Chapter 16 Software Quality Assurance Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
1. Black Box Testing  Black box testing is also called functional testing  Black box testing ignores the internal mechanism of a system or component.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
Emilia Mendes Professora Visitante CAPES/ Associate Professor Univ. Auckland, NZ. Introdução a Métricas, Qualidade e Medição de Software.
Software Metrics and Reliability
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Configuration Management
Software Quality Assurance
Software Project Management
Software Verification and Validation
Software Verification and Validation
SEVERITY & PRIORITY RELATIONSHIP
Introduction SOFTWARE ENGINEERING.
Software Reliability PPT BY:Dr. R. Mall 7/5/2018.
Chapter 21 Software Quality Assurance
Chapter 21 Software Quality Assurance
BASIC DEFINITIONS Errors : An error is a mistake, misconception, or misunderstanding on the part of a software developer. In the category of developer.
Progression of Test Categories
Quality Measurable characteristic Cyclomatic complexity Cohesion
Software metrics.
Measurement What is it and why do it? 2/23/2019
Presentation transcript:

University of Sunderland CIFM03Lecture 4 1 Software Measurement and Reliability CIFM03 Lecture 4

University of Sunderland CIFM03Lecture 4 2 Where does Software Measurement fit in? Look at software measurement from the perspective of software quality assurance….. SQA REVIEWS TESTING MEASURE- MENT STANDARDS& PROCEDURES

University of Sunderland CIFM03Lecture 4 3 Software Measurement is... “the objective assignment of numbers or symbols to attributes of a software process or product in such a way as to describe them according to clearly defined rules...” see ‘Software Metrics, A Rigorous & Practical Approach’, Fenton & Pfleeger

University of Sunderland CIFM03Lecture 4 4 Why should we measure?  what are our goals?  what information is required?  what can we collect?  How do we act upon the data?

University of Sunderland CIFM03Lecture 4 5 DON’T! Don’t define what you won’t collect.. Don’t collect what you won’t analyse.. Don’t analyse what you won’t use..

University of Sunderland CIFM03Lecture 4 6 Goal / Question / Metric Goal - achieve a 10-fold improvement in post-release defects. Question - how many existing faults? How effective are inspection techniques? How effective are tests? Metric - no. & type of faults, no. of defects found, % paths tested, complexity of code.

University of Sunderland CIFM03Lecture 4 7 Hard & Soft Data HARD - objective figures - no.of people on a project, duration of tasks, size of documentation, etc. SOFT - subjective - level of experience, balance of teams, etc.

University of Sunderland CIFM03Lecture 4 8 Obstacles to Effective Measurement  no agreement over standard measures  patchy tool support  initial set-up expense

University of Sunderland CIFM03Lecture 4 9 Basic Measurement Theory  Nominal - names / categories  Ordinal - ‘cold, warm, hot’ ‘small, med, large’  Interval - temperature ‘20 o C, 40 o C’ - scale  Ratio - absolute temperature ‘20 o K, 40 o K’, time  Absolute - counting no. of occurrences

University of Sunderland CIFM03Lecture 4 10 Analysis.. Nominal - equivalence Ordinal - as above + greater than Interval - as above + ratio of any intervals Ratio - as above + ratio of any 2 scale values Absolute - as above + geometric mean, coeff. of variation

University of Sunderland CIFM03Lecture 4 11 Function Points & Cyclomatic Complexity Function Points: Measure of functionality for ‘size’ - no. of external inputs - no. of external outputs - no. of enquiries - no. of files - no. external interfaces Cyclomatic Complexity: Module complexity based on a ‘graph’ of the module - nodes - predicate nodes - paths

University of Sunderland CIFM03Lecture 4 12 Measurement and the CMM

University of Sunderland CIFM03Lecture 4 13 Software Reliability is… The probability that the software will; operate as required (i.e., without fail), for a specified time, in a specified environment.

University of Sunderland CIFM03Lecture 4 14 Software Reliability - features failures in software are design faults, reliability during test changes continually (new problems are found as old ones are fixed / new code is never perfect) phenomenon of software reliability growth environment is important (platform/inputs) - new envt. may require s/w retest

University of Sunderland CIFM03Lecture 4 15 Reliability - General (i) Of all software quality characteristics, reliability is consistently identified as most important. Reliability, for both hardware and software, is a probability - SYSTEM reliability can be derived from combining the hardware and software reliabilities. Reliability is directly related to the number of failures. [ p(Reliable) =1 - p(Fail) ]

University of Sunderland CIFM03Lecture 4 16 Reliability - General (ii) Reliability measures are much more useful than fault measures - from the user perspective. Measures of faults/defects are developer oriented. Change of environment (operating platform, operational data profile) changes reliability.

University of Sunderland CIFM03Lecture 4 17 Fault, Error, Failure (defined by BS5760 part8: 1998) Fault a defect in a software component which, when triggered, causes one or many errors Error a discrepancy between its actual state and the ‘correct state’ which, if it propagates, means that the component ceases to perform as required Failure the component ceases to perform as required

University of Sunderland CIFM03Lecture 4 18 Fault, Error, Failure FAULTS ERRORS FAILURE ENVIRONMENT OPERATOR INPUT OR REVEALING MECHANISM AND LEADS TO ZERO OR MANY POTENTIALLY LEADS TO ZERO OR MANY MISTAKES (PERSON MAKES) CAN BE ATTRIBUTED TO ONE OR MANY (This slide from BS5760 Part 8: 1998)

University of Sunderland CIFM03Lecture 4 19 Reliability Measures When we talk of reliability measures the irony is that we invariably talk about failure measures. There are four general ways of measuring failures against time;  time of failure,  interval between failures,  cumulative failures experienced up to a given time,  failures experienced in a time interval.

University of Sunderland CIFM03Lecture 4 20 Availability & Maintainability Availability –is the probability that the software is operating at a given time. It is equal to the mean time to failure divided by the mean time between failures. Maintainability –is the mean time to repair the software and restore to working order.

University of Sunderland CIFM03Lecture 4 21 Uses of S/w Reliability Measurement System Reliability evaluation Monitoring operational performance –e.g., decisions on when to go for enhancement Evaluation of test status / test schedule Management of new features and design changes