@inproceedings{KaufmannKPSW14-sdmerge,
author = {Petra Kaufmann and Martin Kronegger and Andreas Pfandler and Martina Seidl and Magdalena Widl},
title = {A SAT-Based Debugging Tool for State Machines and Sequence Diagrams},
booktitle = {Proc.\ SLE 2014},
editor = {Beno{\^{\i}}t Combemale and David J. Pearce and Olivier Barais and Jurgen J. Vinju},
series = {LNCS},
publisher = {Springer},
year = {2014},
note = {Best Paper Award},
pages = {21--40},
abstract = {An effective way to model message exchange in complex settings is to use UML sequence diagrams in combination with state machine diagrams. A natural question that arises in this context is whether these two views are consistent, i.e., whether a desired or forbidden scenario modeled in the sequence diagram can be or cannot be executed by the state machines. In case of an inconsistency, a concrete communication trace of the state machines can give valuable information for debugging purposes on the model level. This trace either hints to a message in the sequence diagram where the communication between the state machines fails, or describes a concrete forbidden communication trace between the state machines. To detect and explain such inconsistencies, we propose a novel SAT-based formalization which can be solved automatically by an off-the-shelf SAT solver. To this end, we present the formal and technical foundations needed for the SAT-encoding, and an implementation inside the Eclipse Modeling Framework (EMF). We evaluate the effectiveness of our approach using grammar-based fuzzing.}
}