Cómo desarrollar aplicaciones de IoT
Preguntas importantes entre desarrollos
Estas preguntas son importantes para los desarrolladores de aplicaciones de IoT. ¿Cuál es la mejor manera de crear una "aplicación de Internet de las cosas" que pueda hacer cualquier cosa, desde controlar de forma remota una aplicación doméstica hasta notificar al fabricante sobre un cambio de motor que requiere mantenimiento? ¿Qué habilidades deben tener los desarrolladores? ¿Por dónde empezar?
El inicio del desarrollo de aplicaciones IoT está en sí mismo. Estos dispositivos de borde normalmente no tienen pantallas (aunque no siempre), tienen procesadores de bajo consumo, ejecutan algún tipo de sistema operativo integrado y utilizan uno o más protocolos de comunicación para comunicarse (generalmente de forma inalámbrica). Estas cosas pueden estar conectadas directamente a la red, a los vecinos y a las puertas de enlace de la red y, en general, parecen una caja con algunas luces brillantes.
La siguiente capa del sistema, la capa de integración, es el software y la infraestructura que se ejecutan en el centro de datos empresarial o en la nube para recibir y administrar flujos de datos de varias cosas. El software que se ejecuta en la capa de integración suele ser responsable de gestionar estas cosas también, actualizando el firmware cuando sea necesario.
El siguiente paso es la capa de análisis, que se utiliza para gestionar y procesar datos. Finalmente, está la capa de usuario final, donde se utilizan aplicaciones para comunicarse entre usuarios. Pueden ser aplicaciones empresariales, pueden ser aplicaciones web o pueden ser aplicaciones móviles.
Si estás pensando en cómo crear aplicaciones de IoT, las dos últimas capas serán a las que estarás más expuesto. Como desarrollador, es posible que no tenga las herramientas para manejar estos dispositivos de borde o puertas de enlace, o la capacidad de adaptarse a la capa de integración.
Por eso tiene sentido comenzar a crear una aplicación con una “plataforma IoT” que ya esté implementada. Estas plataformas suelen incluir una capa de integración que aloja datos de entrada de series temporales, una capa de análisis, capacidades de aprovisionamiento ligero, activación y gestión, un bus de mensajería en tiempo real y API de comunicación entre las plataformas y las aplicaciones construidas sobre él.
Hay muchas empresas en el mercado que ofrecen este tipo de plataformas. Están Xively, Mnubo, Bug Labs y ThingWorx, todos los cuales tienen la capacidad de comunicarse con una gran cantidad de "cosas" producidas por diferentes fabricantes.
También hay algunas empresas conocidas, como los servicios de sistemas inteligentes de Microsoft, y fabricantes de software empresarial como las soluciones IoT de SAP. Estos fabricantes han agregado funciones IoT a sus productos.