Test Generation with Abstraction and Concretization

Slides:



Advertisements
Similar presentations
Fraunhofer FOKUS Competence Center MOTION FOKUS VIEW ON MODEL-BASED TEST DESCRIPTION LANGUAGES (TDLS) Alain-G. Vouffo Feudjio.
Advertisements

Copyright © 2006 Data Access Technologies, Inc. Open Source eGovernment Reference Architecture Approach to Semantic Interoperability Cory Casanave, President.
Tintu David Joy. Agenda Motivation Better Verification Through Symmetry-basic idea Structural Symmetry and Multiprocessor Systems Mur ϕ verification system.
Auto-Generation of Test Cases for Infinite States Reactive Systems Based on Symbolic Execution and Formula Rewriting Donghuo Chen School of Computer Science.
1 Title Page Implicit and Explicit Reachable State Space Exploration Of Esterel Logical Circuits Advisor :
BAiT: Adaptive Test Case Execution in Practice Jens R. Calamé Centrum voor Wiskunde en Informatica, Amsterdam.
The role of OCL in the Model Driven Architecture Jos Warmer Klasse Objecten
From Model-based to Model-driven Design of User Interfaces.
Tool support for Distributed Object Technology
1 CS 201 Compiler Construction Lecture Interprocedural Data Flow Analysis.
1st DWFTT - 21/06/05 - Amsterdam TT-Medal Project Overview Jaco van de Pol CWI, SEN 2 Amsterdam Stefan Blom, Jens Calamé, Wan Fokkink, Nicu Goga, Natalia.
Higher-Order Transformation Eugene SyrianiandHans Vangheluwe.
Production Rule Representation Team Response Presentation to BEIDTF OMG Montreal Aug 2004 Ruleml.org.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
Design Creative Process of transferring the problem into a solution
Final Thesis Presentation on TEST DERIVATION AND REUSE THROUGH HORIZONTAL TRANSFORMATION OF SYSTEM MODELS Submitted by-Supervised by- Jenis KavadiyaAntonio.
Control Flow Analysis Mooly Sagiv Tel Aviv University Sunday Scrieber 8 Monday Schrieber.
The Formalisation of Haskell Refactorings Huiqing Li Simon Thompson Computing Lab, University of Kent
1 Control Flow Analysis Mooly Sagiv Tel Aviv University Textbook Chapter 3
Towards Automatic Generation of Parameterized Test Cases from Abstractions Jens R. Calamé Natalia Ioustinova Jaco van de Pol Centrum voor Wiskunde en Informatica,
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Program Analysis Mooly Sagiv Tel Aviv University Sunday Scrieber 8 Monday Schrieber.
State Minimization and Determinization EECS 290A Sequential Logic Synthesis and Verification.
Automatic Complexity Analysis of Simple Imperative Programs Zachi Mann.
Formal Techniques for Verification Using SystemC By Nasir Mahmood.
Database Systems Group Department for Mathematics and Computer Science Lars Hamann, Martin Gogolla, Mirco Kuhlmann OCL-based Runtime Monitoring of JVM.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
UML based dependability modeling, analysis and synthesis Proposers: TU Budapest: A. Pataricza, Gy. Csertán, I. Majzik, D. Varró PDCC Pisa: L. Simoncini,
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Introduction to MDA (Model Driven Architecture) CYT.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
Procedures for managing workflow components Workflow components: A workflow can usually be described using formal or informal flow diagramming techniques,
1 Introduction to Software Engineering Lecture 1.
Model construction and verification for dynamic programming languages Radu Iosif
On the Role of Abstract Platform in Model Driven Development* Marten van Sinderen Centre for Telematics and Information Technology, University of Twente,
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
MDD approach for the Design of Context-Aware Applications.
Lecture 5 1 CSP tools for verification of Sec Prot Overview of the lecture The Casper interface Refinement checking and FDR Model checking Theorem proving.
Challenges in the Business Digital Ecosystems Pierfranco Ferronato, Soluta.net DBE Principal Architect Digital Ecosystem Workshop, 18 May 2005 “Towards.
Murielle Florins 1, Francisco Montero Simarro 2, Jean Vanderdonckt 1, Benjamin Michotte 1 1 Université catholique de Louvain 2 Universidad de Castilla-la-Mancha.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
A Framework for Developing Compiler-like Components Jackline Ssanyu ( Software Engineering and Technology Group) Eindhoven University of Technology Supervisors:
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
An Automated Test Generation Process from UML Models to TTCN-3 Jens R. Calamé.
CSE Winter 2008 Introduction to Program Verification February 5 calculating with simplify.
Model Driven Performance Analysis University College London James Skene –
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
An Automated Test Generation Process from UML Models to TTCN-3
Automated Object’s Statechart Generation and Testing from Class-Method Contracts Atul Gupta PhD Scholar, IIT Kapur, India.
Advanced Data Structures Lecture 1
SS 2017 Software Verification Bounded Model Checking, Outlook
MACS 2005 First International Workshop on the Modeling and Analysis of Concerns in Software Concern Management for Constructing Model Compilers -- Towards.
Type Checking Generalizes the concept of operands and operators to include subprograms and assignments Type checking is the activity of ensuring that the.
Hardware Verification
Software Design Methodology
Chapter 10: Process Implementation with Executable Models
Symbolic Implementation of the Best Transformer
Objective of This Course
Luís Ferreira Pires Dick Quartel Remco Dijkman Marten van Sinderen
Thanyapat Sakunkonchak Masahiro Fujita
Java Programming Course
Review CSE116 2/21/2019 B.Ramamurthy.
Canonical Computation without Canonical Data Structure
Dichotomies in CSP Karl Lieberherr inspired by the paper:
Abstract Data Types Abstraction is to distill a system to its most fundamental parts. Applying the abstraction paradigm to the design of data structures.
Presentation transcript:

