Social

Proceedings

The proceedings are now published in the ACM Digital Library.

ACM OpenToc Service

The ACM OpenTOC is a unique service that enables visitors to download the definitive version of the contents from the ACM Digital Library at no charge for a one year period starting from the conference start date. Downloads of these articles are captured in official ACM statistics, improving the accuracy of usage and impact measurements.

FSE 2016- Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering

Full Citation in the ACM Digital Library

SESSION: Keynotes

“Womenomics” and gender-inclusive software: what software engineers need to know (invited talk)

  • Margaret Burnett

Building a socio-technical theory of coordination: why and how (outstanding research award)

  • James Herbsleb

Correct or usable? the limits of traditional verification (impact paper award)

  • Daniel Jackson
  • Mandana Vaziri

SESSION: Showcases

Continuous deployment of mobile software at facebook (showcase)

  • Chuck Rossi
  • Elisa Shibley
  • Shi Su
  • Kent Beck
  • Tony Savor
  • Michael Stumm

Model, execute, and deploy: answering the hard questions in end-user programming (showcase)

  • Shan Shan Huang

Making invisible things visible: tracking down known vulnerabilities at 3000 companies (showcase)

  • Gazi Mahmud

Developer workflow at google (showcase)

  • Caitlin Sadowski

SESSION: Research Papers

Titanium: efficient analysis of evolving alloy specifications

  • Hamid Bagheri
  • Sam Malek

Mining performance specifications

  • Marc Brünink
  • David S. Rosenblum

Designing minimal effective normative systems with the help of lightweight formal methods

  • Jianye Hao
  • Eunsuk Kang
  • Jun Sun
  • Daniel Jackson

Proteus: computing disjunctive loop summary via path dependency analysis

  • Xiaofei Xie
  • Bihuan Chen
  • Yang Liu
  • Wei Le
  • Xiaohong Li

A cross-tool communication study on program analysis tool notifications

  • Brittany Johnson
  • Rahul Pandita
  • Justin Smith
  • Denae Ford
  • Sarah Elder
  • Emerson Murphy-Hill
  • Sarah Heckman
  • Caitlin Sadowski

Factors influencing code review processes in industry

  • Tobias Baum
  • Olga Liskin
  • Kai Niklas
  • Kurt Schneider

Foraging and navigations, fundamentally: developers’ predictions of value and cost

  • David Piorkowski
  • Austin Z. Henley
  • Tahmid Nabi
  • Scott D. Fleming
  • Christopher Scaffidi
  • Margaret Burnett

How to break an API: cost negotiation and community values in three software ecosystems

  • Christopher Bogart
  • Christian Kästner
  • James Herbsleb
  • Ferdian Thung

Python predictive analysis for bug detection

  • Zhaogui Xu
  • Peng Liu
  • Xiangyu Zhang
  • Baowen Xu

Crash consistency validation made easy

  • Yanyan Jiang
  • Haicheng Chen
  • Feng Qin
  • Chang Xu
  • Xiaoxing Ma
  • Jian Lu

Discovering bug patterns in JavaScript

  • Quinn Hanam
  • Fernando S. de M. Brito
  • Ali Mesbah

Effort-aware just-in-time defect prediction: simple unsupervised models could be better than supervised models

  • Yibiao Yang
  • Yuming Zhou
  • Jinping Liu
  • Yangyang Zhao
  • Hongmin Lu
  • Lei Xu
  • Baowen Xu
  • Hareton Leung

Detecting sensitive data disclosure via bi-directional text correlation analysis

  • Jianjun Huang
  • Xiangyu Zhang
  • Lin Tan

Multi-representational security analysis

  • Eunsuk Kang
  • Aleksandar Milicevic
  • Daniel Jackson

String analysis for side channels with segmented oracles

  • Lucas Bang
  • Abdulbaki Aydin
  • Quoc-Sang Phan
  • Corina S. Pasareanu
  • Tevfik Bultan

WebRanz: web page randomization for better advertisement delivery and web-bot prevention

  • Weihang Wang
  • Yunhui Zheng
  • Xinyu Xing
  • Yonghwi Kwon
  • Xiangyu Zhang
  • Patrick Eugster

A discrete-time feedback controller for containerized cloud applications

  • Luciano Baresi
  • Sam Guinea
  • Alberto Leva
  • Giovanni Quattrocchi

Keep it SIMPLEX: satisfying multiple goals with guarantees in control-based self-adaptive systems

  • Stepan Shevtsov
  • Danny Weyns

