Logo

6.4 Namespace and package dependencies

Namespace Dependencies and Package Dependencies are a polymetric views in which each node is a namespace or package and each edge represents a dependency. The graph is laid out in layers such that each node is placed below the client node. When there exist multiple clients at various levels, the node is placed below the client from the lowest level. Thus, the namespaces or packages from the bottom is the one that is used by many clients, but uses nobody, and those from top are used by no other namespace or package.

The nodes are enhanced with the following metrics:

  • the width is given by the number of classes (NOCls) in the namespace or package, and
  • the height is provided by the number of methods (NOM) in the namespace or package.

The figure below shows an example of this visualization as applied to ArgoUML 0.28.1. It can be obtained by selecting a namespace group and executing: Visualize/Namespace Dependencies.

Example of the Namespace Dependencies visualization

One important concern when analyzing dependencies is the identification of cycles. A variation of the above visualization can be seen below with the namespaces involved in a cycle marked with a red color. This visualization can be obtained from the contextual menu of a namespace group: Visualize/Namespace Dependencies with Cycle.

Example of the Namespace Dependencies with Cycles visualization

User Contributed Notes

tudor (15 August 2011, 10:10 am)

Thanks.

Richard_A_Green (14 August 2011, 7:43 pm)

can be seen below with the namespaces involved in a circle

change to:

 

can be seen below with the namespaces involved in a cycle

Add a Note