JavaCompExt: Extracting Architectural Elements from Java Source Code
Nicolas Anquetil, Jean‐Claude Royer, Pascal André, Gilles Ardourel, Petr Hnětynka, Tomáš Poch, Dragoş Petraşcu, Vladiela Petraşcu · 2009
Abstract—Software architecture erosion is a general problem in legacy software. To fight this trend, component models and languages are designed to try to make explicit, and automatically enforceable, the architectural decisions in terms of components, interfaces, and allowed communication channels between component interfaces. To help maintainers work on existing object-oriented systems, we explore the possibility of extracting architectural elements (components, communications, services, ...) from the source code. We designed a tool based on some heuristics for extracting component information from Java source code.