Automated change impact analysis between SysML models of requirements and design

  • Shiva Nejati
  • Mehrdad Sabetzadeh
  • Chetan Arora
  • Lionel C. Briand
  • Felix Mandoux

Parameter-free probabilistic API mining across GitHub

  • Jaroslav Fowkes
  • Charles Sutton

API deprecation: a retrospective analysis and detection method for code examples on the web

  • Jing Zhou
  • Robert J. Walker

When should internal interfaces be promoted to public?

  • André Hora
  • Marco Tulio Valente
  • Romain Robbes
  • Nicolas Anquetil

POLLUX: safely upgrading dependent application libraries

  • Sukrit Kalra
  • Ayush Goel
  • Dhriti Khanna
  • Mohan Dhawan
  • Subodh Sharma
  • Rahul Purandare

Extracting instruction semantics via symbolic execution of code generators

  • Niranjan Hasabnis
  • R. Sekar

Efficient generation of inductive validity cores for safety properties

  • Elaheh Ghassabani
  • Andrew Gacek
  • Michael W. Whalen

Correctness witnesses: exchanging verification results between verifiers

  • Dirk Beyer
  • Matthias Dangl
  • Daniel Dietsch
  • Matthias Heizmann

SMT-based verification of parameterized systems

  • Arie Gurfinkel
  • Sharon Shoham
  • Yuri Meshman

On-the-fly decomposition of specifications in software model checking

  • Sven Apel
  • Dirk Beyer
  • Vitaly Mordan
  • Vadim Mutilin
  • Andreas Stahlbauer

On well-separation of GR(1) specifications

  • Shahar Maoz
  • Jan Oliver Ringert

Lightweight specification and analysis of dynamic systems with rich configurations

  • Nuno Macedo
  • Julien Brunel
  • David Chemouil
  • Alcino Cunha
  • Denis Kuperberg

Gray links in the use of requirements traceability

  • Nan Niu
  • Wentao Wang
  • Arushi Gupta

Understanding and detecting wake lock misuses for Android applications

  • Yepang Liu
  • Chang Xu
  • Shing-Chi Cheung
  • Valerio Terragni

DiagDroid: Android performance diagnosis via anatomizing asynchronous executions

  • Yu Kang
  • Yangfan Zhou
  • Hui Xu
  • Michael R. Lyu

Minimizing GUI event traces

  • Lazaro Clapp
  • Osbert Bastani
  • Saswat Anand
  • Alex Aiken

Causal impact analysis for app releases in google play

  • William Martin
  • Federica Sarro
  • Mark Harman

Static DOM event dependency analysis for testing web applications

  • Chungha Sung
  • Markus Kusano
  • Nishant Sinha
  • Chao Wang

On-demand strong update analysis via value-flow refinement

  • Yulei Sui
  • Jingling Xue

Call graph construction for Java libraries

  • Michael Reif
  • Michael Eichberg
  • Ben Hermann
  • Johannes Lerch
  • Mira Mezini

Revamping JavaScript static analysis via localization and remediation of root causes of imprecision

  • Shiyi Wei
  • Omer Tripp
  • Barbara G. Ryder
  • Julian Dolby

What would users change in my app? summarizing app reviews for recommending software changes

  • Andrea Di Sorbo
  • Sebastiano Panichella
  • Carol V. Alexandru
  • Junji Shimagaki
  • Corrado A. Visaggio
  • Gerardo Canfora
  • Harald C. Gall

API code recommendation using statistical learning from fine-grained changes

  • Anh Tuan Nguyen
  • Michael Hilton
  • Mihai Codoban
  • Hoan Anh Nguyen
  • Lily Mast
  • Eli Rademacher
  • Tien N. Nguyen
  • Danny Dig

TIPMerge: recommending experts for integrating changes across branches

  • Catarina Costa
  • Jair Figueiredo
  • Leonardo Murta
  • Anita Sarma

Interactive and guided architectural refactoring with search-based recommendation

  • Yun Lin
  • Xin Peng
  • Yuanfang Cai
  • Danny Dig
  • Diwen Zheng
  • Wenyun Zhao

Can testedness be effectively measured?

  • Iftekhar Ahmed
  • Rahul Gopinath
  • Caius Brindescu
  • Alex Groce
  • Carlos Jensen

A large-scale empirical comparison of static and dynamic test case prioritization techniques

  • Qi Luo
  • Kevin Moran
  • Denys Poshyvanyk

Analyzing the validity of selective mutation with dominator mutants

  • Bob Kurtz
  • Paul Ammann
  • Jeff Offutt
  • Márcio E. Delamaro
  • Mariet Kurtz
  • Nida Gökçe

