Testing Generation at UPenn Model-Based Test Generation Temp. Prop. Translator Controller Model Checker ---------------------- Witness generator  1 Æ.

Slides:



Advertisements
Similar presentations
The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Advertisements

Auto-Generation of Test Cases for Infinite States Reactive Systems Based on Symbolic Execution and Formula Rewriting Donghuo Chen School of Computer Science.
A Survey of Runtime Verification Jonathan Amir 2004.
CS 267: Automated Verification Lecture 2: Linear vs. Branching time. Temporal Logics: CTL, CTL*. CTL model checking algorithm. Counter-example generation.
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
Introduction to Formal Methods for SW and HW Development 09: SAT Based Abstraction/Refinement in Model-Checking Roberto Sebastiani Based on work and slides.
SAT Based Abstraction/Refinement in Model-Checking Based on work by E. Clarke, A. Gupta, J. Kukula, O. Strichman (CAV’02)
Knowledge Based Synthesis of Control for Distributed Systems Doron Peled.
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.
CS6133 Software Specification and Verification
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Tuning SAT-checkers for Bounded Model-Checking A bounded guided tour Ofer Strichman Carnegie Mellon University.
Weizmann Institute Tuning SAT-checkers for Bounded Model-Checking A bounded guided tour Ofer Shtrichman Weizmann Institute & IBM (HRL)
Weizmann Institute Deciding equality formulas by small domain instantiations O. Shtrichman The Weizmann Institute Joint work with A.Pnueli, Y.Rodeh, M.Siegel.
CSE 331 SOFTWARE DESIGN & IMPLEMENTATION TESTING II Autumn 2011.
1 Carnegie Mellon UniversitySPINFlavio Lerda SPIN An explicit state model checker.
GM-CMU Collaborative Research Laboratory Temporal Logics for Analyzing Hybrid Systems Simulation Traces.
Testing Generation at UPenn Testing Hybrid System: Phase I Randomized test generator=Randomized Simulator+ Coverage Checker. 1. Local ramdomization 1.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Testing and Monitoring at Penn Testing and Monitoring Model-based Generated Program Li Tan, Jesung Kim, and Insup Lee July, 2003.
Model Checking. Used in studying behaviors of reactive systems Typically involves three steps: Create a finite state model (FSM) of the system design.
Lecture 4&5: Model Checking: A quick introduction Professor Aditya Ghose Director, Decision Systems Lab School of IT and Computer Science University of.
1 Today Another approach to “coverage” Cover “everything” – within a well-defined, feasible limit Bounded Exhaustive Testing.
Property-Based Test Generation Li Tan, Oleg Sokolsky, and Insup Lee University of Pennsylvania.
Transaction Ordering Verification using Trace Inclusion Refinement Mike Jones 11 January 2000.
Witness and Counterexample Li Tan Oct. 15, 2002.
System Design Research Laboratory Model-based Testing and Monitoring for Hybrid Embedded Systems Li Tan Jesung Kim Oleg Sokolsky Insup Lee University of.
ESE601: Hybrid Systems Introduction to verification Spring 2006.
Witness and Counterexample Li Tan Oct. 15, 2002.
Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST.
System Design Research Laboratory Specification-based Testing with Linear Temporal Logic Li Tan Oleg Sokolsky Insup Lee University of Pennsylvania.
Testing and Monitoring at Penn An Integrated Framework for Validating Model-based Embedded Software Li Tan University of Pennsylvania September, 2003.
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
The Model Checker SPIN Written by Gerard J. Holzmann Presented by Chris Jensen.
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
Introduction to Software Testing
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
Formal Techniques for Verification Using SystemC By Nasir Mahmood.
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
Using a Formal Specification and a Model Checker to Monitor and Guide Simulation Verifying the Multiprocessing Hardware of the Alpha Microprocessor.
Structural Coverage Verilog code is available to help generate tests o Code can be analyzed statically and/or simulated Easier to detect “additive” design.
Testing Generation at UPenn Model-Based Test Generation I. Model-based test generation for discrete systems [HLS02]. Temp. Prop. Translator Controller.
Combining Time and Frequency Domain Specifications for Periodic Signals Aleksandar Chakarov and Sriram Sankaranarayanan University of Colorado Boulder.
Advanced Technology Center Slide 1 Requirements-Based Testing Dr. Mats P. E. Heimdahl University of Minnesota Software Engineering Center Dr. Steven P.
Model-based Methods for Web Service Verification.
5/27/03MDES Supporting Model-Based Validation at Run-time Insup Lee and Oleg Sokolsky Department of Computer and Information Science University of.
Checking Reachability using Matching Logic Grigore Rosu and Andrei Stefanescu University of Illinois, USA.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Allen Linear Temporal Logic Translation to LTL and Monitor Synthesis Grigore Rosu (University of Illinois at U-C) Saddek Bensalem (VERIMAG)
1 Black-box conformance testing for real-time systems Stavros Tripakis VERIMAG Joint work with Moez Krichen.
1 CSEP590 – Model Checking and Automated Verification Lecture outline for August 6, 2003.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Automated Planning Dr. Héctor Muñoz-Avila. What is Planning? Classical Definition Domain Independent: symbolic descriptions of the problems and the domain.
Verification & Validation By: Amir Masoud Gharehbaghi
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Model Checking Lecture 1. Model checking, narrowly interpreted: Decision procedures for checking if a given Kripke structure is a model for a given formula.
Bounded Model Checking A. Biere, A. Cimatti, E. Clarke, Y. Zhu, Symbolic Model Checking without BDDs, TACAS’99 Presented by Daniel Choi Provable Software.
Model Checking Lecture 1: Specification Tom Henzinger.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Teooriapäevad, Vanaõue, Sept Synthesis of Test Purpose Directed Reactive Planning Tester for Nondeterministic Systems 1 Jüri Vain, Kullo Raiend,
Input Space Partition Testing CS 4501 / 6501 Software Testing
An explicit state model checker
Program Synthesis is a Game
Over-Approximating Boolean Programs with Unbounded Thread Creation
Abstraction, Verification & Refinement
Introduction to verification
Presentation transcript:

