SANER 2017
2017 IEEE 24th International Conference on Software Analysis, Evolution, and Reengineering (SANER)
Powered by
Conference Publishing Consulting

2017 IEEE 24th International Conference on Software Analysis, Evolution, and Reengineering (SANER), February 20-24, 2017, Klagenfurt, Austria

SANER 2017 – Proceedings

Contents - Abstracts - Authors

Frontmatter

Title Page
Message from the Chairs
Info
Committees
Sponsors and Supporters

Keynote

UNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware (Keynote)
Engin Kirda
(Northeastern University, USA)

Main Research

MSR and Open Source
Wed, Feb 22, 11:00 - 12:30

An Empirical Comparison of Dependency Issues in OSS Packaging Ecosystems
Alexandre Decan, Tom Mens, and Maëlick Claes
(University of Mons, Belgium)
Detecting Similar Repositories on GitHub
Yun Zhang, David Lo, Pavneet Singh Kochhar, Xin Xia, Quanlai Li, and Jianling Sun
(Zhejiang University, China; Singapore Management University, Singapore; University of California at Berkeley, USA)
Info
Code of Conduct in Open Source Projects
Parastou Tourani, Bram Adams, and Alexander Serebrenik
(Polytechnique Montréal, Canada; Eindhoven University of Technology, Netherlands)
Socio-Technical Evolution of the Ruby Ecosystem in GitHub
Eleni Constantinou and Tom Mens
(University of Mons, Belgium)
Info

Features and Knowledge
Wed, Feb 22, 14:00 - 15:30

StiCProb: A Novel Feature Mining Approach using Conditional Probability
Yutian Tang and Hareton Leung
(Hong Kong Polytechnic University, China)
Info
HDSKG: Harvesting Domain Specific Knowledge Graph from Content of Webpages
Xuejiao Zhao, Zhenchang Xing, Muhammad Ashad Kabir, Naoya Sawada, Jing Li, and Shang-Wei Lin
(Nanyang Technological University, Singapore; Australian National University, Australia; Charles Sturt University, Australia; NTT, Japan)
Info
Analyzing Closeness of Code Dependencies for Improving IR-Based Traceability Recovery
Hongyu Kuang, Jia Nie, Hao Hu, Patrick Rempel, Jian Lü, Alexander Egyed, and Patrick Mäder
(Nanjing University, China; JKU Linz, Austria; TU Ilmenau, Germany)
STRICT: Information Retrieval Based Search Term Identification for Concept Location
Mohammad Masudur Rahman and Chanchal K. Roy
(University of Saskatchewan, Canada)
Info

Apps and Energy
Wed, Feb 22, 16:00 - 17:10

Analyzing Reviews and Code of Mobile Apps for Better Release Planning
Adelina Ciurumelea, Andreas Schaufelbühl, Sebastiano Panichella, and Harald C. Gall
(University of Zurich, Switzerland)
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
Dario Di Nucci, Fabio Palomba, Antonio Prota, Annibale Panichella, Andy Zaidman, and Andrea De Lucia
(University of Salerno, Italy; Delft University of Technology, Netherlands; University of Luxembourg, Luxembourg)
Video Info
Investigating the Energy Impact of Android Smells
Antonin Carette, Mehdi Adel Ait Younes, Geoffrey Hecht, Naouel Moha, and Romain Rouvoy
(Université du Québec à Montréal, Canada; Inria, France; University of Lille, France; IUF, France)

Software and Model Analysis
Wed, Feb 22, 16:00 - 17:10

Automated Generation of Consistency-Achieving Model Editors
Patrick Neubauer, Robert Bill, Tanja Mayerhofer, and Manuel Wimmer
(Vienna University of Technology, Austria)
Info
Historical and Impact Analysis of API Breaking Changes: A Large-Scale Study
Laerte Xavier, Aline Brito, Andre Hora, and Marco Tulio Valente
(Federal University of Minas Gerais, Brazil)
Reducing Redundancies in Multi-revision Code Analysis
Carol V. Alexandru, Sebastiano Panichella, and Harald C. Gall
(University of Zurich, Switzerland)

Code and Data Transformations
Thu, Feb 23, 11:00 - 12:30

