Understanding the legacy of code in a software ecosystem is critical for the organization that is the owner of the ecosystem as well as for individual developers that work on particular systems in the ecosystem. Model driven development (MDD) techniques contain several important categories of information which cover this knowledge.
One of them is description of how do projects or other modules of our software ecosystem depend on each other. There are two solutions in this case.
Developers can describe the dependencies by hand. This can be painful and error prone process.
Another solution is recovering the dependencies using some reverse-engineering process. There are some existing technologies today.
One of them is an Ecco model.This paper discusses a potential of this technology for recovering inter-project dependencies from Java based software ecosystems.