rubycritic icon indicating copy to clipboard operation
rubycritic copied to clipboard

TreeMaps and Dependency Structure Matrix to inspect code architecture quality

Open mottalrd opened this issue 1 year ago • 1 comments

Good morning RubyCritic community, I use this tool often and I am very grateful for all your contributions here!

I love the churn/complexity visualisation of RubyCritic and I am wondering if other code visualisations have been considered for implementation. These are some visualisations that I would love to see in RubyCritic: (a) Treemaps (here). CodeCity is another cool variation of this here (b) Dependency Structure Matrix (here)

Has any of these been considered for implementation? If so can anyone point me to the conversation?

Thank you 🙏 have a good day Alfredo

mottalrd avatar Jul 23 '24 06:07 mottalrd

@mottalrd Hey Alfredo, thanks for suggesting this idea!

I've thought about a topic that is tangential to what you are talking about: Dependency Freshness.

@mscottford has talked about this in the Software Engineering Radio podcast: https://www.youtube.com/watch?v=_Ob8RanicKE

It's based on this paper: https://ieeexplore.ieee.org/document/7202955

For some of my projects I've been using these tools:

  • next_rails -- in spite of its name, this gem works with any ruby project: bundle_report outdated will give you a percentage showing how many dependencies are out of date in your system.
  • libyear-bundler -- this tool will give you an idea of the "libyears" for all of your dependencies.

Those two tools give me an idea of "dependency freshness" for a Ruby application.

Did you have an existing Ruby gem in mind when it comes to adding a dependency structure matrix analysis?

etagwerker avatar Jul 24 '24 15:07 etagwerker