I have gotten the opportunity to work with Lattix in the past. I believe the paradigm it represents (a hierarchical dependency matrix) is the future of large-scale system architecture management.
However the companies I work for are always put off by the price tag. Is anyone aware of any good open-source alternatives that exist? After much searching I can't seem to find one.
There are some open source tools that implement the core functionality of Lattix, DSM (Design or Dependency Structure Matrix) listed here:
http://en.wikipedia.org/wiki/Dependency_Structure_Matrix
The recent release of dtangler 2.0 has an something in its release notes you might find interesting:
dtangler 2.0.0. is released! The major new feature is the ability to read dependency information from a plaintext file. In other words: it's not just for java - now you can generate a dependency structure matrix that describes whatever you want!
It is not a free tool (299 euros for a personnal license) but the tool NDepend comes with a Dependency Graph coupled with a Dependency Matrix. Disclaimer: I am one of the developers of the tool
Here are some screenshots:
I have not seen anything as powerful as Lattix to represent your code in a DSM. While NDepend will generate the DMS it is a static snapshot. Lattix is dynamic allowing the user to change the architecture of the code in the DSM model.
SonarQube has a free dependency analyzer (in my experience, less useful than Lattix). You can add the Package Design
widget to the dashboard and drill down. Instructions can be found here.
For a simple project, I found MaDGe - Module Dependency Graph.
Install with npm
npm -g install madge
List dependencies of all *.js files in directory src
madge path/src
Find circular dependencies of a particular file app.js
madge --circular path/src/app.js
There's also a graphing functionality, but I don't have that up and running yet.
If you or the companies you work for happen to use (the non free) IntelliJ IDEA Ultimate and Java, you can use its Dependency Structure Matrix.