Recommending Source Code Locations for System Specific Transformations
Gustavo Santos, Klérisson V. R. Paixão, Nicolas Anquetil, Anne Etien, Marcelo de Almeida Maia, and Stéphane Ducasse
(University of Lille, France; CNRS, France; Inria, France; Federal University of Uberlândia, Brazil)
Extracting Executable Transformations from Distilled Code Changes
Reinout Stevens and Coen De Roover
(Vrije Universiteit Brussel, Belgium)
Automatic Generation of Opaque Constants Based on the K-Clique Problem for Resilient Data Obfuscation
Roberto Tiella and Mariano Ceccato
(Fondazione Bruno Kessler, Italy)
The Dark Side of Event Sourcing: Managing Data Conversion
Michiel Overeem, Marten Spoor, and Slinger Jansen
(AFAS Software, Netherlands; Utrecht University, Netherlands)

Program Comprehension
Thu, Feb 23, 16:00 - 17:30

Automatically Generating Natural Language Descriptions for Object-Related Statement Sequences
Xiaoran Wang, Lori Pollock, and K. Vijay-Shanker
(University of Delaware, USA)
Shorter Identifier Names Take Longer to Comprehend
Johannes Hofmeister, Janet Siegmund, and Daniel V. Holt
(University of Passau, Germany; University of Heidelberg, Germany)
Info
Lexical Categories for Source Code Identifiers
Christian D. Newman, Reem S. AlSuhaibani, Michael L. Collard, and Jonathan I. Maletic
(Kent State University, USA; University of Akron, USA)
Computing Counter-Examples for Privilege Protection Losses using Security Models
Marc-André Laverdière and Ettore Merlo
(Tata Consultancy Services, Canada; Polytechnique Montréal, Canada)

Software Development Support
Fri, Feb 24, 09:00 - 10:30

Enriching In-IDE Process Information with Fine-Grained Source Code History
Sebastian Proksch, Sarah Nadi, Sven Amann, and Mira Mezini
(TU Darmstadt, Germany; University of Alberta, Canada)
Info
How to Gamify Software Engineering
Tommaso Dal Sasso, Andrea Mocci, Michele Lanza, and Ebrisa Mastrodicasa
(University of Lugano, Switzerland)
Scalable Tag Recommendation for Software Information Sites
Pingyi Zhou, Jin Liu, Zijiang Yang, and Guangyou Zhou
(Wuhan University, China; Western Michigan University, USA; Central China Normal University, China)
Stack Overflow: A Code Laundering Platform?
Le An, Ons Mlouki, Foutse Khomh, and Giuliano Antoniol
(Polytechnique Montréal, Canada)

Code Smells and Refactoring
Fri, Feb 24, 11:00 - 12:30

An Empirical Study of Code Smells in JavaScript Projects
Amir Saboury, Pooya Musavi, Foutse Khomh, and Giuliano Antoniol
(Polytechnique Montréal, Canada)
Antipatterns Causing Memory Bloat: A Case Study
Kamil Jezek and Richard Lipka
(University of West Bohemia, Czech Republic)
Variant-Preserving Refactorings for Migrating Cloned Products to a Product Line
Wolfram Fenske, Jens Meinicke, Sandro Schulze, Steffen Schulze, and Gunter Saake
(University of Magdeburg, Germany; Carnegie Mellon University, USA)
Efficient Method Extraction for Automatic Elimination of Type-3 Clones
Ran Ettinger, Shmuel Tyszberowicz, and Shay Menaia
(Ben-Gurion University of the Negev, Israel; Academic College of Tel Aviv-Yaffo, Israel)

Testing and Fault Localization
Fri, Feb 24, 14:00 - 15:30

Spreadsheet Testing in Practice
Sohon Roy, Felienne Hermans, and Arie van Deursen
(Delft University of Technology, Netherlands)
Dynamic Patch Generation for Null Pointer Exceptions using Metaprogramming
Thomas Durieux, Benoit Cornu, Lionel Seinturier, and Martin Monperrus
(University of Lille, France; Inria, France)
Improving Fault Localization for Simulink Models using Search-Based Testing and Prediction Models
Bing Liu, Lucia, Shiva Nejati, and Lionel C. Briand
(University of Luxembourg, Luxembourg)
An Empirical Investigation into the Cost-Effectiveness of Test Effort Allocation Strategies for Finding Faults
Yiyang Feng, Wanwangying Ma, Yibiao Yang, Hongmin Lu, Yuming Zhou, and Baowen Xu
(Nanjing University, China)

