When talking about architecture the first priority is to remove cycles between packages by cutting undesired dependencies.
How to Hunt for Cycles?
Add the Package design widget on your dashboard:
Drill down to the Dependency Structure Matrix (DSM).
Dependency Structure Matrix
The DSM is a compact way to represent and navigate across dependencies between components. According to the navigation level, those components can be Maven modules, packages or files:
A row can be selected by clicking on the component name :
Colors are used to help visualize row dependencies at a glance :
Which means that green components depend on blue components which depends on orange components. Here is a simple example on commons collections project:
A cell can be selected by clicking on the number of file dependencies :
DSM Sorting and Cycles
Find Usages for Dependencies
Zoom into a Component to get Dependencies Between Sub-components