摘要:Software change impact analysis (or impact analysis) plays a crucial role in software maintenance and evolution. Impact analysis aims at identifying the possible effects of a source code modification. It is often used to evaluate the effects of a change after its implementation. However, more proactive approaches use impact analysis to predict the effects of a change before it is implemented. In this way, impact analysis provides useful information that can be used, among others, to guide the implementation of the change and to support regression tests selection. This paper aims at proposing a change impact analysis model for Java programs. The model was designed to support predictive impact analysis. It includes several impact rules based on the Java language constructs. We performed an empirical evaluation of the model using several Java programs. In order to assess the model prediction quality, we used two measures (precision and recall). The reported results show that the model is able to achieve high accuracy.