Augmenting pattern-based architectural recovery with flow analysis: Mosaic-a case study
- 23 December 2002
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 198-207
- https://doi.org/10.1109/wcre.1996.558904
Abstract
Understanding the overall organization of a software system, i.e. its software architecture, is often required during software maintenance: tools can help maintainers in managing the evolution of legacy systems, by showing them architectural information. The analysis of a medium-sized application using a pattern based architectural recovery environment is presented. The results obtained give useful information about the system architecture but also show some limitations of a purely pattern based approach. To overcome such limitations, architectural analysis algorithms have been augmented with information about control and data flow and the case study application has been re-analyzed. Complementing pattern matching with flow information has also allowed detection of architectural constructs when they are spread over different procedures in source code and to extract useful additional information through the use of constant propagation and slicing.Keywords
This publication has 17 references indexed in Scilit:
- Recovering reusable components from legacy systems by program segmentationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Multi-valued constant propagation for the reengineering of user interfacesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Toward a constraint-satisfaction framework for evaluating program-understanding algorithmsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Identifying reusable functions using specification driven program slicing: a case studyPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Program concept recognition and transformationIEEE Transactions on Software Engineering, 1992
- Recognizing a program's design: a graph-parsing approachIEEE Software, 1990
- Design recovery for maintenance and reuseComputer, 1989
- The Programmer's Apprentice: a research overviewComputer, 1988
- Delocalized Plans and Program ComprehensionIEEE Software, 1986
- PROUST: Knowledge-Based Program UnderstandingIEEE Transactions on Software Engineering, 1985