Test Generation with Abstraction and Concretization Jens R. Calamé Natalia Ioustinova Jaco van de Pol

Our Approach in Context with MDA Abstraction and test generation from platform independent models Starting point: UML-Model Formalization and abstraction of the specification before test generation Generation of parameterizable test cases on a platform-independent level Generation of Rules for Data Selection PIM PIT PSM PST Code TestCode 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Our Test Generation Process System Specification (informal) PIM PIT System Specification (formal) Abstraction Abstract System Specification Test Case Generation Test Purpose TGV Abstract Test Case TTCN-3 Generation Constraint Generation Parameterizable Test Case (TTCN-3) Rule System for Data Selection 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

1st Dutch Workshop on Formal Testing Techniques Abstraction Motivation: Test Generation with TGV is based on enumerative techniques Given: formal specification with infinite state-space w.r.t. input data Result: formal specification with finite state-space w.r.t. input data System abstraction on specification-level: Replace all input values by one constant chaos (*) Propagate this * through the system Transform conditions based on * to nondeterministic choice  Abstracted system is an over-approximation of original system 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Implementation of Abstraction Program transformation of a µCRL process specification: For each datatype D add one additional type D* with the constructor *D and a lifting function :DD* For all datatypes D realize all functions additionally for D* and lift them (strict lifting, except for datatype Boolean) Lift all action and process parameters Replace all input variables in the process definition by * (propagation of * happens automatically) and lift conditions In the process initialization use original values, lifted by , or use * 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Our Test Generation Process System Specification (informal) System Specification (formal) Abstraction Abstract System Specification Test Case Generation Test Purpose TGV Abstract Test Case TTCN-3 Generation Constraint Generation Parameterizable Test Case (TTCN-3) Rule System for Data Selection 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Test Case Generation with TGV TGV: Test Generation with Verification Technology Part of CADP toolkit Link between µCRL toolkit and CADP toolkit Test Generation with TGV Based on a labeled transition system (enumeration of all data values) Guided by a test purpose (focus of generated test cases) 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Our Test Generation Process System Specification (informal) System Specification (formal) Abstraction Abstract System Specification Test Case Generation Test Purpose TGV Abstract Test Case TTCN-3 Generation Constraint Generation Parameterizable Test Case (TTCN-3) Rule System for Data Selection 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Generation of Data Selection Rules Given: Abstract test case (control flow information + internal data) Original specification (data dependencies) Result: (generated Prolog implementation) Rules, representing ADT functions of the original specification (meta language) Rule system based on specification: one rule for each transition in original system, containing Conditions Assignments (internally or from input actions, resp.) Test oracle based on abstract test case (query to rule system) Invocation of all selected actions as a conjunction 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

1st Dutch Workshop on Formal Testing Techniques Case Study CEPS Common Electronic Purse Specifications Standard for electronic payment cards and infrastructure Appropriate to experimenting with our approach due to its data orientation Experience with CEPS (card application) Abstracted system of a challenging size (17.5 mio. transitions and 3 mio. states) Size could be reduced further with unused variable analysis and LTS minimization (5487 transitions and 1627 states)  From the resulting system, test cases and data constraints could be generated easily 21-06-2005 1st Dutch Workshop on Formal Testing Techniques

Conclusion and Future Work *-Abstraction algorithm is implemented for µCRL TGV is applied on abstracted systems Parameterization constraint generation is defined and implemented The whole test generation process is applied to the CEPS case study Future work Generation of parameterizable TTCN-3 test cases Formalization of UML-Models for test generation Comparison of STG to our approach (First release of STG: Oct. 2005) 21-06-2005 1st Dutch Workshop on Formal Testing Techniques