Nous avons le plaisir de vous annoncer la tenue de la 4ème journée d'échange de la communauté "Génie Logiciel Empirique", le mercredi 12 avril 2017. La journée se tiendra dans les locaux de Mozilla à Paris, que nous remercions chaleureusement, ce qui est l'occasion pour les communautés académiques et open-source d'apprendre à mieux se connaître.
--Jean-Rémy Falleri et Martin Monperrus
Animateurs du groupe GLE du GDR GPL
- 9:00: Accueil
- 9:30: Introduction & Tour de Table [video]
- 10:30 T. Durieux (CRISTAL) sur la génération de patches en production (ICSE-NIER 2017) [slides] [video (1GO)]
Résumé: "I will present a new automatic patch generation technique that generates patches directly in production. Our idea is to generate patches on-the-fly based on automated analysis of the failure context. By doing this in production, the repair process has complete access to the system state at the point of failure. In order to evaluate the generated patches we propose to perform live regression testing of the generated patches directly on the production traffic, by feeding a sandboxed version of the application with a copy of the production traffic, the ``shadow traffic''."
- 11:00 Pause
Résumé: "User interfaces (UI) are complex pieces of software that pervade our daily lives. Yet, there is very limited support to ensure the code quality of these pieces of software. Finding bugs and design smells in UI code is not a trivial task: object-oriented validation and maintenance techniques can hardly be seamlessly reused; UI code is intertwined with the rest of the code. In this talk, we detail the presence of design smells in UI code and demonstrate that specific code analyses are then necessary."
- 12:00 Buffet
- 13:00 Marche digestive
- 14:00 J. Martinez et T. Ziadi (LIP6) sur l’analyse d’applications mobile pour identifier les variantes similaires (SPLC 2016)
Résumé: "The myriads of smart phones around the globe gave rise to a vast proliferation of mobile applications. These applications target an increasing number of user profiles and tasks. In this context, Android is a leading technology for their development and on-line markets are the main means for their distribution. In this paper we motivate, from two perspectives, the mining of these markets with the objective to identify families of apps variants in the wild. The first perspective is related to research activities where building realistic case studies for evaluating extractive SPL adoption techniques are needed. The second is related to a large-scale, world-wide and time-aware study of reuse practice in an industry which is now flourishing among all others within the software engineering community. This study is relevant to assess potential for SPLE practices adoption. We present initial implementations of the mining process and we discuss analyses of variant families."
- 14:30 JF Falleri (LABRI) on Documentation Reuse: Hot or Not? An Empirical Study [video]
Résumé: "Having available a high quality documentation is critical for software projects. This is why documentation tools such as Javadoc are so popular. As for code, documentation should be reused when possible to increase developer productivity and simplify maintenance. In this paper, we perform an empirical study of duplications in JavaDoc documentation on a corpus of seven famous Java APIs. Our results show that copy-pastes of JavaDoc documentation tags are abundant in our corpus. We also show that these copy-pastes are caused by four different kinds of relations in the underlying source code. In addition, we show that popular documentation tools do not provide any reuse mechanism to cope with these relations. Finally, we make a proposal for a simple but efficient automatic reuse mechanism."
- 15:00 Pause café
Résumé: "We propose Facoy, a novel, static, and effective approach for finding semantic code clones. Facoy automatically collects natural language terms that thoroughly describe the functionality implemented by a code fragment. Then, it searches for other code fragments which could be described similarly. We have implemented a code-to-code search engine for finding similar code fragments in a super-repository such as GitHub."
Résumé: "Mutation testing aims to verify the ability of a test suite to find possible errors in the program under test. Traditional mutation approaches do not scale well in larger project. A recent paper proposes an alternative way of mutation that could overcome this issue. The talk will describe the implementation of this technique as an extension for PIT, a state of the art tool for mutation testing. Preliminary results on real-life projects will be presented as well."
- 16:30 Wrap-up
- 17:00 Fin de l'atelier