Exploring trends in the evolution of open-source systems

2019 
Software evolution is the costliest process in software project. Successful software projects tend to evolve longer for high quality software. To keep the software quality under control, software engineers need to know the trends in software growth to help in allocating appropriate resources in future releases. How does software evolve and in what pace is very important to understand software evolution? Knowing the evolution of software as a whole is not enough to make decisions. Software engineers need to understand the class evolution in object-oriented systems. The evolution of classes in five open-source systems are empirically studied using the growth rate using linear and nonlinear models. The work analyzes the evolution of classes for logarithmic, exponential and quadratic models. The results show that that most classes follow the logarithmic and quadratic models. While the linear model was the best fit in few number of classes. The systems evolution, measured using line of code and number of classes, also follows the logarithmic model for three out of five systems. These results show that nonlinear models are more common than linear model both at the class and system levels.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    58
    References
    1
    Citations
    NaN
    KQI
    []