Thursday, October 1, 2015

Practically relevant software engineering research

A paper about proactive conflict detection, which is part of my speculative analysis research project, has been ranked the most practically relevant software engineering research of the last five years.  In a survey of 500 software developers, the proactive conflict detection paper was rated as "essential" to software development practice by the most participants, out of 600 papers published in the last five years.

Proactive conflict detection helps people to collaborate more effectively.  When teammates work in parallel, they may make changes that are independently good but which, when combined, break the software.  The Crystal tool continuously tries to merge different people's changes, before the software developers do so and without making permanent changes or interfering with the developers.  If the changes are in conflict, then Crystal immediately and unobtrusively notifies the developers so they can fix it while the changes are fresh in their minds, and before they waste time on code that would have to be reworked or discarded.  If the changes are not in conflict, then developers can proceed with confidence, without worrying about negative consequences.  In either case, developers can spend less time coordinating with their teammates and more time getting their jobs done.

The research project was joint work with Yuriy Brun, Reid Holmes, and David Notkin.

To learn more about proactive conflict detection, watch a video or read the technical paper:  

Yuriy Brun, Reid Holmes, Michael D. Ernst, and David Notkin, Early Detection of Collaboration Conflicts and Risks, IEEE Transactions on Software Engineering, 2013.

Other papers resulting from the project appear on the speculative analysis webpage.

The industrial relevance study wast performed by Microsoft Research and Singapore Management University.  A paper describing it was published at the ESEC/FSE conference in September 2015:

David Lo, Nachiappan Nagappan, and Thomas Zimmermann, How Practitioners Perceive the Relevance of Software Engineering Research, ESEC/FSE, 2015.

A tip of the hat to Yuriy Brun for pointing me at this paper.

This is a nice complement to a previous honor. In 2013, Microsoft Academic Search ranked me 2nd among software engineering researchers worldwide, for work in the previous 10 years.