mix arch.dsm (Archeometer v0.5.0)

Mix Task to perform a Design Structure Matrix (DSM) analysis.

Usage:

mix arch.dsm [options]

The following options are accepted:

  • --app - Application name
  • --ns - Namespace of the modules considered
  • --db - Database filename
  • --format - Can be one of txt (default) or svg
  • --out - Output filename. Defaults to console
  • --skip-tests - Skips test related modules (default)
  • --no-skip-tests - Avoids skipping test related modules

Both options --app or --ns can be used at the same time in order to have fine grained control of the set of modules considered in the analysis.

If none of --app or --ns options are given, all modules in the project are considered.

Namespace is interpreted very broadly since Elixir doesn't have that concept. Namespace can be interpreted as a string matching the beginning of the module names to be considered, such as "Foo" or "Foo.Bar", after which a last part of the name must be given to create a full module name.

For example the "namespace" Foo will include in the analysis modules such as Foo.Bar, Foo.Baz and Foo.Bar.Buzz, but not FooBar or Food.