Authors
Sayyed Garba Maisikeli, Al-Imam Muhammad Ibn Saud Islamic University, Kingdom of Saudi Arabia
Abstract
When a software system evolves, new requirements may be added, existing functionalities modified, or some structural change introduced. During such evolution, disorder may be introduced, complexity increased or unintended consequences introduced, producing ripple effect across the system. JHotDraw (JHD), a well-tested and widely used open source Javabased graphics framework developed with the best software engineering practice was selected as a test suite. Six versions were profiled and data collected dynamically, from which two metrics were derived namely entropy and software maturity index. These metrics were used to investigate degradation as the software transitions from one version to another. This study observed that entropy tends to decrease as the software evolves. It was also found that a software product attains its lowest decrease in entropy at the turning point where its highest maturity index is attained, implying a possible correlation between the point of lowest decrease in entropy and software maturity index.
Keywords
Software Evolution, Software maintainability and degradation, Change ripple-effect, Change Impact, Change Propagation