Follow ICSE on Facebook Follow ICSE on Twitter

Accepted Technical Research Papers and Journal First Papers

Willem Visser, Stellenbosch University, South Africa
Laurie Williams, North Carolina State University, United States

The Technical Research Program will feature 101 Accepted Technical Research Papers and 7 Journal First Papers. These papers will be presented during the three days of the ICSE 2016 Main Conference (Wednesday 18 through Friday 20).

To be added to the list to receive notice when the ICSE 2016 Main Conference Schedule is posted , please visit Or follow ICSE Conferences on Facebook ( or Twitter (@ICSEconf).

Accepted Technical Research Papers

A Comparison of 10 Sampling Algorithms for Configurable Systems
A Practical Guide to Select Quality Indicators for Assessing Pareto-Based Search Algorithms in Search-Based Software Engineering
An Analysis of the Search Spaces for Generate and Validate Patch Generation Systems
An Empirical Comparison of Compiler Testing Techniques
An Empirical Study of Practitioners’ Perspectives on Green Software Engineering
An Empirical Study on the Impact of C++ Lambdas and Programmer Experience
Angelix: Scalable Multiline Program Patch Synthesis via Symbolic Analysis
AntMiner: Mining More Bugs by Reducing Noise Interference
Are "Non-functional" Requirements Really Non-functional? An Investigation of Non-functional Requirements in Practice
Augmenting API Documentation with Insights from Stack Overflow
Automated Energy Optimization of HTTP Requests for Mobile Applications
Automated Parameter Optimization of Classification Techniques for Defect Prediction Models
Automated Partitioning of Android Applications for Trusted Execution Environments
Automated Test Suite Generation for Time-continuous Simulink Models
Automatic Model Generation from Documentation for Java API Functions
Automatically Learning Semantic Features for Defect Prediction
Behavioral Log Analysis with Statistical Guarantees
Belief & Evidence in Empirical Software Engineering
BigDebug: Debugging Primitives for Interactive Big Data Processing in Spark
Building a Theory of Job Rotation in Software Engineering from an Instrumental Case Study
Code Anomalies Flock Together: Exploring Code Anomaly Agglomerations for Locating Design Problems
Code Review Quality: How Developers See It
Comparing White-box and Black-box Test Prioritization
Coverage-Driven Test Code Generation for Concurrent Classes
Cross-project Defect Prediction Using a Connectivity-based Unsupervised Classifier
Cross-Supervised Synthesis of Web-Crawlers
Crowd-Sourcing Program Preconditions via a Classification Game
CUSTODES - Automatic Spreadsheet Cell Clustering and Smell Detection using Strong and Weak Features
Debugging for Reactive Programming
Decoupling Level: A New Metric for Architectural Maintenance Complexity
Discovering "Unknown Known" Security Requirements
Disseminating Architectural Knowledge on Open-Source Projects
DoubleTake: Fast and Precise Error Detection via Evidence-Based Dynamic Analysis
Efficient Large-scale Trace Checking Using MapReduce
Energy Profiles of Java Collections Classes
Exploring Language Support for Immutability
Feature-Model Interfaces: The Highway to Compositional Analyses of Highly-Configurable Systems
Featured Model-based Mutation Analysis
Feedback-Directed Instrumentation for Deployed JavaScript Applications
Finding and Analyzing Compiler Warning Defects
Finding Security Bugs in Web Applications Using a Catalog of Access Control Patterns
Fixing Deadlocks via Lock Pre-Acquisitions
Floating-Point Precision Tuning Using Blame Analysis
From Word Embeddings To Document Similarities for Improved Information Retrieval in Software Engineering
Generating Performance Distributions via Probabilistic Symbolic Execution
Grounded Theory in Software Engineering Research: A Critical Review and Guidelines
Guiding Dynamic Symbolic Execution Toward Unverified Program Executions
How Does Regression Test Prioritization Perform in Real-World Software Evolution?
How Does the Degree of Variability Affect Bug-Finding?
Identifying and Quantifying Architectural Debts
iDice: Problem Identification for Emerging Issues
Improving Refactoring Speed by 10X
IntEQ: Recognizing Benign Integer Overflows via Equivalence Checking Across Multiple Precisions
"Jumping Through Hoops" Why Do Java Developers Misuse Cryptography APIs?
Learning API Usages from Bytecode: A Statistical Approach
Locking Discipline Inference and Checking
Mining Sandboxes
Missing Data Imputation Based on Low-rank Recovery and Semi-supervised Regression for Software Effort Estimation
Multi-Objective Software Effort Estimation
MobiPlay: A Remote Execution Based Record-and-Replay Tool for Mobile Applications
Nomen Est Omen: Exploring and Exploiting Similarities between Argument and Parameter Names
On The Limits of Mutation Reduction Strategies
On the "Naturalness" of Buggy Code
On the Techniques We Create, the Tools We Build, and Their Misalignments: A Study of KLEE
Optimizing Selection of Competing Services with Probabilistic Hierarchical Refinement
Overcoming Open Source Project Entry Barriers with a Portal for Newcomers
PAC Learning-Based Verification and Model Synthesis
Performance Issues and Optimizations in JavaScript: An Empirical Study
PRADA: Prioritizing Android Devices for Apps by Mining Large-Scale Usage Data
Probing for Requirements Knowledge to Stimulate Architectural Thinking
Program Synthesis Using Natural Language
Quality Experience: A Grounded Theory of Software Quality Assurance Without Testers
Quantifying and Mitigating Turnover-Induced Knowledge Loss: Case Studies of Chrome and a Project at Avaya
Reducing Combinatorics in GUI Testing of Android Applications
Reference Hijacking: Patching, Protecting and Analyzing on Unmodified and Non-Rooted Android Devices
Release Planning of Mobile Apps Based on User Reviews
Reliability of Run-Time Quality-of-Service Evaluation Using Parametric Model Checking
RETracer: Triaging Crashes by Reverse Execution from Partial Memory Dumps
Revisit of Automatic Debugging via Human Focus-tracking Analysis
Revisiting Code Ownership and Its Relationship with Software Quality in the Scope of Modern Code Review
Risk-Driven Revision of Requirements Models
Scalable Thread Sharing Analysis
Shadow of a Doubt: Testing for Divergences Between Software Versions
SourcererCC: Scaling Code Clone Detection to Big-Code
StubDroid: Automatic Inference of Precise Data-flow Summaries for the Android Framework
SWIM: Synthesizing What I Mean
Synthesizing Framework Models for Symbolic Execution
Termination-Checking for LLVM Peephole Optimizations
The Challenges of Staying Together While Moving Fast: An Exploratory Study
The Emerging Role of Data Scientists on Software Development Teams
The Evolution of C Programming Practices: A Study of the Unix Operating System 1973-2015
The Impact of Test Case Summaries on Bug Fixing Performance: An Empirical Investigation
The Sky Is Not the Limit: Multitasking on GitHub Projects
Too Long; Didn't Watch! Extracting Relevant Fragments from Software Development Video Tutorials
Toward a Framework for Detecting Privacy Policy Violation in Android Application Code
Type-Aware Concolic Testing of JavaScript Programs
Understanding and Fixing Multiple Language Interoperability Issues: The C/Fortran Case
Understanding Asynchronous Interactions in Full-Stack JavaScript
Using (Bio)Metrics to Predict Code Quality Online
VDTest: An Automated Framework to Support Testing for Virtual Devices
Work Practices and Challenges in Pull-Based Development: The Contributor’s Perspective

Journal First Papers

Open Innovation in Software Engineering: A Systematic Mapping Study —  Empirical Software Engineering (April 2015)
From Aristotle to Ringelmann: A large-scale analysis of team productivity and coordination in Open Source Software projects —  Empirical Software Engineering (December 2015)
A Field Study of How Developers Locate Features in Source Code —  Empirical Software Engineering (March 2015)
Inflow and Retention in OSS Communities with Commercial Involvement: A Case Study of Three Hybrid Projects —  ACM TOSEM (January 2016)
Automatically Recommending Peer Reviewers in Modern Code Review —  IEEE TSE (October 2015)
Evaluating the Effects of Architectural Documentation: A Case Study of a Large Scale Open Source Project —  IEEE TSE (July 2015)
Metamorphic Testing for Software Quality Assessment: A Study of Search Engines —  IEEE TSE (September 2015)

Program Committee

Program Board
Program Committee

The presentation schedule is posted here.