When Does a Refactoring Induce Bugs? An Empirical Study

The recipient of the best paper award, so expectations are high 🙂 The authors mined 63 releases of 3 systems. With RefFinder they were able to detect 15.000 refactorings of 52 types. They manually validated all those refactorings (!) and this way 12,922 remained. Furthermore, authors analyzed post-release bugs by looking at change logs, combined Read more about When Does a Refactoring Induce Bugs? An Empirical Study[…]

Cross-Language Code Analysis and Refactoring

Many software systems are built with different languages, that need to work together. For instance a different programming language for UI and back-end, a system that uses XML for configuration or a system using a database, where class names have to match table names. These links are often implicit and this leads to problems. The Read more about Cross-Language Code Analysis and Refactoring[…]

SCAM tool session

In this session block, 5 presenters will explain tools they made. It is not a tool demo session: so no live demos and the presenters submitted accompanying papers of 6 pages. Aucsmith-Like Obfuscation of Java Bytecode Dynamic obfuscation is a technique that produces self-modifying programs. Andrea Zambon builds upon the work of Aucsmith, but apply Read more about SCAM tool session[…]

Evolution of Near-Miss Clones

Final talk of the first day of #scam2012 by Saman Bazrafshan, who will talk about near-miss clones. He studied the evolution of near-miss clones to investigate how they change. This is useful, since irregularities in clone evolution can help to distinguish between potentially harmful clones and the less interesting ones. Saman builds upon the work of Nils Read more about Evolution of Near-Miss Clones[…]

Folding Repeated Instructions for Improving Token-Based Code Clone Detection

More SCAM talks! This session block (before the secret social event) is about cloning. Hiroaki Murakami starts with explaining the problems with clone detection. One of them is overlapped code clones, as shown in this example. This leads to false positive, since in this case 5 clone pairs are found, instead of 1. Hiroaki’s aim is Read more about Folding Repeated Instructions for Improving Token-Based Code Clone Detection[…]