A Design-Driven Software Change Impact Model using UML

M.-H. Tang, W.-L. Wang, and M.-H. Chen (USA)


Impact analysis, UML, design evaluation, maintenance


Software changes are frequently requested and can take place at different stages of the software life cycle. Techniques for early impact analyses before code change can help prioritize the change requests and save cost. In this paper we present a design-driven model that takes a Unified Modeling Language (UML) system design as input to perform multi-phase change impact analyses. For a proposed change, the first phase determines the potential impact of carrying out the change. The later phases iteratively analyze ripple effects and change propagations of a performed change. In addition, we introduce various change types to classify dependencies among software entities at different levels of granularity, and define a grammar to model the dependencies. The entities related to the change are then identified by slicing through grammar derivation. Our design-driven approach promotes impact analysis to the design stage and supports recursive analysis to reflect chaining changes. A case study showed that this approach is both efficient and effective.

Important Links:

Go Back