A Model-Derivation Framework for Software Analysis

Description:Motivating example of the paper. It is automatically generated from the example Java program given in the paper.
Author(s):Bugra M. Yildiz, Arend Rensink, Christoph Bockisch, Mehmet Aksit
Tool(s): Uppaal
Event:MARS'17
Paper:A Model-Derivation Framework for Software Analysis

Abstract

Model-based verification allows to express behavioral correctness conditions like the validity of execution states, boundaries of variables or timing at a high level of abstraction and affirm that they are satisfied by a software system. However, this requires expressive models which are difficult and cumbersome to create and maintain by hand. This paper presents a framework that automatically derives behavioral models from real-sized Java programs. Our framework builds on the EMF/ECore technology and provides a tool that creates an initial model from Java bytecode, as well as a series of transformations that simplify the model and eventually output a timed-automata model that can be processed by a model checker such as UPPAAL. The framework has the following properties: (1) consistency of models with software, (2) extensibility of the model derivation process, (3) scalability and (4) expressiveness of models. We report several case studies to validate how our framework satisfies these properties.

Model(s)

Creative Commons License    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.