An extensive study of static regression test selection in modern software evolution

  • Owolabi Legunsen
  • Farah Hariri
  • August Shi
  • Yafeng Lu
  • Lingming Zhang
  • Darko Marinov

PerfGuard: binary-centric application performance monitoring in production environments

  • Chung Hwan Kim
  • Junghwan Rhee
  • Kyu Hyung Lee
  • Xiangyu Zhang
  • Dongyan Xu

Python probabilistic type inference with natural language support

  • Zhaogui Xu
  • Xiangyu Zhang
  • Lin Chen
  • Kexin Pei
  • Baowen Xu

Detecting and fixing precision-specific operations for measuring floating-point errors

  • Ran Wang
  • Daming Zou
  • Xinrui He
  • Yingfei Xiong
  • Lu Zhang
  • Gang Huang

Deep API learning

  • Xiaodong Gu
  • Hongyu Zhang
  • Dongmei Zhang
  • Sunghun Kim

Build system with lazy retrieval for Java projects

  • Ahmet Celik
  • Alex Knaust
  • Aleksandar Milicevic
  • Milos Gligoric

iGen: dynamic interaction inference for configurable software

  • ThanhVu Nguyen
  • Ugur Koc
  • Javran Cheng
  • Jeffrey S. Foster
  • Adam A. Porter

CacheOptimizer: helping developers configure caching frameworks for hibernate-based database-centric web applications

  • Tse-Hsun Chen
  • Weiyi Shang
  • Ahmed E. Hassan
  • Mohamed Nasser
  • Parminder Flora

BinGo: cross-architecture cross-OS binary search

  • Mahinthan Chandramohan
  • Yinxing Xue
  • Zhengzi Xu
  • Yang Liu
  • Chia Yuan Cho
  • Hee Beng Kuan Tan

Relationship-aware code search for JavaScript frameworks

  • Xuan Li
  • Zerui Wang
  • Qianxiang Wang
  • Shoumeng Yan
  • Tao Xie
  • Hong Mei

Code relatives: detecting similarly behaving software

  • Fang-Hsiang Su
  • Jonathan Bell
  • Kenneth Harvey
  • Simha Sethumadhavan
  • Gail Kaiser
  • Tony Jebara

Understanding and generating high quality patches for concurrency bugs

  • Haopeng Liu
  • Yuxi Chen
  • Shan Lu

Anti-patterns in search-based program repair

  • Shin Hwei Tan
  • Hiroaki Yoshida
  • Mukul R. Prasad
  • Abhik Roychoudhury

Semi-supervised verified feedback generation

  • Shalini Kaleeswaran
  • Anirudh Santhiar
  • Aditya Kanade
  • Sumit Gulwani

WATERFALL: an incremental approach for repairing record-replay tests of web applications

  • Mouna Hammoudi
  • Gregg Rothermel
  • Andrea Stocco

Efficiency of projectional editing: a controlled experiment

  • Thorsten Berger
  • Markus Völter
  • Hans Peter Jensen
  • Taweesap Dangprasert
  • Janet Siegmund

ECHO: instantaneous in situ race detection in the IDE

  • Sheng Zhan
  • Jeff Huang

Detecting table clones and smells in spreadsheets

  • Wensheng Dou
  • Shing-Chi Cheung
  • Chushu Gao
  • Chang Xu
  • Liang Xu
  • Jun Wei

Flow-sensitive composition of thread-modular abstract interpretation

  • Markus Kusano
  • Chao Wang

A deployable sampling strategy for data race detection

  • Yan Cai
  • Jian Zhang
  • Lingwei Cao
  • Jian Liu

Online shared memory dependence reduction via bisectional coordination

  • Yanyan Jiang
  • Chang Xu
  • Du Li
  • Xiaoxing Ma
  • Jian Lu

Parallel data race detection for task parallel programs with locks

  • Adarsh Yoga
  • Santosh Nagarakatte
  • Aarti Gupta

Paradise unplugged: identifying barriers for female participation on stack overflow

  • Denae Ford
  • Justin Smith
  • Philip J. Guo
  • Chris Parnin

Why we refactor? confessions of GitHub contributors

  • Danilo Silva
  • Nikolaos Tsantalis
  • Marco Tulio Valente

Effectiveness of code contribution: from patch-based to pull-request-based tools

  • Jiaxin Zhu
  • Minghui Zhou
  • Audris Mockus

Isomorphic regression testing: executing uncovered branches without test augmentation

  • Jie Zhang
  • Yiling Lou
  • Lingming Zhang
  • Dan Hao
  • Lu Zhang
  • Hong Mei