Testing Generation at UPenn Model-Based Test Generation Temp. Prop. Translator Controller Model Checker Witness generator  1 Æ …… Æ  n ii i ² ii ² i Concretizer TS={  1,……,  n } Specification Model Implementation Tester demand /Specification Test Suite Test Setting = temporal properties + specification + implementation Coverage Criteria

Testing Generation at UPenn Model-Based Test Generation Overview: Use witness-ready model checker to automate the test generation. Flexible: properties can mimic the traditional coverage criteria, or can be directly specified by tester. Efficient: Efficiency inherent from checker’s search engine. Effective: fine-tune test by specifying extra constrains f=G ( (begin ) F end) Æ (setValue ) F move)) Add: f 1 =F (setValue): Test f Æ f 1 Current research Testing discrete systems. Mimicing traditional coverage criteria Is in general LTL property “testable”? Testing hybrid systems. Randomized simulation approach Reachability checker-assisted approach.

Testing Generation at UPenn Testing discrete systems Given: Test setting = LTL/ 9 LTL + the specification+ Blackbox implementation. Problem: Currently testing properties is limited to 9 LTL with eventuality only. Question: is there a test for “F( G( a ! Xb))”. Require to test all the possible executions May require a test with infinite length.

Testing Generation at UPenn Property-Coverage Testing Synthesizing test suites for 9 LTL property. 1. Is the property “E GF a” testable? 1. No finite trace can be attest to this property. 2. If the number of states in blackbox is bounded by n, 1. A trace for 9 LTL + the specification is rational:  (  ) . 2. A infinite trace  (  )  can be cut to  (  ) n 3. Buchi tree automaton-based model checker can be used to generate rational traces. Synthesizing test suites for LTL property. 1. LTL can be translated to a set of interesting 9 LTL properties. 1. E( GF( a) Æ F(G(a ) X b)) is an interesting property for F(G(a ) X b)) 2. Each interesting 9 LTL property focuses on testing a particular portion of LTL formula.

Testing Generation at UPenn Testing Hybrid System: Phase I Randomized test generator=Randomized Simulator+ Coverage Checker. 1. Local ramdomization, gobal strategy. 1. Stay or jump 2. Where to jump 3. How long to stay 2. Gobal ramdomization 1. Aborting/Continuing on current trace. Mode A df/dt=1 a: True:f=0 b: 1 · f<3:m=1 c: 2 · f<4:m=2 Mode B dw/dt=1 Mode C d: 2 · f<5:m=4

Testing Generation at UPenn Testing Hybrid System: Phase I 1. Heuristic search 1. Uncovered neighbor first 2. Syntax-based distance matrix (Shortest distance to uncovered state/location) 3. Open question: Make local decision based global information/history. 1. deciding the weight for outgoing transitions based on the history (What should we learn from a failed search). 2. Deciding the duration to stay in a mode. 2. Current status: a working version of randomized test generation is written on CHARON simulator.

Testing Generation at UPenn Testing Hybrid System: Phase II System Modeling CHARON (Model) Flatten hybrid model Concretizer Implementation Test Suite Set of predicates Coverage criteria Bad set Reachability Checker Yes w/ Trace Simulation /refinment NO w/ more predicates YES No

Testing Generation at UPenn Intelligent simulator Intelligent simulator=simulator+ property checker (monitor) 1. Verification as the byproduct of simulation 1. LTL Property encoded as the monitor 1. MEDL: A subset of LTL, has been applied to Java running-time monitoring. 2. Monitor advances when the simulation proceeds. 3. Open problem: LTL with eventuality only is easy, but how about other formula requires circularity reasoning. 1. Need to remember the states traversed to sense the loop. 1. Difficult because the domain of continuous variables are dense. 2. The search is tailored by the property. 1. A transition “measure” has the priority higher than others if the property is G(measure => X (home)). 2. Most interesting simulation trace: Covering as many parts of property as possible using less steps.