Developing Risk Models Requires Mathematics, Domain Knowledge and Common Sense, although not Necessarily in that order Brendan Murphy Microsoft Research.

Slides:



Advertisements
Similar presentations
Object Oriented Analysis And Design-IT0207 iiI Semester
Advertisements

Test process essentials Riitta Viitamäki,
Influxive Quality Management
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management.
Evaluating Software Development Environments Brendan Murphy Microsoft Research Cambridge Brendan Murphy: Microsoft Research.
Chapter 4 Quality Assurance in Context
Predictor of Customer Perceived Software Quality By Haroon Malik.
Metrics for Process and Projects
Computer Engineering 203 R Smith Project Tracking 12/ Project Tracking Why do we want to track a project? What is the projects MOV? – Why is tracking.
1 Software Maintenance and Evolution CSSE 575: Session 8, Part 3 Predicting Bugs Steve Chenoweth Office Phone: (812) Cell: (937)
Notion of a Project Notes from OOSE Slides - modified.
1 Predictors of customer perceived software quality Paul Luo Li (ISRI – CMU) Audris Mockus (Avaya Research) Ping Zhang (Avaya Research)
1 Software Testing and Quality Assurance Lecture 30 – Testing Systems.
(c) 2007 Mauro Pezzè & Michal Young Ch 1, slide 1 Software Test and Analysis in a Nutshell.
1 Software Testing and Quality Assurance Lecture 14 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory and Practice.
Capability Maturity Model
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 24 Slide 1 Critical Systems Validation 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management 1.
S/W Project Management
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 15 Software Reliability
Product Quality, Testing, Reviews and Standards
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
N By: Md Rezaul Huda Reza n
Does Distributed Development Affect Software Quality???? An Empirical Case Study of Windows Vista Christian Bird, Premkumar Devanbu, Harald Gall, Brendan.
University of Coimbra, DEI-CISUC
Team Skill 6: Building the Right System From Use Cases to Implementation (25)
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
Chapter 3: Software Maintenance Process Omar Meqdadi SE 3860 Lecture 3 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Software Engineering 2003 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
This chapter is extracted from Sommerville’s slides. Text book chapter
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 3.
Microsoft Reseach, CambridgeBrendan Murphy. Measuring System Behaviour in the field Brendan Murphy Microsoft Research Cambridge.
Chapter 3: Software Project Management Metrics
Ensure that the right functions are performed Ensure that the these functions are performed right and are reliable.
Software Engineering 2004 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa SOFTWARE PRODUCT QUALITY Today: - Software quality -
Metadata By N.Gopinath AP/CSE Metadata and it’s role in the lifecycle. The collection, maintenance, and deployment of metadata Metadata and tool integration.
Using Bayesian Nets to Predict Software Defects in Arbitrary Software Lifecycles Martin Neil Agena Ltd London, UK Web:
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 21 Slide 1 Software evolution.
1 Software Quality Engineering. 2 Quality Management Models –Tools for helping to monitor and manage the quality of software when it is under development.
Software Quality Assurance and Testing Fazal Rehman Shamil.
Project Management effects on software dependability Brendan Murphy Microsoft Research Cambridge, UK.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Automation Testing Trainer: Eran Ruso. Training Agenda Automation Testing Introduction Microsoft Automation Testing Tool Box Coded UI Test and Unit Test.
This has been created by QA InfoTech. Choose QA InfoTech as your Automated testing partner. Visit for more information.
Introduction to Machine Learning, its potential usage in network area,
Steve Chenoweth Office Phone: (812) Cell: (937)
Project Cost Management
Metrics That Matter Real Measures to Improve Software Development
Why Metrics in Software Testing?
Software Configuration Management
John D. McGregor Session 9 Testing Vocabulary
The Development Process of Web Applications
Architecture & System Performance
Architecture & System Performance
Chapter 18 Maintaining Information Systems
Software testing
Software Reliability Definition: The probability of failure-free operation of the software for a specified period of time in a specified environment.
Software Project Sizing and Cost Estimation
Chapter 13 Quality Management
Welcome to Corporate Training -1
Software metrics.
Measurement What is it and why do it? 2/23/2019
Applying Use Cases (Chapters 25,26)
White Box testing & Inspections
Presentation transcript:

Developing Risk Models Requires Mathematics, Domain Knowledge and Common Sense, although not Necessarily in that order Brendan Murphy Microsoft Research EDCC Valencia 2010

Talk Content EDCC Valencia 2010 Metrics and Measurements Models Interpretation Are People a problem?

Tandem Systems availability 1985 – 1990 (Jim Gray) Fault Tolerant Systems Highly trained System Managers and Service Engineers Systems sent failures to Tandem Findings –“Operations is a significant cause of outages, second only to software” –“Operators are people, they will not be less faulty in the future” EDCC Valencia 2010

Monitoring DEC Server Systems Reality did not match the theory –System reality is impact by product quality therefore static System Reality is periodic –Daily –Weekly –Monthly –Quarterly EDCC Valencia 2010

Monitoring DEC Server Systems EDCC Valencia 2010 The underlying trend was operators increasingly causing crashes System and Network complexity made matters worse Crashes only represent 10% of all Outages! Availability driven by controlled shutdowns! Murphy Gent 1995 Q&RE

Measuring OS on DEC Servers EDCC Valencia 2010 System reliability increases dramatically in the days following installation Reliability continues to improve over the next 5 months Murphy Gent 1995 Q&RE

