Software architecture in practice
Software architecture in practice
Proceedings of the Conference on The Future of Software Engineering
Decomposing legacy programs: a first step towards migrating to client-server platforms
Journal of Systems and Software - Special issue on software maintenance
Software restructuring: implementing a code abstraction transformation
SAICSIT '02 Proceedings of the 2002 annual research conference of the South African institute of computer scientists and information technologists on Enablement through technology
Proceedings of the 2002 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Architecture, design, implementation
Proceedings of the 25th International Conference on Software Engineering
Method and Process for Iterative Reengineering of Data in a Legacy System
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
Exploring Legacy Systems Using Types
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
Types and Concept Analysis for Legacy Systems
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
Atomic Architectural Component Recovery for Program Understanding and Evolution
ICSM '02 Proceedings of the International Conference on Software Maintenance (ICSM'02)
Dynamic Component Program Visualization
WCRE '02 Proceedings of the Ninth Working Conference on Reverse Engineering (WCRE'02)
Moving Towards Quality Attribute Driven Software Architecture Reconstruction
WCRE '03 Proceedings of the 10th Working Conference on Reverse Engineering
Hi-index | 0.00 |
Software reengineering involves the activities of studying target system's architecture. However, enterprise legacy software systems tend to be large and complex. The analysis of system architecture therefore becomes a difficult task. To solve the problem, we propose an approach that decomposes software architecture to reduce the complexity associated with analyzing large scale architecture artifacts. Our study has shown that architecture decomposition is an efficient way to limit the complexity and risk associated with the re-engineering activities of a large legacy system. It divides the system into a collection of meaningful modular parts with low coupling, high cohesion, and minimizes the interface, thus to facilitate the incremental approach to implement the progressive software re-engineering process. To fulfill this goal, we have developed two major techniques to decompose legacy system architecture. In this paper, we present them in detail. The approach is also supported by our automated reverse engineering tools, and the preliminary experimental result shows our approach is very promising.