Simplifying Development History Information Retrieval via Multi-Grained Views
by Kıvanç Muşlu, Luke Swart, Yuriy Brun, Michael D. Ernst
Abstract:

Development histories can simplify some software engineering tasks, but different tasks require different history granularities. For example, a history that includes every edit that resulted in compiling code is needed when searching for the cause of a regression, whereas a history that contains only changes relevant to a feature is needed for understanding the evolution of the feature. Unfortunately, today, both manual and automated history generation result in a single-granularity history. This paper introduces the concept of multi-grained development history views and the architecture of Codebase Manipulation, a tool that automatically records a fine-grained history and manages its granularity by applying granularity transformations.

Citation:
Kıvanç Muşlu, Luke Swart, Yuriy Brun, and Michael D. Ernst, Simplifying Development History Information Retrieval via Multi-Grained Views, in Proceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering (ASE), 2015, pp. 697–702.
Bibtex:
@inproceedings{Muslu15ase,
  author = {K{\i}van{\c{c}} Mu{\c{s}}lu and Luke Swart and Yuriy Brun and Michael D. Ernst},
  title = {\href{http://people.cs.umass.edu/brun/pubs/pubs/Muslu15ase.pdf}{Simplifying 
	Development History Information Retrieval via Multi-Grained Views}},
  booktitle = {Proceedings of the 30th IEEE/ACM International Conference on
  Automated Software Engineering (ASE)}, 
	venue = {ASE},
  address = {Lincoln, NE, USA},
  month = {November},
  date = {9--13},
  year = {2015},
  doi = {10.1109/ASE.2015.53},  
  note = {\href{https://doi.org/10.1109/ASE.2015.53}{DOI: 10.1109/ASE.2015.53}},
  pages = {697--702},
  accept = {$\frac{17}{41} \approx 41\%$},

  abstract = {<p>Development histories can simplify some software engineering
  tasks, but different tasks require different history granularities. For
  example, a history that includes every edit that resulted in compiling code
  is needed when searching for the cause of a regression, whereas a history
  that contains only changes relevant to a feature is needed for
  understanding the evolution of the feature. Unfortunately, today, both
  manual and automated history generation result in a single-granularity
  history. This paper introduces the concept of multi-grained development
  history views and the architecture of Codebase Manipulation, a tool that
  automatically records a fine-grained history and manages its granularity by
  applying granularity transformations.</p>},

  fundedBy = {AFOSR FA8750-12-C-0174, NSF CCF-0963757, NSF CCF-1453474},
}