Feature Evolution and Reuse -- An Exploratory Study of Eclipse
This addresses the problem of understanding real-world software reuse practices for developers and researchers, though it is incremental as it focuses on a single ecosystem.
The study investigated the extent and patterns of feature reuse and evolution in the Eclipse open-source ecosystem across ten releases, finding evidence of how reuse impacts system growth while maintaining quality.
One of the purported ways to increase productivity and reduce development time is to reuse existing features and modules. If reuse is adopted, logically then, it will have a direct impact on a system's evolution. However, the evidence in the literature is not clear on the extent to which reuse is practiced in real-world projects, nor how it is practiced. In this paper we report the results of an investigation of reuse and evolution of software features in one of the largest open-source ecosystems - Eclipse. Eclipse provides a leading example of how a system can grow dramatically in size and number of features while maintaining its quality. Our results demonstrate the extent of feature reuse and evolution and also patterns of reuse across ten different Eclipse releases (from Europa to Neon).