Title :
A Probabilistic Approach to Predict Changes in Object-Oriented Software Systems
Author :
Sharafat, Ali R. ; Tahvildari, Ladan
Author_Institution :
Dept. of Electr. & Comput. Eng., Waterloo Univ., Ont.
Abstract :
Predicting the changes in the next release of a software system has become a quest during its maintenance phase. Such a prediction can help managers to allocate resources more appropriately which results in reducing costs associated with software maintenance activities. A measure of change-proneness of a software system also provides a good understanding of its architectural stability. This research work proposes a novel approach to predict changes in an object oriented software system. The rationale behind this approach is that in a well-designed software system, feature enhancement or corrective maintenance should affect a limited amount of existing code. The goal is to quantify this aspect of quality by assessing the probability that each class will change in a future generation. Our proposed probabilistic approach uses the dependencies obtained from the UML diagrams, as well as other data extracted from source code of several releases of a software system using reverse engineering techniques. The proposed systematic approach has been evaluated on a multi-version medium size open source project namely JFlex, the fast scanner generator for Java. The obtained results indicate the simplicity and accuracy of our approach in the comparison with existing methods in the literature
Keywords :
Unified Modeling Language; configuration management; object-oriented programming; probability; resource allocation; reverse engineering; software architecture; software maintenance; stability; JFlex; Java; UML diagrams; architectural stability; changes prediction; cost reduction; object-oriented software systems; open source project; probabilistic approach; resource allocation; reverse engineering; scanner generator; software maintenance; Costs; Data mining; Java; Resource management; Reverse engineering; Software maintenance; Software measurement; Software systems; Stability; Unified modeling language;
Conference_Titel :
Software Maintenance and Reengineering, 2007. CSMR '07. 11th European Conference on
Conference_Location :
Amsterdam
Print_ISBN :
0-7695-2802-3
DOI :
10.1109/CSMR.2007.9