TECHNICAL RESEARCH

Accepted and Invited Technical Research Papers

Accepted Research Papers

A General Framework for Dynamic Stub Injection Maria Christakis, Patrick Emmisberger, Patrice Godefroid and Peter Müller
A Guided Genetic Algorithm for Automated Crash Reproduction Mozhan Soltani, Annibale Panichella and Arie Van Deursen
A SEALANT for Inter-App Security Holes in Android Youn Kyu Lee, Jae Young Bang, Gholamreza Safi, Arman Shahbazian, Yixue Zhao and Nenad Medvidovic
A Test-Suite Diagnosability Metric for Spectrum-based Fault Localization Approaches Alexandre Perez, Rui Abreu and Arie van Deursen
Adaptive Coverage and Operational Profile-based Testing for Reliability Improvement Antonia Bertolino, Breno Miranda, Roberto Pietrantuono and Stefano Russo
Adaptive Unpacking of Android Apps Lei Xue, Xiapu Luo, Le Yu, Shuai Wang and Dinghao Wu
An Efficient, Robust, and Scalable Approach for Analyzing Interacting Android Apps Yutaka Tsutano, Shakthi Bachala, Witawas Srisa-An, Gregg Rothermel and Jackson Dinh
An Empirical Study on Mutation, Statement and Branch Coverage Fault Revelation that Avoids the Unreliable Clean Program Assumption Titcheu Chekam Thierry, Mike Papadakis, Yves Le Traon and Mark Harman
An Unsupervised Approach for Discovering Relevant Tutorial Fragments for APIs He Jiang, Jingxuan Zhang, Zhilei Ren and Tao Zhang
Analysis and Testing of Notifications in Android Wear Applications Hailong Zhang and Atanas Rountev
Analyzing APIs Documentation and Code to Detect Directive Defects Yu Zhou, Ruihang Gu, Taolue Chen, Zhiqiu Huang, Sebastiano Panichella and Harald Gall
Automated Refactoring of Legacy Java Software to Default Methods Raffi Khatchadourian and Hidehiko Masuhara
Automated Transplantation and Differential Testing for Clones Tianyi Zhang and Miryung Kim
Automatic Input Generation for Mobile Testing Peng Liu, Xiangyu Zhang, Marco Pistoia, Yunhui Zheng, Manoel Marques and Lingfei Zeng
Balancing Soundness and Efficiency for Practical Testing of Configurable Systems Sabrina Souto, Marcelo d'Amorim and Rohit Gheyi
Becoming Agile: A Grounded Theory of Agile Transitions in Practice Rashina Hoda and James Noble
Can Latent Topics in Source Code Predict Missing Architectural Tactics? Raghuram Gopalakrishnan, Palak Sharma, Mehdi Mirakhorli and Matthias Galster
Challenges for Static Analysis of Java Reflection -- Literature Review and Empirical Study Davy Landman, Alexander Serebrenik and Jurgen Vinju
Characterizing and Detecting Anti-patterns in the Logging Code Boyuan Chen and Zhen Ming Jack Jiang
Classifying Developers into Core and Peripheral: An Empirical Study on Count and Network Metrics Mitchell Joblin, Sven Apel, Claus Hunsen and Wolfgang Mauerer
Clone Refactoring with Lambda Expressions Nikolaos Tsantalis, Davood Mazinanian and Shahriar Rostami Dovom
Code Defenders: Crowdsourcing Effective Tests and Subtle Mutants with a Mutation Testing Game José Miguel Rojas, Thomas White, Benjamin Clegg and Gordon Fraser
Decoding the representation of code in the brain: An fMRI study of code review and expertise Benjamin Floyd, Tyler Santander and Westley Weimer
Detecting User Story Information in Developer-Client Conversations to Generate Extractive Summaries Paige Rodeghero, Siyuan Jiang, Ameer Armaly and Collin McMillan
Do Developers Read Compiler Error Messages? Titus Barik, Justin Smith, Kevin Lubick, Elisabeth Holmes, Jing Feng, Emerson Murphy-Hill and Chris Parnin
Efficient Detection of Thread Safety Violations via Coverage-Guided Generation of Concurrent Tests Ankit Choudhary, Shan Lu and Michael Pradel
Evaluating and Improving Fault Localization Spencer Pearson, José Campos, René Just, Gordon Fraser, Rui Abreu, Michael D. Ernst, Deric Pang and Benjamin Keller
Exploring API Embedding for API Usages and Applications Trong Nguyen, Anh Nguyen, Hung Phan and Tien Nguyen
Feedback-Based Debugging Yun Lin, Jun Sun, Yinxing Xue, Yang Liu and Jinsong Dong
From Diversity by Numbers to Diversity as Process: Supporting Inclusiveness in Software Teams with Brainstorming Anna Filippova, Erik Trainer and James Herbsleb
Fuzzy Fine-grained Code-history Analysis Francisco Servant and James Jones
Glacier: Transitive Class Immutability for Java Michael Coblenz, Whitney Nelson, Jonathan Aldrich, Brad Myers and Joshua Sunshine
Heuristically Matching Formula Solution Spaces to Efficiently Reuse Solutions Andrea Aquino, Giovanni Denaro and Mauro Pezze'
How Good is a Security Policy against Real Breaches? A HIPAA Case Study Ozgur Kafali, Jasmine Jones, Megan Petruso, Laurie Williams and Munindar P. Singh
How do Developers Fix Cross-project Correlated Bugs? A case study on the GitHub scientific Python ecosystem Wanwangying Ma, Lin Chen, Xiangyu Zhang, Yuming Zhou and Baowen Xu
Learning Syntactic Program Transformations from Examples Reudismam Rolim, Gustavo Soares, Loris D’antoni, Oleksandr Polozov, Sumit Gulwani, Rohit Gheyi, Ryo Suzuki and Bjorn Hartmann
Learning to Prioritize Test Programs for Compiler Testing Junjie Chen, Yanwei Bai, Dan Hao, Yingfei Xiong, Hongyu Zhang and Bing Xie
LibD: Scalable and Precise Third-party Library Detection in Android Markets Menghao Li, Wei Wang, Pei Wang, Shuai Wang, Dinghao Wu, Jian Liu, Rui Xue and Wei Huo
Machine Learning-Based Detection of Open Source License Exceptions Christopher Vendome, Mario Linares-Vásquez, Gabriele Bavota, Massimiliano Di Penta, Daniel German and Denys Poshyvanyk
Machine-Learning-Guided Selectively Unsound Static Analysis Kihong Heo, Hakjoo Oh and Kwangkeun Yi
Making Malory Behave Maliciously: Targeted Fuzzing of Android Execution Environments Siegfried Rasthofer, Steven Arzt, Stefan Triller and Michael Pradel
On Cross-stack Configuration Errors Mohammed Sayagh, Noureddine Kerzazi and Bram Adams
Optimizing Test Placement for Module-Level Regression Testing August Shi, Suresh Thummalapenta, Shuvendu Lahiri, Nikolaj Bjorner and Jacek Czerwonka
PEoPL: Projectional Editing of Product Lines Benjamin Behringer, Jochen Palz and Thorsten Berger
Performance Diagnosis for Inefficient Loops Linhai Song and Shan Lu
Precise Condition Synthesis for Program Repair Yingfei Xiong, Jie Wang, Runfa Yan, Jiachen Zhang, Shi Han, Gang Huang and Lu Zhang
ProEva: Runtime Proactive Performance Evaluation Based on Continuous-Time Markov Chains Guoxin Su, Taolue Chen, Yuan Feng and David Rosenblum
RADAR: A Lightweight Tool for Requirements and Architecture Decision Analysis Saheed Busari and Emmanuel Letier
RClassify: Classifying Race Conditions in Web Applications via Deterministic Replay Lu Zhang and Chao Wang
Recommending and Localizing Change Requests for Mobile Apps based on User Reviews Fabio Palomba, Pasquale Salza, Adelina Ciurumelea, Sebastiano Panichella, Harald Gall, Filomena Ferrucci and Andrea De Lucia
Repairing Event Race Errors by Controlling Nondeterminism Christoffer Quist Adamsen, Anders Møller, Rezwana Karim, Manu Sridharan, Frank Tip and Koushik Sen
SPAIN: Security Patch Analysis for Binaries - Towards Understanding the Pain and Pills Zhengzi Xu, Bihuan Chen, Mahinthan Chandramohan, Yang Liu and Fu Song
Search-driven String Constraint Solving for Vulnerability Detection Julian Thome, Lwin Khin Shar, Domenico Bianculli and Lionel Briand
Semantically Enhanced Software Traceability Using Deep Learning Techniques Jin Guo, Jinghui Cheng and Jane Cleland-Huang
Software Development Waste Todd Sedano, Paul Ralph and Cécile Péraire
Statically Checking Web API Requests in JavaScript Erik Wittern, Annie T. T. Ying, Yunhui Zheng, Julian Dolby and Jim A. Laredo
Stochastic Optimization of Program Obfuscation Han Liu, Chengnian Sun, Zhendong Su, Yu Jiang, Ming Gu and Jiaguang Sun
Supporting Software Developers with a Holistic Recommender System Luca Ponzanelli, Simone Scalabrino, Gabriele Bavota, Andrea Mocci, Rocco Oliveto, Massimiliano Di Penta and Michele Lanza
Symbolic Model Extraction for Web Application Verification Ivan Bocic and Tevfik Bultan
Syntactic and Semantic Differencing for Combinatorial Models of Test Designs Rachel Tzoref-Brill and Shahar Maoz
TRAVIOLI: A Dynamic Analysis for Detecting Data-Structure Traversals Rohan Padhye and Koushik Sen
The Evolution of Continuous Experimentation in Software Product Development Aleksander Fabijan, Pavel Dmitriev, Helena Holmström Olsson and Jan Bosch
To Type or Not to Type: Quantifying Preventable Bugs in JavaScript Zheng Gao, Christian Bird and Earl Barr
UML Diagram Refinement Shmuel Tyszberowicz and David Faitelson
Understanding the Impressions, Motivations and Barriers of One Time Code Contributors to FLOSS Projects: A Survey Amanda Lee, Jeffrey Carver and Amiangshu Bosu
Unsupervised Software-Specific Morphological Forms Inference from Informal Discussions Chunyang Chen, Zhenchang Xing and Ximing Wang
What Causes My Test Alarm? Automatic Cause Analysis for Test Alarms in System and Integration Testing Jiang He, Li Xiaochen, Yang Zijiang and Xuan Jifeng
ZenIDS: Introspective Intrusion Detection for PHP Applications Byron Hawkins and Brian Demsky

