Methods have limits … Matthew Dwyer Steve Goddard Sebastian Elbaum.

Slides:



Advertisements
Similar presentations
Runtime Techniques for Efficient and Reliable Program Execution Harry Xu CS 295 Winter 2012.
Advertisements

Notes on “AMOEBA-RT: Run-Time Verification of Adaptive Software” Jozef Hooman Embedded Systems Institute, Eindhoven Radboud University Nijmegen The Netherlands.
A Survey of Runtime Verification Jonathan Amir 2004.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Abstraction and Modular Reasoning for the Verification of Software Corina Pasareanu NASA Ames Research Center.
Math 2 Advice for Taking Tests And Errors To Avoid.
CSE , Autumn 2011 Michael Bond.  Name  Program & year  Where are you coming from?  Research interests  Or what’s something you find interesting?
Atomicity in Multi-Threaded Programs Prachi Tiwari University of California, Santa Cruz CMPS 203 Programming Languages, Fall 2004.
Identifying Needs and Establishing Requirements John Thiesfeld Jeff Morton Josh Edwards.
Background on Testing and Maintenance CISC 879 Fall 2008.
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
1 More on Distributed Coordination. 2 Who’s in charge? Let’s have an Election. Many algorithms require a coordinator. What happens when the coordinator.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
Survey Design Training OFFICE OF PLANNING, RESEARCH & INSTITUTIONAL EFFECTIVENESS CAÑADA COLLEGE.
What Exactly are the Techniques of Software Verification and Validation A Storehouse of Vast Knowledge on Software Testing.
By D. Beyer et. al. Simon Fraser University (Spring 09) Presentation By: Pashootan Vaezipoor.
CS527: (Advanced) Topics in Software Engineering Overview of Software Quality Assurance Tao Xie ©D. Marinov, T. Xie.
Accuracy Precision % Error
15-740/ Oct. 17, 2012 Stefan Muller.  Problem: Software is buggy!  More specific problem: Want to make sure software doesn’t have bad property.
Instructor: Peter Clarke
1 Systems Engineering Process Review Mark E. Sampson EMIS 8340 Systems Engineering Tool—applying tools to engineering systems.
CIS 842: Specification and Verification of Reactive Systems Lecture Specifications: Sequencing Properties Copyright , Matt Dwyer, John Hatcliff,
Accuracy Precision % Error. Variable is a factor that affects the outcome of an experiment. 3 Types of variables Experimental/ Independent Variable The.
(c) 2007 Mauro Pezzè & Michal Young The Big Picture.
Race Checking by Context Inference Tom Henzinger Ranjit Jhala Rupak Majumdar UC Berkeley.
3 x x x x x 23. Grid Method Grid Method Gelosian Method Gelosian Method Partitioning method Partitioning method “Long” multiplication.
Data Analysis: Preliminary Steps
Task Analysis Methods IST 331. March 16 th
EXAMPLE 2 Find the LCD of rational expressions Find the LCD of the rational expressions. r r 2 a., 1 4r4r SOLUTION a. Find the least common multiple.
Why do we need to do it? What are the basic tools?
Practice solving systems by graphing 1.)2.) 2x + 5y = –5 x + 3y = 3.
Deadlock Analysis with Fewer False Positives Thread T1: sync(G){ sync(L1){ sync(L2){} } }; T3 = new T3(); j3.start(); J3.join(); sync(L2){ sync(L1){} }
Cave Survey Blunders Cave survey blunders are mistakes made during the survey that can corrupt the data and eventually affect the map.
Multiplication Facts X 3 = 2. 8 x 4 = 3. 7 x 2 =
Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois
ACT Prep Lesson I can apply critical reading skills and test taking strategies to effectively answer multiple choice questions.
Objective: To simplify square roots and radical expressions. Standard 2.0.
Good Morning! Unpack Use bathroom Sharpen 2 pencils/Check lead Write down homework and bring agenda and homework book to me Get breakfast and check in.
Multiplication Find the missing value x __ = 32.
Comparative Relational Thinking
Multiplication Timed Tests.
Optimistic Hybrid Analysis
Gmail Helpline Numberfix Gmail.
7.6 Solving Radical Equations
SEQUENCES Target: To find the next number in the sequence.
Effective Data-Race Detection for the Kernel
runtime verification Brief Overview Grigore Rosu
Complete the missing numbers using the inverse.
Fault Injection: A Method for Validating Fault-tolerant System
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Solve a system of linear equation in two variables
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Start Finish Find the solution 42 out of out of 2200
Coding Concepts (Basics)
End Warm Up Answer each question to solve x2 – 9x + 18 = 0
cs205: engineering software
Software Verification and Validation
Software Verification and Validation
The product of 3x5  2x4 is 6x20 6x9 5x20 5x9
T-APPLE Frequent opportunities for: interaction
Software Verification and Validation
Exam Strategies Poetry.
Warmup Chapter P Review
7.6 Solving Radical Equations
6.6 Solve Radical Equations
Race Questions: Question 1
Testing Tips for DMV Written Examinations
This game has sound! Unit Fractions of Quantities – Car Race
Percentage – Expressing a Quantity – Non-Calculator – Car Race
Presentation transcript:

Methods have limits … Matthew Dwyer Steve Goddard Sebastian Elbaum

All validation, verification, synthesis, … techniques are limited in some way –expressiveness, soundness, scalability, usability, … We don’t talk much about these limits - we should –Industry : you want to know the limits of the techniques you consume –Govt : you want to know the limits of techniques you invest in –Research : limits are an opportunity

What happens at the limit? Can’t capture problem with a technique –abstract, decompose, use multiple techniques Can’t precisely analyze system –false error reports, miss errors Can’t scale analysis to system –no answer, partial answer, incorrect answer …

Multiple techniques How do their limits line up? Can we combine techniques to reduce the gaps? Even partial solutions have tons of information –Model check out of memory - partial state space –Type state imprecision - usually confirms large parts of program as error free model check race freedom type state atomicity

Eventually we have to deploy When the last technique is finished –there may be residual unmet validation goals How will we detect and respond to errors at run time? ?