Given that the code should have this structure
+-------------+ +------------+ | |------------------>| | | Repoistories| | Entities | | | +-------->| | +-------------+ +------------+ ^ | | | | | +------+------+ | +------------+ | |---------+ | | | Services |------------------>| DTO | | | +-------->| | +-------------+ | +------------+ ^ | | | | | +------+------+ | | |---------+ | Views | | | +-------------+
the tests should fail if there is any violation against the ruleset.
Tools to check:
-
Degraph [http://schauder.github.io/degraph/] (Done)
-
JqAssistant http://jqassistant.org/ (Done)
-
Macker [https://innig.net/macker/]
-
XRadar [http://xradar.sourceforge.net/]
-
Architexa [http://www.architexa.com]
-
JDepend + Google Architecture Rules [http://architecturerules.googlecode.com/svn-history/r303/docs/alternatives.html] (kicked out - because it´s old and complicated)
Commands:
-
mvn install to analyze system
-
mvn jqassistant:server to start a neo4j-instance on http://localhost:7474/browser/
-
mvn jqassistant:report to create a html-report from the generated html (created in folder /target/site/)