Lecture Notes in Computer Science 9033 Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen Editorial Board David Hutchison, UK Josef Kittler, UK John C. Mitchell, USA Bernhard Steffen, Germany Demetri Terzopoulos, USA Gerhard Weikum, Germany Takeo Kanade, USA Jon M. Kleinberg, USA Friedemann Mattern, Switzerland Moni Naor, Israel C. Pandu Rangan, India Doug Tygar, USA Advanced Research in Computing and Software Science Subline of Lecture Notes in Computer Science Subline Series Editors Giorgio Ausiello, University of Rome La Sapienza, Italy Vladimiro Sassone, University of Southampton, UK Subline Advisory Board Susanne Albers, TU Munich, Germany Benjamin C. Pierce, University of Pennsylvania, USA Bernhard Steffen, University of Dortmund, Germany Deng Xiaotie, City University of Hong Kong Jeannette M.Wing, Microsoft Research, Redmond, WA, USA
More information about this series at http://www.springer.com/series/7407
Alexander Egyed Ina Schaefer (Eds.) Fundamental Approaches to Software Engineering 18th International Conference, FASE 2015 Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015 London, UK, April 11 18, 2015 Proceedings ABC
Editors Alexander Egyed Johannes Kepler University Linz Austria Ina Schaefer Technische Universität Braunschweig Braunschweig Germany ISSN 0302-9743 ISSN 1611-3349 (electronic) Lecture Notes in Computer Science ISBN 978-3-662-46674-2 ISBN 978-3-662-46675-9 (ebook) DOI 10.1007/978-3-662-46675-9 Library of Congress Control Number: 2015934132 LNCS Sublibrary: SL1 Theoretical Computer Science and General Issues Springer Heidelberg New York Dordrecht London c Springer-Verlag Berlin Heidelberg 2015 This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made. Printed on acid-free paper Springer-Verlag GmbH Berlin Heidelberg is part of Springer Science+Business Media (www.springer.com)
Foreword ETAPS 2015 was the 18th instance of the European Joint Conferences on Theory and Practice of Software. ETAPS is an annual federated conference that was established in 1998, and this year consisted of six constituting conferences (CC, ESOP, FASE, FoSSaCS, TACAS, and POST) including five invited speakers and two tutorial speakers. Prior to and after the main conference, numerous satellite workshops took place and attracted many researchers from all over the world. ETAPS is a confederation of several conferences, each with its own Program Committee and its own Steering Committee (if any). The conferences cover various aspects of software systems, ranging from theoretical foundations to programming language developments, compiler advancements, analysis tools, formal approaches to software engineering, and security. Organizing these conferences into a coherent, highly synchronized conference program enables the participation in an exciting event, having the possibility to meet many researchers working in different directions in the field, and to easily attend talks at different conferences. The six main conferences together received 544 submissions this year, 152 of which were accepted (including 10 tool demonstration papers), yielding an overall acceptance rate of 27.9%. I thank all authors for their interest in ETAPS, all reviewers for the peerreviewing process, the PC members for their involvement, and in particular the PC Cochairs for running this entire intensive process. Last but not least, my congratulations to all authors of the accepted papers! ETAPS 2015 was greatly enriched by the invited talks by Daniel Licata (Wesleyan University, USA) and Catuscia Palamidessi (InriaSaclay and LIX, France), both unifying speakers, and the conference-specific invited speakers [CC] Keshav Pingali (University of Texas, USA), [FoSSaCS] Frank Pfenning (Carnegie Mellon University, USA), and [TACAS] Wang Yi (Uppsala University, Sweden). Invited tutorials were provided by Daniel Bernstein (Eindhoven University of Technology, the Netherlands and the University of Illinois at Chicago, USA), and Florent Kirchner (CEA, the Alternative Energies and Atomic Energy Commission, France). My sincere thanks to all these speakers for their inspiring talks! ETAPS 2015 took place in the capital of England, the largest metropolitan area in the UK and the largest urban zone in the European Union by most measures. ETAPS 2015 was organized by the Queen Mary University of London in cooperation with the following associations and societies: ETAPS e.v., EATCS (European Association for Theoretical Computer Science), EAPLS (European Association for Programming Languages and Systems), and EASST (European Association of Software Science and Technology). It was supported by the following sponsors: Semmle, Winton, Facebook, Microsoft Research, and Springer-Verlag.
VI Foreword The organization team comprised: General Chairs: Pasquale Malacaria and Nikos Tzevelekos Workshops Chair: Paulo Oliva Publicity chairs: Michael Tautschnig and Greta Yorsh Members: Dino Distefano, Edmund Robinson, and Mehrnoosh Sadrzadeh The overall planning for ETAPS is the responsibility of the Steering Committee. The ETAPS Steering Committee consists of an Executive Board (EB) and representatives of the individual ETAPS conferences, as well as representatives of EATCS, EAPLS, and EASST. The Executive Board comprises Gilles Barthe (satellite events, Madrid), Holger Hermanns (Saarbrücken), Joost-Pieter Katoen (Chair, Aachen and Twente), Gerald Lüttgen (Treasurer, Bamberg), and Tarmo Uustalu (publicity, Tallinn). Other members of the Steering Committee are: Christel Baier (Dresden), David Basin (Zurich), Giuseppe Castagna (Paris), Marsha Chechik (Toronto), Alexander Egyed (Linz), Riccardo Focardi (Venice), Björn Franke (Edinburgh), Jan Friso Groote (Eindhoven), Reiko Heckel (Leicester), Bart Jacobs (Nijmegen), Paul Klint (Amsterdam), Jens Knoop (Vienna), Christof Löding (Aachen), Ina Schäfer (Braunschweig), Pasquale Malacaria (London), Tiziana Margaria (Limerick), Andrew Myers (Boston), Catuscia Palamidessi (Paris), Frank Piessens (Leuven), Andrew Pitts (Cambridge), Jean-Francois Raskin (Brussels), Don Sannella (Edinburgh), Vladimiro Sassone (Southampton), Perdita Stevens (Edinburgh), Gabriele Taentzer (Marburg), Peter Thiemann (Freiburg), Cesare Tinelli (Iowa City), Luca Vigano (London), Jan Vitek (Boston), Igor Walukiewicz (Bordeaux), Andrzej Wąsowski (Copenhagen), and Lenore Zuck (Chicago). I sincerely thank all ETAPS SC members for all their hard work to make the 18th edition of ETAPS a success. Moreover, thanks to all speakers, attendants, organizers of the satellite workshops, and to Springer for their support. Finally, many thanks to Pasquale and Nikos and their local organization team for all their efforts enabling ETAPS to take place in London! January 2015 Joost-Pieter Katoen
Preface This volume contains the proceedings of FASE 2015, the 18th International Conferences on Fundamental Approaches to Software Engineering, which was held in London, UK, in April 2015 as part of the annual European Joint Conferences on Theory and Practice of Software (ETAPS). As with previous editions of FASE, this year s papers presented foundational contributions to a broad range of topics in software engineering, including software adaptation, fault localization, model-driven engineering, synthesis, testing, transformation, and verification and validation. This year we received 80 submissions of which 23 were accepted by the Program Committee for presentation at the conference, constituting an acceptance rate of approximately 28%. Each paper received a minimum of three reviews; acceptance decisions were reached through online discussions among the members of the Program Committee. Many persons contributed to the success of FASE 2015. The authors of all submitted papers represent the core of such a conference, and we believe that the accepted papers make significant advances in the foundations of software engineering. However, the program could not have been assembled without the great effort of the Program Committee members and their sub-reviewers in critically assessing and discussing the papers: thanks a lot for your active participation! We also express our full gratitude to the Additional Reviewers coming to our aid at the last minute to provide additional insights for papers under dispute, for producing high-quality reviews in a very short time. Finally, we thank Gabriele Taentzer, the FASE Steering Committee Chair, for her timely and accurate responses to our queries about the whole process management, and the ETAPS Steering and Organizing Committees for their coordination work. We sincerely hope you enjoy these proceedings! January 2015 Ina Schaefer Alexander Egyed
Organization Program Committee David Benavides Marsha Chechik Vittorio Cortellessa Krzysztof Czarnecki Alexander Egyed José Luiz Fiadeiro Bernd Fischer Dimitra Giannakopoulou Stefania Gnesi John Grundy Mark Harman Reiko Heckel Valerie Issarny Einar Broch Johnsen Antónia Lopes Henry Muccini John Penix Arend Rensink Julia Rubin Ina Schaefer Andy Schürr Bran Selic Perdita Stevens Gabriele Taentzer Tetsuo Tamai Sebastian Uchitel Daniel Varro Andrzej Wasowski Martin Wirsing Pamela Zave University of Seville, Spain University of Toronto, Canada University of L Aquila, Italy University of Waterloo, Canada Johannes Kepler University Linz, Austria Royal Holloway, University of London, UK Stellenbosch University, South Africa NASA Ames Research Center, USA Istituto di Scienza e Tecnologie dell Informazione A. Faedo", Italy Swinburne University of Technology, Australia University College London, UK University of Leicester, UK Inria, France University of Oslo, Norway University of Lisbon, Portugal University of L Aquila, Italy Google Inc., USA University of Twente, The Netherlands IBM Research, Israel Technische Universität Braunschweig, Germany Technische Universität Darmstadt, Germany Malina Software Corp., Canada University of Edinburgh, UK Philipps-Universität Marburg, Germany University of Tokyo, Japan University of Buenos Aires, Argentina and Imperial College London, UK Budapest University of Technology and Economics, Hungary IT University of Copenhagen, Denmark Ludwig-Maximilians-Universität München, Germany AT&T Laboratories Research, USA
X Organization Additional Reviewers Abal, Iago Al-Sibahi, Ahmad Salim Albarghouthi, Aws Andriescu, Emil Anjorin, Anthony Antkiewicz, Michal Bae, Kyungmin Bagheri, Hamid Belzner, Lenz Bergmann, Gábor Boronat, Artur Bourke, Timothy Bubel, Richard Busch, Marianne Bürdek, Johannes Corradini, Andrea Cunha, Alcino Deckwerth, Frederik Dimovski, Aleksandar S. Diskin, Zinovy Famelis, Michalis Fantechi, Alessandro Ferrari, Alessio Franzago, Mirco Galindo, José A. Gotlieb, Arnaud Guo, Jianmei Hegedüs, Ábel Heim, Robert Heindel, Tobias Horváth, Ákos Howar, Falk Iosif-Lazar, Alexandru Florin Klarl, Annabelle Knapp, Alexander Kroiß, Christian Kulcsár, Géza Laarman, Alfons Leblebici, Erhan Legay, Axel Li, Yi Lochau, Malte Lucio, Levi Löwe, Michael Malavolta, Ivano Marques, Eduardo R.B. Martins, Francisco Mazzanti, Franco Mehlitz, Peter Mennicke, Stephan Mukkamala, Raghava Rao Olveczky, Peter Petke, Justyna Petrocchi, Marinella Pun, Ka I Radwan, Marwan Re, Barbara Ribeiro, Leila Ridge, Tom Ross, Jordan Rutle, Adrian Salay, Rick Saller, Karsten Santos, André Schlatte, Rudolf Semeráth, Oszkár Senni, Valerio Stanciulescu, Stefan Stevens, Perdita Stolz, Volker Strüber, Daniel Störrle, Harald Tapia Tarifa, Silvia Lizeth Ter Beek, Maurice H. Vakili, Amirhossein Varro, Gergely Watson, Bruce Weckesser, Markus Yu, Ingrid Zulkoski, Ed
Contents Models and Synthesis An Institution for Simple UML State Machines... 3 Alexander Knapp, Till Mossakowski, Markus Roggenbach, and Martin Glauer Map-Based Transparent Persistence for Very Large Models... 19 Abel Gómez, Massimo Tisi, Gerson Sunyé, and Jordi Cabot Composing Message Translators and Inferring Their Data Types Using Tree Automata... 35 Emil Andriescu, Thierry Martinez, and Valérie Issarny On-the-Fly Synthesis of Scarcely Synchronizing Distributed Controllers from Scenario-Based Specifications... 51 Christian Brenner, Joel Greenyer, and Wilhelm Schäfer Testing and Fault Localization BPEL Integration Testing... 69 Seema Jehan, Ingo Pill, and Franz Wotawa Facilitating Reuse in Multi-goal Test-Suite Generation for Software Product Lines... 84 Johannes Bürdek, Malte Lochau, Stefan Bauregger, Andreas Holzer, Alexander von Rhein, Sven Apel, and Dirk Beyer Just Test What You Cannot Verify!... 100 Mike Czech, Marie-Christine Jakobs, and Heike Wehrheim Evaluation of Measures for Statistical Fault Localisation and an Optimising Scheme... 115 David Landsberg, Hana Chockler, Daniel Kroening, and Matt Lewis Modeling A Generalized Formal Framework for Partial Modeling... 133 Rick Salay and Marsha Chechik Performance-Based Software Model Refactoring in Fuzzy Contexts... 149 Davide Arcelli, Vittorio Cortellessa, and Catia Trubiani
XII Contents Analyzing Conflicts and Dependencies of Rule-Based Transformations in Henshin... 165 Kristopher Born, Thorsten Arendt, Florian Heß, and Gabriele Taentzer Verification Translation Validation for Clock Transformations in a Synchronous Compiler... 171 Van Chan Ngo, Jean-Pierre Talpin, Thierry Gautier, and Paul Le Guernic Symbolic Detection of Assertion Dependencies for Bounded Model Checking... 186 Grigory Fedyukovich, Andrea Callia D Iddio, Antti E.J. Hyvärinen, and Natasha Sharygina Verification of Loop Parallelisations... 202 Stefan C.C. Blom, Saeed Darabi, and Marieke Huisman Model-Based Formal Reasoning about Data-Management Applications... 218 Carolina Dania and Manuel Clavel Modeling and Adaptation Self-adaptive Software with Decentralised Control Loops... 235 Radu Calinescu, Simos Gerasimou, and Alec Banks Model-Based Adaptation of Software Communicating via FIFO Buffers... 252 Carlos Canal and Gwen Salaün Lazy TSO Reachability... 267 Ahmed Bouajjani, Georgel Calin, Egor Derevenetc, and Roland Meyer A Variability-Based Approach to Reusable and Efficient Model Transformations... 283 Daniel Strüber, Julia Rubin, Marsha Chechik, and Gabriele Taentzer Applications Exploring Scenario Exploration... 301 Nuno Macedo, Alcino Cunha, and Tiago Guimarães
Contents XIII Data-Oriented Characterization of Application-Level Energy Optimization... 316 Kenan Liu, Gustavo Pinto, and Yu David Liu Resource Specification for Prototyping Human-Intensive Systems... 332 Seung Yeob Shin, Yuriy Brun, Leon J. Osterweil, Hari Balasubramanian, and Philip L. Henneman The Prophecy of Undo... 347 Martín Abadi Author Index... 363