Hace poco, una empresa que solicitó nuestra app de conteo de personas nos preguntó por todos las especificaciones técnicas y funcionalidades que ofrecíamos. Después de todo, compararán con otros proveedores para ver quién ofrece más y mejores cosas.
En este artículo mencionamos con gran detalle las especificaciones técnicas de Porter — y lo que deberías exigir al proveedor con el que trabajes. Cubrimos todo, desde el hardware hasta el software, mencionando puntos que pocos preguntan pero son muy importantes como las medidas que tomamos para asegurar la seguridad y privacidad de los datos.
Generalmente, el departamento que pregunta por estas soluciones es el de marketing, pero al ser una solución tecnológica, hay varios detalles técnicos que pueden obviar o ignorar. Si tienes alguna duda con los términos, no dudes en contactarnos por medio de nuestro chat.
Hardware y software
Hardware y software de conteo de personas: cámaras de video con software de reconocimiento de imágenes capaz de detectar cuerpos humanos, su desplazamiento y dirección (i.e. distinguir entradas y salidas).
El proveedor debe estar en capacidad de auditar la precisión, por ejemplo, con videos donde se muestre el algoritmo de reconocimiento de personas funcionando.
El proveedor debe ser capaz de implementar mantenimiento y actualizaciones del software de forma remota, sin la necesidad de que un técnico realice modificaciones frecuentes para dichos ajustes.
Capacidad de almacenamiento de datos por parte del dispositivo en el caso de que se pierda la conexión a Wi-Fi por periodos cortos de tiempo, y se envíen los datos una vez se restablezca la conexión.
Su instalación debe, idealmente, constar de conexión a energía eléctrica y el envío de datos a través de Wi-Fi, con el fin de evitar sobre costos en instalaciones complejas que requieran del uso del circuito cerrado de televisión o cableado que implique modificar o alterar las instalaciones físicas.
Software de visualización de datos: el software debe estar alojado en la nube, permitiendo su acceso desde cualquier dispositivo con conexión a internet, a diferencia de una instalación local que dificulte el acceso a los datos de forma remota.
Reportes y visualización de datos
Interfaz intuitiva y personalizable por el usuario final: la interfaz de visualización de datos debe permitir al usuario final crear y editar visualizaciones y tableros de datos, idealmente con una interfaz que permita arrastrar y colocar los elementos de forma personalizada.
Tipos de visualización: el software debe permitir crear visualizaciones variadas como métricas, gráficos de líneas, manómetros, tablas, gráficos de pastel, histogramas, gráficos de dispersión y doble eje, entre otros, con el fin de obtener más herramientas para la visualización e interpretación de los datos de tráfico.
Incorporación de código HTML y Javascript: la aplicación debe permitir al usuario final desarrollar sus propias visualizaciones personalizadas, incorporando códigos en HTML y Javascript, con el propósito de permitir al equipo de TI de la empresa diseñar visualizaciones a la medida, específicas, en el caso de ser requerido.
Diseño responsive: la aplicación debe permitir al usuario final acceder a todas las funciones desde cualquier dispositivo, ya sea desktop, tablets o móviles.
Marcación de posición: idealmente, la aplicación debe permitir la marcación de ubicación de los dispositivos para poder generar visualizaciones en GPS, con el fin de reconocer la ubicación del punto de venta de cada uno sin depender únicamente del nombre otorgado por el usuario de cada dispositivo.
Programación de reportes: el proveedor debe permitir la automatización de generación de reportes y ser programadores en horas y días específicos.
Tiempo real: todos los gráficos, tableros y reportes deben mostrarse en tiempo real. De tal manera que se actualicen inmediatamente cuando reciben nuevos datos sin necesidad de actualizar la página .
Personalización de interfaz: posibilidad de modificar los colores, fondos y tamaños de las visualizaciones y la interfaz para facilitar la visualización de los datos.
Privacidad y seguridad de datos
Certificado SSL (HTTPS): el proveedor debe garantizar el encriptado de los datos entre sitios web y navegadores.
Retención de datos de al menos 18 meses: el proveedor debe proporcionar la capacidad del almacenamiento de los datos de tráfico por un histórico de al menos 18 meses.
Proveedores en la nube confiables: el proveedor debe alojar su aplicación web con datacenters confiables que cumplan con directrices y estándares como ISO27001, ISO27017, ISO27018, ISO22301 o SAS70.
Autenticación basada en tokens para el envío de datos y uso de API: El proveedor debe contar con una api. API (application programming interface, por sus siglas en inglés) para la interacción con otras plataformas o fuentes. Este envío de datos de datos debe hacerse —como sugieren las buenas prácticas en seguridad—a través de tokens, mitigando la exposición del acceso a los datos por parte de un usuario no deseado.
Back-up de los datos: el proveedor debe realizar backups (o copias de seguridad) para evitar la pérdida de datos en el caso que se presente alguna falla.
Redundancia: el proveedor debe poseer redundancia en su nube permitiendo así una alta disponibilidad y seguridad de los datos.
Administración de usuarios
Capacidad de crear un alto volumen de usuarios: la app permite la creación del número de usuarios que sean requeridos por el cliente.
Capacidad de administrar (i.e. otorgar y denegar) acceso a cada usuario a distintos elementos de la aplicación, como dashboards, alertas y dispositivos, desde una cuenta super administradora.
Capacidad de administrar el permiso para cada usuario de edición o visualización de los elementos.
En general, el módulo de administración de usuarios debe cumplir con las buenas prácticas del protocolo AAA (Authentication, Authorization, and Accounting, por sus siglas en inglés), para evitar usuarios no deseados que puedan acceder a esta información de carácter sensible.
Tratamiento de datos
Exportación de datos en formato Excel y CSV: se debe habilitar la capacidad exportar los datos en formato CSV o Excel para permitir generar reportes y análisis adicionales.
Compartir y presentar datos: capacidad de compartir visualizaciones y dashboards específicos por medio de URLs o códigos embebidos. Estas opciones permitirán entregar información y dar acceso a dashboards a individuos sin la necesidad de crear un usuario nuevo.
Alertas automatizadas
Tipos de alertas: el proveedor debe permitir formatos de alertas automatizadas como emails, SMS, otros servicios de mensajería instantánea alternativos y Webhooks para recibir notificaciones en servicios web.
Motor de alertas: obtener la capacidad de crear alertas basada en reglas condicionales del valor de los datos o si el dispositivo presenta actividad o no, en rangos determinados de tiempo (e.g. el dispositivo ha estado inactivo por más de 5 minutos, o disparar una alerta cuando las lecturas de tráfico superen 500, al día).
Las alertas deben poder ser aplicables cuando se den reglas de mayor que, igual que, menor que, mayor o igual que o menor o igual o igual que.
Adicionalmente, se debe permitir que las alertas no solo se creen basadas en los datos de tráfico, sino con cualquier valor de variables y operaciones entre ellas, por ejemplo, el número de transacciones o la tasa de conversión (que se compone de ventas y tráfico en un periodo de tiempo determinado).
Personalización: el proveedor debe permitir al usuario final personalizar los mensajes de notificación y el destinatario. Esto permitirá, por ejemplo, enviar alertas al equipo de marketing cuando se alcance un objetivo de tráfico o a mantenimiento cuando algún dispositivo deje de funcionar.
Programación de alertas: se debe permitir que los eventos sean activados en días y horas específicos para evitar saturación o una interpretación equivocada. Esto permitirá, por ejemplo, no activar alertas de no funcionamiento de un dispositivo un fin de semana, cuando los puntos de venta en realidad no están trabajando.
Integraciones
API: el proveedor debe contar con una API (Application Programming Interface, por sus siglas en inglés) que permitan las integraciones y comunicación con otras aplicaciones sin requerir un número significativo de horas en desarrollo a la medida. Esto permitirá facilitar el proceso de integración de los datos de tráfico con los de ventas del sistema POS actual.
El proveedor debe poseer un MQTT API y un RESTful API integrado en su plataforma en la nube.
Motor de operaciones matemáticas
Generación de operaciones matemáticas a partir de los datos: la aplicación debe permitir al usuario final la ejecución de operaciones matemáticas para la transformación de los datos. Por ejemplo:
Entregar lecturas y valores por minutos, rango de minutos, horas, semanas, días o meses. De esta forma, se permite generar visualizaciones de tráfico o tasa de conversión en distintos periodos de tiempo.
Entregar el valor de tasa de conversión o tráfico más bajo o más alto que se haya presentado en un periodo, con el fin de conocer comportamiento atípico de los datos.
Redondear valores para facilitar la interpretación y visualización de los datos.
Ejecutar operaciones matemáticas como sumas, restas y promedios. multiplicaciones y divisiones con distintos tipos de datos. Esta función es esencial porque permite calcular la tasa de conversión, que es la división del número de transacciones y el tráfico de un establecimiento en un periodo de tiempo determinado. También, por ejemplo, permite calcular otros indicadores como el tráfico total presentado en varios puntos de venta, el tráfico promedio por metro cuadrado, que requiere que el usuario manualmente realice la operación de hallar el promedio de tráfico de un establecimiento y dividirlo por el número de metros cuadrados del mismo.
Codificar sus propias funciones, filtros, limpieza de datos y agregación de datos.