Invited Eligible Journal-First Papers1

A Dissection of Test-Driven Development: Does It Really Matter to Test-First or to Test-Last Davide Fucci, Hakan Erdogmus, Burak Turhan, Markku Oivo, and Natalia Juristo
A Framework for Evaluating the Results of the SZZ Approach For Identifying Bug-Introducing Changes Daniel Alencar da Costa, Shane McIntosh, Weiyi Shang, Uira Kulesza, Roberta Coelho, and Ahmed Hassan
A Survey of App Store Analysis for Software Engineering Martin, William, Sarro, Federica, Jia, Yue, Zhang, Yuanyuan, Harman, and Mark
A Survey on Metamorphic Testing Sergio Segura, Gordon Fraser, Ana B. Sanchez, and Antonio Ruiz-Cortés
A Taxonomy and Qualitative Comparison of Program Analysis Techniques for Security Assessment of Android Apps Alireza Sadeghi, Hamid Bagheri, Joshua Garcia, and Sam Malek
An Empirical Comparison of Model Validation Techniques for Defect Prediction Models Chakkrit Tantithamthavorn, Shane McIntosh, Ahmed Hassan, and Kenichi Matsumoto
An Improved SDA based Defect Prediction Framework for both Within-project and Cross-project Class-imbalance Problems Xiao-Yuan Jing, Fei Wu, Xiwei Dong, and Baowen Xu
Approaches to Co-Evolution of Metamodels and Models: A Survey Regina Hebig, Djamel Khelladi, and Reda Bendraou
Finding and Evaluating the Performance Impact of Redundant Data Access for Applications Using ORM Tse-Hsun Chen, Weiyi Shang, Zhen Ming Jiang, Ahmed E. Hassan, Mohamed Nasser, and Parminder Flora
GK-Tail+ An Efficient Approach to Learn Precise Software Models Leonardo Mariani, Mauro Pezze, and Mauro Santoro
Generating API Call Rules from Version History and StackOverflow Posts Shams Azad, Peter Christopher Rigby, and Latifa Gerrouj
Hierarchical Program Paths Chunbai Yang, Shangru Wu, and W.K. Chan
Impact-Driven Process Model Repair Artem Polyvyanyy, Will van der Aalst, Arthur ter Hofstede, and Moe Wynn
Imprecise Matching of Requirements Specifications for Software Services using Fuzzy Logic Marie C. Platenius, Wilhelm Schäfer, Ammar Shaker, Eyke Hüllermeier, and Matthias Becker
Keyword Search for Building Service-Based Systems Qiang He, Rui Zhou, Xuyun Zhang, Yanchun Wang, Dayong Ye, Feifei Chen, John Grundy, and Yun Yang
Mining Privacy Goals from Privacy Policies using Hybridized Task Re-composition Jaspreet Bhatia, Travis D Breaux, and Florian Schaub
Mining Sequences of Developer Interactions in Visual Studio for Usage Smells Kostadin Damevski, David Shepherd, Johannes Schneider, and Lori Pollock
Multi-step learning and adaptive search for learning complex model transformations from examples Islem Baki and Houari Sahraoui
Preventing Defects: The Impact of Traceability Completeness on Software Quality Patrick Rempel and Patrick Mader
Process Aspects and Social Dynamics of Contemporary Code Review: Insghts from Open Source Development and Industrial Practice at Microsoft. Amiangshu Bosu, Jeffrey C. Carver, Christian Bird, Jonathan Orbeck, and Christopher Chockley
SIP: Optimal Product Selection from Feature Models using Many-Objective Evolutionary Optimisation Rob Mark Hierons, Miqing Li, XiaoHui Liu, Sergio Segura, and Wei Zheng
Safety Evidence Change Impact Analysis in Practice Jose Luis de la Vara, Markus Borg, Krzysztof Wnuk, and Leon Moonen
Software Numerical Instability Detection and Diagnosis by Combining Stochastic and Infinite-precision Testing Enyi Tang, Xiangyu Zhang, Norbert Muller, Zhenyu Chen, and Xuandong Li
Supporting Change Impact Analysis Using a Recommendation System: An Industrial Case Study in a Safety-Critical Context Markus Borg, Krzysztof Wnuk, Bjorn Regnell, and Per Runeson
The Role of Ethnographic studies in Empirical Software Engineering Helen Sharp, Yvonne Dittrich, and Cleidson R. B. de Souza
The Use of Summation to Aggregate Software Metrics Hinders the Performance of Defect Prediction Models Feng Zhang, Ahmed E. Hassan, Shane McIntosh, and Ying Zou
The Value of Exact Analysis in Requirements Selection Lingbo Li, Mark Harman, Fan Wu, and Yuanyuan Zhang
Using Cohesion and Coupling for Software Remodularization: Is it Enough? Ivan Candela, Gabriele Bavota, Barbara Russo, and Rocco Oliveto

1. The MOU signed between the ICSE SC and TOSEM and TSE states that eligible papers for the journal-first initiative are papers that (1) are not journal versions of previously published conference work, (2) were submitted no more than 18 months prior to the ICSE in question (i.e., December 2015 in the case of ICSE 2017), and (3) were accepted for publication by the December preceding the ICSE in question.