Programme
Session 1: Source Code Transformation (OPL)
Papers:
Spoon: A Library for Implementing Analyses and Transformations of Java Source Code
Static Analysis to Support the Evolution of Exception Structure in Object-Oriented Systems, 2003
Operating system protection through program evolution, 1993
Projects:
E1: Extraction of a dependency graph in Spoon similar to DependencyFinder.
E2: Implement a migrator from java.util.collections to Google Guava
E3: Implement a migrator from java.util.collections to Apache Commons Collection
H1: Spoon model on the fly: bridge a Java decompiler (e.g. Soot Dava) and Spoon so as to get a source code model at runtime
H2: Selective emulation for Java with BeanShell
A1: Implement a visitor combinator on top of Spoon
A2: Implement Robillard's exception analysis
A3: Implement some of Cohen's transformations in Spoon
Session 2: Crash Analysis (IDL)
Papers:
P1: Crashlocator: Locating crashing faults based on crash stacks Data on Mozilla Crash Reporter?
P2: ReBucket: A Method for Clustering Duplicate Crash Reports Based on Call Stack Similarity
P3: Crash graphs: An aggregated view of multiple crashes to improve crash triage
P4: Automatically Identifying Known Software Problems
P5: Performance debugging in the large via mining millions of stack traces
Projects:
T1: Develop core algorithm of P1
T2: Develop core algorithm of P2
T3: Develop core algorithm of P3
T4: Develop core algorithm of P4
T5: Develop core algorithm of P5
T6: Apply Java stack trace mining to a Stackoverflow dump and perform interesting statistics (code on Moodle)
T7: Develop new stack trace recognizers for your language of choice and apply them to a Stackoverflow dump, perform interesting statistics.
Session 3: Test Data Generation (OPL)
Papers:
P1: Finding bugs with a constraint solver
P2: Korat: Automated testing based on Java predicates
P3: Hierarchical GUI test case generation using automated planning
Projects:
Project 1: Implement an example following P1
Project 2: Implement an example following P2
Project 3: Implement a simple GUI scenario generator (P3)
Project 4: Generate a map or bot generator for your favorite game (Alloy model + data generator from Alloy instances).
Session 4: Thème libre
Rendus exemplaires de 2014
Thème 1 (Analyse et transformation de code source):
Round-Trip Modeler for Java using Spoon (Célia Cacciatore, Jonathan Geoffroy)
Implement some of Cohen's transformations in Spoon (Mathieu Schepens, Thomas Vincent)
Thème 2 (Analyse de crashes):
Extraction of Stack Traces from StackOverflow (Mathieu Schepens, Thomas Vincent)
Regroupement automatique de problèmes logiciels similaires (Jérémy Bossut, Omar Chahbouni)
Thème 3 (Génération de données de test complexes):
Génération de tests JUnit avec Alloy (Valentin Lefils, Quentin Marrecau)
Génération automatique d'instances Java (Dorian Burihabwa, Thomas Durieux)
Generating and solving “Ricochet Robot” games with Alloy (Mathieu Schepens, Thomas Vincent)
Rendus libres: