Danny Dig, assistant professor of computer science at Oregon State, received two awards this year at the top software maintenance conference, the IEEE International Conference on Software Maintenance and Evolution (ICSME) hosted in Bremen, Germany.
Dig was also a keynote speaker at the conference, in recognition of the award for Most Influential Paper in the last ten years. The paper, co-authored with Ralph Johnson and entitled, “The Role of Refactorings in API Evolution,” opened a new area of research. It was the first quantitative and qualitative analysis on the evolution of Application Program Interfaces (API) which has inspired researchers all over the world to build on the seminal study.
The second award was for Best Paper which Dig shares with Oregon State graduate students, Mihai Codoban and Sruti Srinivasa Ragavan; and Brian Bailey, associate professor at University of Illinois at Urbana-Champaign. The paper, entitled “Software History Under the Lens: A Study on Why and How Developers Examine It,” received perfect marks from the judges.
Most Influential Paper:
The Role of Refactorings in API Evolution
Danny Dig (Oregon State University) and Ralph Johnson (University of Illinois at Urbana-Champaign)
Abstract—Frameworks and libraries change their APIs. Migrating an application to the new API is tedious and disrupts the development process. Although some tools and ideas have been proposed to solve the evolution of APIs, most updates are done manually. To better understand the requirements for migration tools we studied the API changes of three frameworks and one library. We discovered that the changes that break existing applications are not random, but they tend to fall into particular categories. Over 80% of these changes are refactorings. This suggests that refactoring-based migration tools should be used to update applications.
Best Paper Award:
Software History Under the Lens: A Study on Why and How Developers Examine It
Mihai Codoban, Sruti Srinivasa Ragavan, Danny Dig (Oregon State University) and Brian Bailey (University of Illinois at Urbana-Champaign)
Abstract—Despite software history being indispensable for developers, there is little empirical knowledge about how they examine software history. Without such knowledge, researchers and tool builders are in danger of making wrong assumptions and building inadequate tools. In this paper we present an in-depth empirical study about the motivations developers have for examining software history, the strategies they use, and the challenges they encounter. To learn these, we interviewed 14 experienced developers from industry, and then extended our findings by surveying 217 developers. We found that history does not begin with the latest commit but with uncommitted changes. Moreover, we found that developers had different motivations for examining recent and old history. Based on these findings we propose 3-LENS HISTORY, a novel unified model for reasoning about software history.