Directed test generation to detect loop inefficiencies

  • Monika Dhok
  • Murali Krishna Ramanathan

Field-exhaustive testing

  • Pablo Ponzio
  • Nazareno Aguirre
  • Marcelo F. Frias
  • Willem Visser

SESSION: Visions and Reflections

Sustainable software design

  • Martin P. Robillard

Designing for dystopia: software engineering research for the post-apocalypse

  • Titus Barik
  • Rahul Pandita
  • Justin Middleton
  • Emerson Murphy-Hill

Disrupting developer productivity one bot at a time

  • Margaret-Anne Storey
  • Alexey Zagalsky

Training the future workforce through task curation in an OSS ecosystem

  • Anita Sarma
  • Marco Aurélio Gerosa
  • Igor Steinmacher
  • Rafael Leano

Reaching the masses: a new subdiscipline of app programmer education

  • Charles Weir
  • Awais Rashid
  • James Noble

Studying developer gaze to empower software engineering research and practice

  • Bonita Sharif
  • Benjamin Clark
  • Jonathan I. Maletic

DeepSoft: a vision for a deep model of software

  • Hoa Khanh Dam
  • Truyen Tran
  • John Grundy
  • Aditya Ghose

Budgeted testing through an algorithmic lens

  • Myra B. Cohen
  • A. Pavan
  • N. V. Vinodchandran

Reasoning with imprecise privacy preferences

  • Inah Omoronyia

SESSION: Industrial Papers

Bing developer assistant: improving developer productivity by recommending sample code

  • Hongyu Zhang
  • Anuj Jain
  • Gaurav Khandelwal
  • Chandrashekhar Kaushik
  • Scott Ge
  • Wenxiang Hu

Cluster-based test suite functional analysis

  • Marcel Zalmanovici
  • Orna Raz
  • Rachel Tzoref-Brill

A portable interface for runtime energy monitoring

  • Connor Imes
  • Lars Bergstrom
  • Henry Hoffmann

Learning for test prioritization: an industrial case study

  • Benjamin Busjaeger
  • Tao Xie

Combinatorial generation of structurally complex test inputs for commercial software applications

  • Hua Zhong
  • Lingming Zhang
  • Sarfraz Khurshid

Automated test input generation for Android: are we really there yet in an industrial case?

  • Xia Zeng
  • Dengfeng Li
  • Wujie Zheng
  • Fan Xia
  • Yuetang Deng
  • Wing Lam
  • Wei Yang
  • Tao Xie

SESSION: Tool Demonstrations

NonDex: a tool for detecting and debugging wrong assumptions on Java API specifications

  • Alex Gyori
  • Ben Lambeth
  • August Shi
  • Owolabi Legunsen
  • Darko Marinov

TIPMerge: recommending developers for merging branches

  • Catarina Costa
  • Jair Figueiredo
  • Anita Sarma
  • Leonardo Murta

Time-travel debugging for JavaScript/Node.js

  • Earl T. Barr
  • Mark Marron
  • Ed Maurer
  • Dan Moseley
  • Gaurav Seth

PUMConf: a tool to configure product specific use case and domain models in a product line

  • Ines Hajri
  • Arda Goknil
  • Lionel C. Briand
  • Thierry Stephany

T2API: synthesizing API code usage templates from English texts with statistical translation

  • Thanh Nguyen
  • Peter C. Rigby
  • Anh Tuan Nguyen
  • Mark Karanfil
  • Tien N. Nguyen

JBSE: a symbolic executor for Java programs with complex heap inputs

  • Pietro Braione
  • Giovanni Denaro
  • Mauro Pezzè

ARdoc: app reviews development oriented classifier

  • Sebastiano Panichella
  • Andrea Di Sorbo
  • Emitza Guzman
  • Corrado A. Visaggio
  • Gerardo Canfora
  • Harald C. Gall

Hunter: next-generation code reuse for Java

  • Yuepeng Wang
  • Yu Feng
  • Ruben Martins
  • Arati Kaushik
  • Isil Dillig
  • Steven P. Reiss

BigDebug: interactive debugger for big data analytics in Apache Spark

  • Muhammad Ali Gulzar
  • Matteo Interlandi
  • Tyson Condie
  • Miryung Kim

Visualizing code and coverage changes for code review

  • Sebastiaan Oosterwaal
  • Arie van Deursen
  • Roberta Coelho
  • Anand Ashok Sawant
  • Alberto Bacchelli

End-to-end memory behavior profiling with DINAMITE

  • Svetozar Miucin
  • Conor Brady
  • Alexandra Fedorova

