How to Efficiently Build a Front-End Tool for UPPAAL: A Model-Driven Approach

Stefano Schivo, Bugra Mehmet Yildiz, Enno Jozef Johannes Ruijters*, Christopher Gerking, Rajesh Kumar, Stefan Dziwok, Arend Rensink, Mariëlle Ida Antoinette Stoelinga

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference Article in proceedingAcademicpeer-review

Abstract

We propose a model-driven engineering approach that facilitates the production of tool chains that use the popular model checker Uppaal as a back-end analysis tool. In this approach, we introduce a metamodel for Uppaal’s input model, containing both timed-automata concepts and syntax-related elements for C-like expressions. We also introduce a metamodel for Uppaal’s query language to specify temporal properties; as well as a metamodel for traces to interpret Uppaal’s counterexamples and witnesses. The approach provides a systematic way to build software bridging tools (i.e., tools that translate from a domain-specific language to Uppaal’s input language) such that these tools become easier to debug, extend, reuse and maintain. We demonstrate our approach on five different domains: cyber-physical systems, hardware-software co-design, cyber-security, reliability engineering and software timing analysis.
Original languageEnglish
Title of host publicationDependable Software Engineering. Theories, Tools, and Applications
Subtitle of host publicationThird International Symposium, SETTA 2017, Changsha, China, October 23-25, 2017, Proceedings
EditorsKim Guldstrand Larsen, Oleg Sokolsky, Ji Wang
Place of PublicationCham
PublisherSpringer
Pages319-336
Number of pages18
ISBN (Electronic)978-3-319-69483-2
ISBN (Print)978-3-319-69482-5
DOIs
Publication statusPublished - 1 Oct 2017
Externally publishedYes

Publication series

SeriesLecture Notes in Computer Science
Volume10606
ISSN0302-9743

Fingerprint

Dive into the research topics of 'How to Efficiently Build a Front-End Tool for UPPAAL: A Model-Driven Approach'. Together they form a unique fingerprint.

Cite this