Evolution of features and their dependencies - an explorative study in OSS

  • Authors:
  • Maximilian Steff;Barbara Russo;Guenther Ruhe

  • Affiliations:
  • Free University of Bozen-Bolzano, Bozen, Italy;Free University of Bozen-Bolzano, Bozen, Italy;University of Calgary, Calgary, Canada

  • Venue:
  • Proceedings of the ACM-IEEE international symposium on Empirical software engineering and measurement
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Release Planning is the process of decision making about what features are to be implemented (or revised) in which release of a software product. While release planning for proprietary software products is well-studied, little investigation has been performed for open source products. Various types of feature dependencies are known to impact both the planning and the subsequent maintenance process. In this paper, we provide the basic layout of a method to formulate and analyze feature dependencies defined at the code level. Dependencies are defined from evolutionary analysis of the commit graph of OSS code development and syntactical dependencies. We demonstrate our method with an explorative study of an open source project, the Spring Framework. From the analysis of the development cycles of two major releases over forty-one months, we could correlate late, increased feature dependencies with an increased number for subsequent improvements and bug fixes.