XDepend 1.0, herramienta para examinar dependencias de los proyectos Java
miércoles, septiembre 23, 2009 at 9:49AM XDepend es una herramienta que permite examinar bytecode Java y estudiar las dependencias entre las distintas clases y paquetes del bytecode. XDepend representa cada proyecto Java empleando una interfaz gráfica claramente en inspirada en la herramienta opensource WinDirStat, una herramienta que permite explorar el contenido del sistema de ficheros de una máquina Windows.
En esta representación, todo el código se representa mediante un gran rectángulo, y dentro de ese rectángulo hay rectángulos más pequeños que representan paquetes. El tamaño de cada uno de estos rectángulos es proporcional al volumen de código (o alguna otra métrica como la complejidad ciclomatica o similar) del paquete. Dentro de cada paquete, las clases se representan como rectángulos más pequeños, y nuevamente su tamaño es proporcional al número de líneas de código de cada clase.
Empleando esta representación, es fácil identificar donde hay más código en nuestro sistema, o buscar clases muy grandes. La herramienta también permite visualizar un grafo donde se pueden observar de modo explícito las dependencias entre paquetes, y navegar a través de ellas.
XDepend es una herramienta comercial. Existe una versión gratuita para proyectos opensource o fines educacionales, pero tiene deshabilitada la funcionalidad más interesante (por ejemplo, te dejan ver grafo de dependencias, pero no hacer zoom sobre él, con lo que para cualquier proyecto de tamaño mediano o grande el grafo resulta completamente inútil). Una licencia comercial cuesta 300 euros.
Por cierto, a modo de curiosidad, la herramienta está implementada en... .NET.
j2se 