Retriever is an open-source tool that implements a novel model-driven reverse engineering approach to automatically extract, refine, and integrate software architecture models from heterogeneous artifacts (e.g., source code, configuration files, build scripts, and docker files). This repository contains all the code, extraction rules, composition and refinement modules, and evaluation data from the associated scientific articles.
Using Retriever, researchers and practitioners can
- Automatically recover both structural and behavioral views of complex software systems.
- Integrate disparate artifact data into a unified, component-based architectural model.
- Generate models that serve as the basis for quality prediction and continuous architectural review in CI/CD pipelines.