问题
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.
回答1:
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!
回答2:
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:


回答3:
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.
回答4:
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.
回答5:
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.
回答6:
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.
回答7:
You could try the open source tooling at https://dsmsuite.github.io/. I developed the DSM tooling because I like the DSM approach, but hardly any open source tooling was available. It supports C/C++ (based on file includes) Java and .net (both based on import binaries)
来源:https://stackoverflow.com/questions/1841552/what-are-the-open-source-alternatives-to-lattix