Dashboards, una herramienta para gestionar datos

En un mundo donde los datos abundan, las empresas han ido buscado administrar la información de la mejor manera posible, para mantener la eficiencia y crecimiento de su negocio. En esa búsqueda es que ha surgido una herramienta que ha adquirido gran fuerza: los llamados Tableros de control (o Dashboards). 

Un Tablero de control es una interfaz computacional con gráficos, reportes, indicadores que son consolidados en una plataforma de información con el fin de tener una visión clara del negocio.

Con los Tableros de control, las empresas podrán conocer en tiempo real cómo se encuentra el negocio, obteniendo datos que facilitarán la toma de decisiones, aumentarán la precisión y eliminarán las probabilidades de errores.

Según la experiencia y el trabajo de Fx2 en soluciones que utilizan Dashboards (Conoce nuestro trabajo para la empresa Ternium), el siguiente post tiene como objetivo contar a primera vista qué son los tableros de control, usando ASP.NET MVC y cómo se han convertido en una importante herramienta para las organizaciones.

dashboards
Fig. 1: Tablero de commandos con datos ficticios

Entonces, ¿cómo aplicamos MVC al desarrollo de tableros?

  • Modelos: Son los encargados de acceder a los datos sin importar el medio en donde se encuentren. Pueden estar almacenados en una base de datos local, remota, servicio web, etc.
  • Vistas: En esta parte del esquema se muestra la información al usuario mediante gráficas, indicadores, semáforos, etc.
  • Controladores: Son los encargados de procesar los datos y la interacción del usuario. Recibe los datos aportados por el usuario desde las vistas, hace chequeos de los mismos, interactúa con los modelos, y hace de intermediario entre las vistas y modelos.

Veremos brevemente cada una de las partes de este esquema. Empecemos con las Vistas

Para el desarrollo de tableros y la presentación mediante gráficas, una buena opción a utilizar es Highcharts. Nos ofrece diferentes tipos de gráficos, según la necesidad de la situación, y con muchas opciones de configuración.

Fig. 2: Algunos de los muchos tipos de gráficas que se pueden implementar con Highcharts

Una de las características de Highcharts es que funciona completamente en JavaScript, tanto la configuración como la carga de datos. Esta última se hace de forma asíncrona mediante AJAX, y es el lazo de conexión entre Vista y Controlador. Cada gráfica se alimenta con una llamada AJAX diferente, por lo que, a medida que cada petición se completa, se muestra la gráfica correspondiente.

Fig. 3: Animación mostrando la carga de graficas

Luego de cargada la gráfica podemos activar/desactivar series al hacer clic en el nombre de la serie.

Fig. 4: Animación mostrando ocultamiento de series

Otra funcionalidad muy interesante, es la posibilidad de maximizar una gráfica para que adopte el espacio total dentro del navegador. De esta forma se puede mejorar la lectura e interpretación de la gráfica, sobre todo, si la gráfica posee muchos datos, o cuando el tamaño de la misma es reducido.

Esta funcionalidad se implementó a pedido del cliente y mediante codificación propia. La llevamos a cabo usando JavaScript, JQuery y CSS.

Fig. 5: Animación mostrando el maximizado de una gráfica

Fig. 6: Animación mostrando el maximizado de una gráfica

También a pedido del cliente, se ha dividido el tablero en pestañas. De esta manera se permite agrupar graficas/indicadores/semáforos según un tema en común, o según una zona geográfica, etc. Cada cliente tiene la posibilidad de personalizar el tablero según su conveniencia para mejorar el impacto y comprensión visual.

Fig. 7: Animación del cambio de pestañas

El siguiente eslabón dentro de la estructura MVC es el Controlador.

El controlador es responsable de las siguientes tareas:

  • Localizar el método o acción apropiado para procesar las llamadas AJAX desde las vistas.
  • Validar que los datos tengan el formato correcto y valores permitidos.
  • Manejar los posibles errores que puedan ocurrir en el proceso.
  • Controlar el acceso a cada parte del proceso según los permisos que disponga el usuario.
  • Se encarga de recibir los datos desde los Modelos, y lo entrega a las Vistas
  • Si fuera necesario, según la necesidad del cliente o del negocio, el controlador podría operar sobre los datos para transformarlos, agruparlos, desagruparlos, o cualquier acción que sea necesaria sobre los mismos, para agregarles valor o mejorar la comprensión sobre ellos.

Por último, llegamos al Modelo, que comprende los elementos que acceden al almacén de datos. Desde el controlador se envía el pedido a un manejador (Handler) quien se encargará de gestionar los siguientes pasos para recuperar los datos.

Luego que el modelo obtiene los datos que se solicitan, los devuelve al controlador. Con este último paso completamos el flujo de información desde la vista hacia los datos, y viceversa.

dashboards
Fig. 8: Modelo MVC y sus relaciones

Power BI, una ventana a los datos que de verdad importan

Power BI es una herramienta de bussiness intelligence (BI). Consiste en un conjunto de estrategias y herramientas enfocadas al análisis de datos existentes de una empresa para facilitar la toma de decisiones.

La aplicación puede ser utilizada tanto en computadoras como en dispositivos móviles, de forma online o mediante una herramienta de escritorio. Las posibilidades de uso son realmente numerosas. Seguir leyendo…

Post by Silvio Kucharski, desarrollador de Fx2.