Justificación y objetivos

From Viasco

Jump to: navigation, search

Una de las principales causas de error en los diseños se debe a que los arquitectos no consiguen disponer en ningún momento de una visión global e integrada del sistema ni de sus conexiones. Esto no es problema en sistemas con pocos componentes, pero diseñar sistemas que integren a centenares de componentes impensable a menos que se disponga de herramientas específicas para ello, por el número de configuraciones y de interconexiones que se manejan.

La visualización es una técnica semi-automatizada que combina el pre-procesamiento y representación de los datos, con la capacidad que tienen los humanos para analizar los datos de forma gráfica. De esta forma es posible usar técnicas de visualización de diferentes parámetros o medidas de la aplicación para detectar de forma fácil algunos problemas o errores potenciales de la misma a partir de su representación, por ejemplo, como gráficos en 3 dimensiones.

Como resultado final del proyecto se ha construido una herramienta que soporta varias técnicas de visualización, y que permiten representar y analizar aplicaciones basadas en componentes.

Dicha herramienta se caracteriza por

  • ser capaz de analizar el código C++ y componentes (DLLs, OCXs) de las aplicaciones a visualizar, y extraer de ellas los modelos correspondientes (trabajo realizado por el grupo de UCLM)
  • convertir dichos modelos de clases C++ en modelos de componentes
  • implementar un conjunto de medidas que permiten al usuario evaluar aspectos fundamentales de un sistema basado en componentes (tamaño, acoplamiento, cohesión, etc.),
  • visualizar, a partir de los modelos y sus medidas los aspectos deseados del sistema, permitiendo realizar zooms sobre las zonas deseadas, así como giros y evoluciones sobre determinados ángulos.

En la siguiente imagen mostramos el diagrama de todo el proceso:

Image:procesoV.jpg

En su versión actual la herramienta permite distintos tipos de visualizaciones, usando diferentes metáforas.

En primer lugar se ha adaptado VERSO, que es una herramienta muy potente de visualización de aplicaciones orientadas a objetos, para visualizar nuestros modelos de componentes usando la metáfora de la ciudad. Información sobre VERSO puede encontrarse en el artículo Exploring the Evolution of Software Quality with Animated Visualization y en la presentación Exploring the Evolution of Software Quality with Animated Visualization.

Por otro lado se ha utilizado la herramienta Prefuse para implementar varias metáforas de visualización, como los asteroides y la visualización radial (véanse algunos ejemplos en la página EJEMPLOS).

Cada una de las metáforas se caracteriza por ofrecer puntos de vista distintos del sistema basado en componentes, que pueden ayudar a revelar posibles anomalías en el diseño de la aplicación software basada en componentes.

Personal tools