The way in which a system's software archive is partitioned influences the evolvability of that system. The partition of a software archive is mostly assessed by looking at the static (include, call) relations between the parts. In the literature history information is also taken into account to assess the partition but only pairs of software entities are related. In this paper we describe a novel history-based approach to assess the extent in which a certain partition allows its parts to evolve independently. We use the assumption that a set of software entities which co-evolved often in the past are likely to be modified together in the near future as well. Hence, the elements of such a set should in principle belong to the same part. Our approach, therefore, identifies sets of co-evolving software entities, where each set has elements from more than one part of the archive. We illustrate our approach with a case study of a large software system that evolved during more than a decade, and has over 7 million lines of code.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.