Comprehending Scenario-Level Software Evolution Using Calling Context Trees
Sarishty Gupta, Paramvir Singh · 2017
Software evolution can be better understood if analyzed at user scenario level. Understanding the behavior of participating classes across a set of software versions could be helpful in scenario-level program comprehension. In this paper, we empirically investigate whether Calling Context Tree (CCT) based structural metrics provide new insights into comprehending the evolution of program scenarios. We analyze a set of four static, three dynamic, and four CCT metrics to comprehend the evolution of eight scenarios across four open source java applications. Correlation analysis and principal component analysis are used to analyze the relationship among the selected set of metrics. The results reveal that two of the CCT metrics have high correlation with selected static and dynamic metrics. The empirical results also suggest that CCT metrics are capable of providing additional valuable information for comprehending scenario-level software evolution.