DocumentCode
3694192
Title
Developers´ perception of co-change patterns: An empirical study
Author
Luciana L. Silva;Marco Tulio Valente;Marcelo de A. Maia;Nicolas Anquetil
Author_Institution
Department of Computer Science, Federal University of Minas Gerais, Brazil
fYear
2015
Firstpage
21
Lastpage
30
Abstract
Co-change clusters are groups of classes that frequently change together. They are proposed as an alternative modular view, which can be used to assess the traditional decomposition of systems in packages. To investigate developer´s perception of co-change clusters, we report in this paper a study with experts on six systems, implemented in two languages. We mine 102 co-change clusters from the version history of such systems, which are classified in three patterns regarding their projection to the package structure: Encapsulated, Crosscutting, and Octopus. We then collect the perception of expert developers on such clusters, aiming to ask two central questions: (a) what concerns and changes are captured by the extracted clusters? (b) do the extracted clusters reveal design anomalies? We conclude that Encapsulated Clusters are often viewed as healthy designs and that Crosscutting Clusters tend to be associated to design anomalies. Octopus Clusters are normally associated to expected class distributions, which are not easy to implement in an encapsulated way, according to the interviewed developers.
Keywords
"Clustering algorithms","Maintenance engineering","Pattern matching","Partitioning algorithms","Java","Open source software"
Publisher
ieee
Conference_Titel
Software Maintenance and Evolution (ICSME), 2015 IEEE International Conference on
Type
conf
DOI
10.1109/ICSM.2015.7332448
Filename
7332448
Link To Document