Software companies usually develop a set of product variants within the same family that share certain functions and differ in others. Variations across software occur to meet different customer requirements. Thus, evolve overtime cope with new A engineer who deals this may find it difficult understand evolution scenarios have taken place over time. In addition, identifier names are important r...