20th IEEE International Conference on Software Maintenance (ICSM'04)
UML-Based Reverse Engineering and Model Analysis Approaches for Software Architecture Maintenance
Chicago, Illinois
September 11-September 14
ISBN: 0-7695-2213-0
This paper proposes a UML-based software maintenance process. The process is guided by architectural descriptions and existing architectural models. The descriptions are given as variants of UML profiles describing the styles and rules relevant for a particular application domain. A reverse engineering subprocess, combining top-down and bottom-up reverse engineering activities, aims at constructing the architectural models. Resulting models are investigated in a model analysis subprocess. The models are checked against the profiles to find violations against the given architectural rules when maintaining and developing the subject system, and they are further analyzed using a set of UML model processing operations. The proposed approach is applied for maintaining a large-scale product platform architecture and real-life product-line products built on top of this platform. The model analysis results of the case study are discussed.
Index Terms:
Reverse Engineering, Software Architecture, Architecture Maintenance, Architecture Analysis, UML
Citation:
Claudio Riva, Petri Selonen, Tarja Syst?, Jianli Xu, "UML-Based Reverse Engineering and Model Analysis Approaches for Software Architecture Maintenance," icsm, pp.50-59, 20th IEEE International Conference on Software Maintenance (ICSM'04), 2004