Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are some open source tools to check a software architecture's robustness?

I think it is a tough question but I want to verify the architecture of my software is robust enough.

I've plans to execute these tools on my code:

  • Gendarme
  • FxCop
  • StyleCop
  • Visual Studio's code metrics
  • Visual Studio's code analysis

But I want some tools to check (among others):

  • the relations between assembly's' dependencies
  • too strong coupling between my objects
  • and so forth.

In a word, I want open source tools to highlight any architectural glitches of my project.

I understand the best tool is an experienced architect, but even the best carpenter needs a good hammer ;)

like image 631
JiBéDoublevé Avatar asked Oct 14 '11 14:10

JiBéDoublevé


1 Answers

The built-in Visual Studio tools are good, if you have the advanced editions.

You can also look at nDepend, which is a tool to do static analysis and point out areas of your system that have a high number of dependencies or coupling, among many other features. nDepend is a commercial product, but has a free academic license and is free to use if you are working on open-source development -- so this may or may not meet your criteria.

Be aware that all of these tools have a learning curve, and you are probably not going to have a "silver bullet" that tells you exactly what to change on your system, but they can be really useful to improve performance and maintainability, and reduce risk.

like image 182
Guy Starbuck Avatar answered Sep 23 '22 13:09

Guy Starbuck