Validate your SPDX files for open source license violations

  • Demetris Paschalides
  • Georgia M. Kapitsaki

FSX: a tool for fine-grained incremental unit test generation for C/C++ programs

  • Hiroaki Yoshida
  • Susumu Tokumoto
  • Mukul R. Prasad
  • Indradeep Ghosh
  • Tadahiro Uehara

SESSION: Doctoral Symposium

Refactoring and migration of cascading style sheets: towards optimization and improved maintainability

  • Davood Mazinanian

Developing a reusable control-based approach to build self-adaptive software systems with formal guarantees

  • Stepan Shevtsov

Automating repetitive code changes using examples

  • Reudismam Rolim

Understanding and improving continuous integration

  • Michael Hilton

Guided code synthesis using deep neural networks

  • Carol V. Alexandru

Generating interactive web pages from storyboards

  • Pavel Panchekha

Data structure synthesis

  • Calvin Loncaric

Understanding behavioural patterns in JavaScript

  • Saba Alimadadi

Regression testing of web applications using Record/Replay tools

  • Mouna Hammoudi

Supporting change in product lines within the context of use case-driven development and testing

  • Ines Hajri

Input-sensitive performance testing

  • Qi Luo

On the utility of dominator mutants for mutation testing

  • Bob Kurtz

SESSION: Graduate Submissions

Effective assignment and assistance to software developers and reviewers

  • Motahareh Bahrami Zanjani

RABIEF: range analysis based integer error fixing

  • Xi Cheng

Fine-grained binary code authorship identification

  • Xiaozhu Meng

Identifying participants for collaborative merge

  • Catarina Costa

Cozy: synthesizing collection data structures

  • Calvin Loncaric

Constraint-based event trace reduction

  • Jie Wang

Automatic trigger generation for end user written rules for home automation

  • Chandrakana Nandi

Hotspot symbolic execution of floating-point programs

  • Minghui Quan

Evaluation of fault localization techniques

  • Spencer Pearson

How should static analysis tools explain anomalies to developers?

  • Titus Barik

Repairing test dependence

  • Wing Lam

Combining bug detection and test case generation

  • Martin Kellogg

SmartDebug: an interactive debug assistant for Java

  • Xinrui Guo

Static loop analysis and its applications

  • Xie Xiaofei

Social health cues developers use when choosing open source packages

  • Andrew Head

Finding and breaking test dependencies to speed up test execution

  • Sebastian Kappler

Automatic performance testing using input-sensitive profiling

  • Qi Luo

SESSION: Undergraduate Submissions

Enforcing correct array indexes with a type system

  • Joseph Santino

Discovering additional violations of Java API invariants

  • Waylon Huang

Preventing signedness errors in numerical computations in Java

  • Christopher A. Mackie

Bounded model checking of state-space digital systems: the impact of finite word-length effects on the implementation of fixed-point digital controllers based on state-space modeling

  • Felipe R. Monteiro

Atlas: an intelligent, performant framework for web-based grid computing

  • Sachith Gullapalli

 

 

Registration now open

Important: Please pre-register to allow us to pre-print your badge in advance.
Note that we have limited availability for on-site registrations. Register early!

We look forward to seeing you at the conference!
Registration rates and policies

Attendee information

Everything you need to know for attending FSE.

Proceedings

The proceedings are now in the ACM Digital Library.

Print Program (*new*)

The program part of the FSE Yearbook. The pages with attendee profiles and advertisement will only be available in the print copy that attendees will receive at the conference.

FSE Week Overview

FSE conference (November 15-17), Workshops (November 13, 14, and 18), Doctoral Symposium (November 14)

Schedule Main Conference

Check out the schedule of the main conference.

Conference Preview

Check out a preview of conference highlights.

Hotel reservations now open

The room rate is USD 189.00 / Night (Excluding Taxes & Fees). The rate is available until October 15, 2016. Consider participating in the Room Sharing program.

Important Dates

Submissions

  • Research papers: March 11, 2016
  • Workshop proposals: March 25, 2016
  • Visions and Reflections papers: June 15, 2016
  • Industry papers: June 15, 2016
  • Demo papers: June 15, 2016
  • Doctoral Symposium: June 15, 2016
  • Student Research Competition: June 15 July 1, 2016
  • Workshop papers: July 1, 2016

Rebuttal Period

  • For research papers only: April 30, 2016 (Noon PDT) - May 3, 2016 (23:59:59 AOE)

Events

  • Pre-conference Events: November 13-14, 2016
  • Doctoral Symposium: November 14, 2016
  • Main Conference: November 15-17, 2016
  • Post-conference Events: November 18, 2016