ECOOP 2024
Mon 16 - Fri 20 September 2024 Vienna, Austria
co-located with ISSTA/ECOOP 2024
Tue 17 Sep 2024 14:00 - 14:15 at EI 7 - Chair(s): Jonathan Aldrich, Guido Salvaneschi

This paper presents a novel lifted repair algorithm for program families (Software Product Lines - SPLs) based on code mutations. The inputs of our algorithm are an erroneous SPL and a specification given in the form of assertions. We use variability encoding to transform the given SPL into a single program, called family simulator, which is translated into a set of SMT formulas whose conjunction is satisfiable iff the simulator (i.e., the input SPL) violates an assertion. We use a predefined set of mutations applied to feature and program expressions of the given SPL. The algorithm repeatedly mutates the erroneous family simulator and checks if it becomes (bounded) correct. Since mutating an expression corresponds to mutating a formula in the set of SMT formulas encoding the family simulator, the search for a correct mutant is reduced to searching an unsatisfiable set of SMT formulas. To efficiently explore the huge state space of mutants, we call SAT and SMT solvers in an incremental way. The outputs of our algorithm are all minimal repairs in the form of minimal number of (feature and program) expression replacements such that the repaired SPL is (bounded) correct with respect to a given set of assertions.

We have implemented our algorithm in a prototype tool and evaluated it on a set of #ifdef-based C programs (i.e., annotative SPLs). The experimental results show that our approach is able to successfully repair various interesting SPLs.

Tue 17 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

13:30 - 15:00
Technical Papers at EI 7
Chair(s): Jonathan Aldrich Carnegie Mellon University, Guido Salvaneschi University of St. Gallen
13:30
30m
Awards
ECOOP Awards
Technical Papers
Guido Salvaneschi University of St. Gallen, Jonathan Aldrich Carnegie Mellon University
14:00
15m
Talk
Mutation-based Lifted Repair of Software Product Lines
Technical Papers
Aleksandar S. Dimovski Mother Teresa University, Skopje
14:15
15m
Talk
Refinements for Multiparty Message-Passing Protocols: Specification-agnostic theory and implementation
Technical Papers
Martin Vassor Université de Lorraine; CNRS; Inria; LORIA, Nobuko Yoshida University of Oxford
14:30
15m
Talk
CtChecker: a Precise, Sound and Efficient Static Analysis for Constant-Time Programming
Technical Papers
Quan Zhou Penn State University, Dang Sixuan Duke University, Danfeng Zhang Duke University
14:45
15m
Talk
The Fault in our Stars: Designing Reproducible Large-scale Code Analysis Experiments
Technical Papers
Petr Maj Czech Technical University, Stefanie Muroya Lei Institute of Science and Technology in Austria, Konrad Siek Czech Technical University in Prague, Luca Di Grazia University of Stuttgart, Jan Vitek Northeastern University

Information for Participants
Tue 17 Sep 2024 13:30 - 15:00 at EI 7 - Chair(s): Jonathan Aldrich, Guido Salvaneschi
Info for room EI 7:

Map: https://tuw-maps.tuwien.ac.at/?q=CDEG13

Room tech: https://raumkatalog.tiss.tuwien.ac.at/room/15417