Visualización de métricas 3D - Alternativa a seerene / Software Diagnostics Efficiency Platform

seerene (anteriormente "Efficiency Platform" de Software Diagnostics) es una herramienta que

  • calcula las métricas a partir del código fuente
  • muestra 3 métricas a la vez en una vista 3D (área, altura, color)

Aquí hay una captura de pantalla:

Captura de pantalla de la plataforma de eficiencia

Estoy buscando una herramienta que solo haga lo último (visualización).

La herramienta tendría que

  • tome la entrada en un formato bien definido (CSV, XML o similar, realmente no me importa), idealmente 4 columnas + encabezado. Las 4 columnas son el nombre del elemento (p. ej., clase/nombre de archivo) más 3 métricas (p. ej., líneas de código, complejidad, número de desarrolladores).
  • convertir esos números en cajas 3D, donde el área se calcula de acuerdo con el algoritmo del árbol cuadrado
  • ser capaz de cambiar de eje
  • proporcionar algo de navegación 3D

La herramienta

  • necesita ejecutarse en Windows 7 SP1 x64 (o posterior si es posible)
  • puede ser comercial, si es así, costará menos de 500 €
  • debe tener una versión de prueba gratuita ("Efficiency Platform" no tenía eso. Obtener una versión de prueba era posible por ~ 4k €, que era simplemente demasiado caro)

Yo he tratado:

  • usando Famix Generator para crear un modelo Moose y luego convertirlo en 3D con CodeCity . Desafortunadamente, esto ya falla en un programa simple de Hello World con el mensaje de error

    Causa del volcado: excepción no controlada: error de importación: clase EMOF desconocida 'FAMIX.FileAnchor'

  • SharpMetrics Workbench Community Edition, pero es solo para C# y estoy buscando una solución más genérica

Respuestas (2)

Sugeriría echar un vistazo a python y sus muchas bibliotecas de visualización como matplotlib , plot.ly o VPython .

  • Entrada : Python viene con buenas bibliotecas de análisis csv y xml
  • Squarify - Hay una implementación del algoritmo aquí
    • Esto diseñará sus áreas y puede agregar cualquier métrica que elija como altura
    • Sugeriría que deberá comenzar con el nivel más bajo de su estructura y cuadrar en cada grupo de nivel superior antes de cuadrar el siguiente nivel superior.
  • Capaz de seleccionar ejes Sí: puede seleccionar sus propios ejes según sea necesario
  • Navegación 3D: todas las bibliotecas anteriores brindan cierto grado de navegación y las dos primeras también brindan, listas para usar, una cantidad de opciones de salida para guardar sus vistas de datos.
  • Ejecutar en Windows 7/64 SP1 o posterior: lo anterior se ejecuta en casi cualquier cosa, desde una Raspberry Pi, pasando por Windows XP..10, OS-X, Linux hasta clústeres de supercomputadoras.
  • Puede ser comercial pero < 500€ - todo lo anterior está disponible para uso comercial y a 0,00€ son definitivamente <500€
  • debe tener una versión de prueba gratis - No hay versión de prueba, solo la versión completa gratis .

Parece que Code Charta ( https://github.com/MaibornWolff/codecharta ) puede ser lo que estás buscando. Es gratuito y de código abierto y el componente de análisis es independiente de la visualización HTML5 que toma un archivo de entrada JSON y produce el mapa de árbol 3D navegable.

Consulte la demostración en línea aquí https://maibornwolff.github.io/codecharta/visualization/app/

Divulgación completa: trabajo para la empresa que abrió la herramienta.