Early Research Achievements

Learning from and Providing Help to Developers
Wed, Feb 22, 11:00 - 12:30

What Information about Code Snippets Is Available in Different Software-Related Documents? An Exploratory Study
Preetha Chatterjee, Manziba Akanda Nishi, Kostadin Damevski, Vinay Augustine, Lori Pollock, and Nicholas A. Kraft
(University of Delaware, USA; Virginia Commonwealth University, USA; ABB Corporate Research, USA)
Harnessing Twitter to Support Serendipitous Learning of Developers
Abhishek Sharma, Yuan Tian, Agus Sulistya, David Lo, and Aiko Fallas Yamashita
(Singapore Management University, Singapore; Oslo and Akershus University College of Applied Sciences, Norway)
Why Do We Break APIs? First Answers from Developers
Laerte Xavier, Andre Hora, and Marco Tulio Valente
(Federal University of Minas Gerais, Brazil)
An Arc-Based Approach for Visualization of Code Smells
Marcel Steinbeck
(University of Bremen, Germany)
Towards Continuous Software Release Planning
David Ameller, Carles Farré, Xavier Franch, Danilo Valerio, and Antonino Cassarino
(Universitat Politècnica de Catalunya, Spain; Siemens, Austria)

Evolution of Open Source Systems
Fri, Feb 24, 09:00 - 10:30

An Exploratory Study on Library Aging by Monitoring Client Usage in a Software Ecosystem
Raula Gaikovina Kula, Daniel M. German, Takashi Ishio, Ali Ouni, and Katsuro Inoue
(Osaka University, Japan; University of Victoria, Canada; United Arab Emirates University, United Arab Emirates)
Trends on Empty Exception Handlers for Java Open Source Libraries
Ana Filipa Nogueira, José C. B. Ribeiro, and Mário A. Zenha-Rela
(University of Coimbra, Portugal; Polytechnic Institute of Leiria, Portugal)
Analyzing the Evolution of Testing Library Usage in Open Source Java Projects
Ahmed Zerouali and Tom Mens
(University of Mons, Belgium)
On the Evolution of Exception Usage in Java Projects
Haidar Osman, Andrei Chiş, Jakob Schaerer, Mohammad Ghafari, and Oscar Nierstrasz
(University of Bern, Switzerland; Feenk, Switzerland)
Statically Identifying Class Dependencies in Legacy JavaScript Systems: First Results
Leonardo Humberto Silva, Marco Tulio Valente, and Alexandre Bergel
(Federal Institute of Northern Minas Gerais, Brazil; Federal University of Minas Gerais, Brazil; University of Chile, Chile)
CodeCritics Applied to Database Schema: Challenges and First Results
Julien Delplanque, Anne Etien, Olivier Auverlot, Tom Mens, Nicolas Anquetil, and Stéphane Ducasse
(University of Mons, Belgium; University of Lille, France; Inria, France)

Patterns and Optimization
Fri, Feb 24, 14:00 - 15:30

Cloud-Based Parallel Concolic Execution
Ting Chen, Youzheng Feng, Xiapu Luo, Xiaodong Lin, and Xiaosong Zhang
(University of Electronic Science and Technology of China, China; Hong Kong Polytechnic University, China; University of Ontario Institute of Technology, Canada)
Under-Optimized Smart Contracts Devour Your Money
Ting Chen, Xiaoqi Li, Xiapu Luo, and Xiaosong Zhang
(University of Electronic Science and Technology of China, China; Hong Kong Polytechnic University, China)
Pluggable Controllers and Nano-Patterns
Yossi Gil, Ori Marcovitch, and Matteo Orrù
(Technion, Israel)
Query Construction Patterns in PHP
David Anderson and Mark Hills
(East Carolina University, USA)
Info
Supporting Schema Evolution in Schema-Less NoSQL Data Stores
Loup Meurice and Anthony Cleve
(University of Namur, Belgium)

