Characterizing the Evolution of Size and Inheritance in Object-Oriented Software.

SBQS(2021)

引用 0|浏览8
暂无评分
摘要
Software evolution consists of adapting, correcting, and updating a system. It is widely known that the systems became increasingly complex and challenging to be maintained over their evolution. However, the way the systems' internal structure evolves is not known in detail. Understanding how the internal software structure evolves is essential to help developers better plan, manage, and perform software maintenance tasks. In this work, we present an empirical analysis to investigate how the internal structure of object-oriented systems evolves from the perspective of inheritance hierarchy and size. Besides, we analyzed the set of classes within the systems that affect these dimensions' evolution and how such classes evolve. We used a methodology based on time series, linear regression techniques, and trend tests to analyze the evolution of object-oriented systems. Using this methodology, we identified the function that better explains how the size and the inheritance tree evolve. This study revealed eight software evolution properties, among them: inheritance hierarchy tends to increase in depth and decrease in breadth; inheritance hierarchy depth and the size of classes grow according to a linear model. The empirical evidence found in this work provides a fine-grained knowledge of how object-oriented software systems' internal structure evolves from internal dimensions.
更多
查看译文
关键词
Software Evolution, Software Metrics, Inheritance, Size, Time Series
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要