Reliability of Microsoft Software EDCC Valencia 2010 Software reliability always improve in the months following installation Improvement not due to software patches Improvement due to changes in usage profile Jalote, Murphy, Sharma TOSEM

Do humans only impact failures due to usage. The reliability of the released system and software are heavily dependent on the usage profile. Is the underlying software quality based purely on development process? –Do human factors have a significant impact? –If so how do you feed this into a model? EDCC Valencia 2010

Metrics and Measurements “The people who cast votes decide nothing. The people who count the votes decide everything” Joseph Stalin

Measurement Objectives Tracking the Project –Project Managers can interpret most data Identify Exceptions –Cross correlation of data to identify exceptions or gaming Predictions –Completion dates and release quality –Verify on past projects. EDCC Valencia 2010

Problems with tracking Metrics Metrics collected through software tools –Metrics often a By-Product –Tools evolved as do the metrics Making historical comparisons difficult People / organizations adapt –Peoples behaviour changes based on the problem being addressed –People/ Organizations learn from past mistakes EDCC Valencia 2010

Software Churn Initial “Gold Standard” Metric Lehman and Belady identified its importance in 1960’s Measure code rather than Binary churn Key attributes –Churn frequency –Amount of churn –Frequency of repetitive churn –Late Churn EDCC Valencia 2010

Churn Correlates to Failures EDCC Valencia 2010 Use of Relative Code churn measures to predict System Defect Density, ICSE 2005 Nagappan, Ball (Microsoft)

Metrics Monitored in Windows Test Coverage –Arc / Block coverage reflecting testing –Testing focuses on problem areas so may be symptomatic rather than a predictor of quality! Bugs –Identified through in-house testing and Beta feedback –Difficulty in identifying bug severity! –Beta testers not necessarily reflecting user base Code Complexity –OO and non OO metrics –Measures often reflect ease of testing! EDCC Valencia 2010

Metrics Monitored in Windows Dependencies –Direct and indirect dependencies reflect impact of change –Binaries cluster into three categories Architectural Layering –Does not distinguish hardware interfaces Code Velocity –Time code exists in the system before being checked into the main branch –Process rather than quality measure Legacy Code –Legacy code is either very good or a potential time bomb! EDCC Valencia 2010

Organizational Structure Metrics Propose eight measures that quantify organizational complexity capturing issues such as –Organizational distance of the developers –The number of developers working on a component –Component changes within the context of an organization Organizational structure not taken literally –Structure reflects logical rather than actual structure EDCC Valencia 2010

“The ability to foretell what is going to happen tomorrow, next week, next month, next year. And to have the ability afterwards to explain why it didn’t happen” Winston Churchill on politicians EDCC Valencia 2010 Models

Building the Models Various methods have been used to build the models –Bayesian, Step- wise regression Technique applied does not make that big a difference Train and verify the model on a past product, apply to future products Initial focus was developing models for Vista –Pre usage of People data EDCC Valencia 2010

Initial results of the Risk Model EDCC Valencia 2010 Training data Win 2003Win XP SP1Win XP SP2 Win %60%67% Win XP SP164%76%64% Win XP SP271% 20% 89% Win 2003 SP1 RC 78% 96% 70%

Initial Interpretation of Results Variation in the objectives of releases –Main Releases are feature focused New features create usage issues –Service Packs are risk adverse Variations between client and server software –Management, usage profile and hardware Ignoring vital areas –Engineers EDCC Valencia 2010

Developing Models using Vista Developed models for predicting product status –Achieved accuracy late in the development cycle Developed Organizational Metrics –Focus is to enhance Churn Metrics Verify the predictability of the Organizational Metrics –Predict the post release failure rate based on single metrics EDCC Valencia 2010

Accuracy of Metrics as Predictors EDCC Valencia 2010 Each attribute characterized by a set of metric All metrics correlated against failures ModelPrecisionRecall Organization Structure 86.2%84.0% Churn78.6%79.9% Complexity79.3%66.0% Dependencies74.4%69.9% Coverage83.8%54.4% Pre-Release Bugs73.8%62.9%

“I was gratified to be able to answer promptly and I did. I said I didn’t know” Mark Twain, Life on the Mississippi. EDCC Valencia 2010 Interpretation

Why Org Structure Matter EDCC Valencia 2010 Org A Org D Org C Org B Bug Fix New Feature Binary Low Risk High Risk Unknown High Risk Known

Applied Models to Windows 7 Tracking Project Status –Knowledge gained from cross correlating metrics Providing Real Time Data –No point identifying historical risk! Risk Assessment –Adapt to changes in Org structure and project management Verification of models once failure profile is known EDCC Valencia 2010

Problem in Building Risk Models Predicting the Future Telling good Engineers something they don’t already know –Known Problematic area Areas interfacing with hardware –Win 7 must work with existing hardware and not all hardware follows specs! New complicated areas Areas with a track record of problems EDCC Valencia 2010

Summary Humans impact reliability Building knowledge is more important than models –Getting papers into conf/ Journals is far easier than getting engineers to value your results. Developing accurate risk models is difficult –Ensuring they provide useful and timely data is the real problem Writing complex software is difficult –So its highly unlikely that a simple model will capture that complexity! EDCC Valencia 2010

QUESTIONS? EDCC Valencia 2010