Tool Demonstrations

Static Analysis and Refactoring
Wed, Feb 22, 14:00 - 15:30

XCore: Support for Developing Program Analysis Tools
Alexandru Ștefănică and Petru Florin Mihancea
(Politehnica University of Timișoara, Romania)
srcQL: A Syntax-Aware Query Language for Source Code
Brian Bartman, Christian D. Newman, Michael L. Collard, and Jonathan I. Maletic
(Kent State University, USA; University of Akron, USA)
UAV: Warnings from Multiple Automated Static Analysis Tools at a Glance
Tim Buckers, Clinton Cao, Michiel Doesburg, Boning Gong, Sunwei Wang, Moritz Beller, and Andy Zaidman
(Delft University of Technology, Netherlands)
Video Info
The Spartanizer: Massive Automatic Refactoring
Yossi Gil and Matteo Orrù
(Technion, Israel)
Video Info
c-JRefRec: Change-Based Identification of Move Method Refactoring Opportunities
Naoya Ujihara, Ali Ouni, Takashi Ishio, and Katsuro Inoue
(Osaka University, Japan; United Arab Emirates University, United Arab Emirates)
Lightweight Detection of Android-Specific Code Smells: The aDoctor Project
Fabio Palomba, Dario Di Nucci, Annibale Panichella, Andy Zaidman, and Andrea De Lucia
(Delft University of Technology, Netherlands; University of Salerno, Italy; University of Luxembourg, Luxembourg)
Info

Binaries and Evolution
Thu, Feb 23, 11:00 - 12:30

scat: Learning from a Single Execution of a Binary
Franck de Goër, Christopher Ferreira, and Laurent Mounier
(LIG, France; University of Grenoble, France; VERIMAG, France)
Info
dynStruct: An Automatic Reverse Engineering Tool for Structure Recovery and Memory Use Analysis
Daniel Mercier, Aziem Chawdhary, and Richard Jones
(University of Kent, UK)
InsDal: A Safe and Extensible Instrumentation Tool on Dalvik Byte-Code for Android Applications
Jierui Liu, Tianyong Wu, Xi Deng, Jun Yan, and Jian Zhang
(Institute of Software at Chinese Academy of Sciences, China; University at Chinese Academy of Sciences, China)
Video
Columbo: High Perfomance Unpacking
Jason Raber
(MalwareBytes, USA)
Video
Hindsight: Revealing the Evolution of Dependencies to Developers
George Ganea
(Politehnica University of Timișoara, Romania)
Info
Replan: A Release Planning Tool
David Ameller, Carles Farré, Xavier Franch, Antonino Cassarino, Danilo Valerio, and Valentin Elvassore
(Universitat Politècnica de Catalunya, Spain; Siemens, Austria)
Video

Industrial Research
Fri, Feb 24, 11:00 - 12:30

Bringing Back-in-Time Debugging Down to the Database
Arian Treffer, Michael Perscheid, and Matthias Uflacker
(HPI, Germany; SAP, Germany)
Performance Tuning for Automotive Software Fault Prediction
Harald Altinger, Steffen Herbold, Friederike Schneemann, Jens Grabowski, and Franz Wotawa
(Audi Electronics Venture, Germany; University of Göttingen, Germany; Graz University of Technology, Austria)
Business Process Recovery Based on System Log and Information of Organizational Structure
Ryota Mibe, Tadashi Tanaka, Takashi Kobayashi, and Shingo Kobayashi
(Hitachi, Japan; Tokyo Institute of Technology, Japan; Japan EXpert Clone, Japan)
Multi-language Re-documentation to Support a COBOL to Java Migration Project
Bernhard Dorninger, Michael Moser, and Josef Pichler
(Software Competence Center Hagenberg, Austria)
Proactive Reviews of Textual Requirements
Vard Antinyan and Miroslaw Staron
(University of Gothenburg, Sweden)
Data Access Visualization for Legacy Application Maintenance
Keisuke Yano and Akihiko Matsuo
(Fujitsu Labs, Japan)

Posters