Backend as a service

De Wikipedia, la enciclopedia libre

Backend as a service (BaaS), también conocido como “mobile backend as a service”,[1][2][3]​ es un modelo para proporcionar a los desarrolladores web y de aplicaciones móviles una forma de vincular estas aplicaciones al almacenamiento en nube (cloud storage), servicios analíticos y/o otras características tales como la gestión de usuarios, la posibilidad de enviar notificaciones push y la integración con servicios de redes sociales.[4]​ Estos servicios se prestan a través de la utilización de kits personalizados de desarrollo de software (SDK) y las interfaces de programación de aplicaciones (API). BaaS es un modelo relativamente reciente en la computación en la nube,[5]​ donde la mayoría de empresas datan del 2011 o posterior.[6]

Propósito[editar]

Las aplicaciones web y móviles requieren un conjunto similar de características en su backend, incluyendo notificaciones push, analíticas, integración con redes sociales y almacenamiento en la nube.[7]​ Cada uno de estos servicios tiene su propia API que debe de ser incorporada individualmente a una aplicación, proceso que puede ser largo y complicado para los desarrolladores de aplicaciones. Los proveedores BaaS forman un puente entre el frontend de una aplicación y varios servicios backend en la nube a través de una API y SDK unificada.

Proporcionar una forma coherente para gestionar los datos del backend significa para los desarrolladores no tener que desarrollar su propio backend para cada uno de los servicios que sus aplicaciones necesitan acceder, ahorrando potencialmente tiempo y dinero.

Aunque es similar a otras herramientas de desarrollo web de computación en la nube, como el software como servicio (SaaS), infraestructura como servicio (IaaS) y plataforma como servicio (PaaS), BaaS se distingue de estos otros servicios ya que está específicamente dirigido a las necesidades de la computación en la nube de la web y de los desarrolladores de aplicaciones móviles, proporcionando un medio unificado de conectar sus aplicaciones a servicios en la nube.[8][9]

Modelo de negocio[editar]

Los proveedores de BaaS generan ingresos de sus servicios de diversas maneras, a menudo utilizando un modelo freemium. Bajo este modelo, un cliente recibe un determinado número de usuarios o llamadas API al mes y paga una cuota por cada usuario o llamada que excede este límite. Como alternativa, los clientes pueden pagar una cuota fija por un paquete que permita un mayor número de llamadas o usuarios activos por mes.

¿Qué debe ofrecer un proveedor?[editar]

La finalidad de un mBaaS es facilitarnos el desarrollo de aplicaciones móviles. Por lo tanto, algunas de las herramientas básicas que debe ofrecer un proveedor son:

  • SDK: Librería de fácil integración y uso que nos dé acceso a las funciones proporcionadas por el mBaaS. Debe estar disponible al menos para las principales plataformas: Android, iOS, Javascript, Xamarin, Windows Phone.
  • Analíticas: ¿Cómo están utilizando los usuarios la app? Es imprescindible tener una monitorización de propiedades del usuario y eventos de uso.
  • Crash reporting: Crashes y bloqueos son la principal causa de desinstalación de una aplicación. Y en el mundo móvil suceden fuera de nuestro control. Necesitamos estar informados de cuándo y dónde surgen los problemas.
  • Servicios de autenticación: Nos debe permitir la autenticación basada en usuario (correo electrónico) / password, OAuth integrado con Google, Facebook, Twitter, etc. O integrar nuestro propio sistema de autenticación.
  • Almacenamiento: Espacio donde guardar y compartir ficheros, vídeo, imágenes, documentos.
  • Base de datos: Almacenamiento NoSQL de fácil uso y que permita la sincronización bidireccional.
  • Push notifications: Nos permite enviar notificaciones a la app cuando necesitamos comunicar algo al usuario o sincronizar algún dato.
  • Funciones en la nube: Automatización de tareas. Disparo de notificaciones en función de triggers, batch jobs periódicos.
  • Dashboard: Control de todo el mBaaS, desde la creación de usuarios o los modelos de base de datos a la monitorización de las estadísticas.

Proveedores de servicios[editar]

Referencias[editar]

  1. Monroe, Martin. «The Gospel of MBaaS (Part 1 of 2)». InfoQ. Consultado el 6 de mayo de 2013. 
  2. Monroe, Martin. «The Gospel of MBaaS (Part 2)». InfoQ. Consultado el 15 de mayo de 2013. 
  3. Kin Lane (3 de junio de 2012). «Rise of Mobile Backend as a Service (MBaaS) API Stacks». API Evangelist. Consultado el 16 de octubre de 2012. 
  4. Carney, Michael. «AnyPresence partners with Heroku to beef up its enterprise mBaaS offering». PandoDaily. Archivado desde el original el 27 de junio de 2013. Consultado el 24 de junio de 2013. 
  5. Alex Williams (11 de octubre de 2012). «Kii Cloud Opens Doors For Mobile Developer Platform With 25 Million End Users». TechCrunch. Consultado el 16 de octubre de 2012. 
  6. Aaron Tan (30 de septiembre de 2012). «FatFractal ups the ante in backend-as-a-service market». Techgoondu.com. Consultado el 16 de octubre de 2012. 
  7. Lane, Kin. «New Features From BaaS Provider AnyPresence». API Evangelist. Consultado el 28 de mayo de 2013. 
  8. «Understanding the Basics of Backend as a Service (BaaS)». Mobile City. Silicon India. 9 de agosto de 2012. Consultado el 16 de octubre de 2012. 
  9. Dan Rowinski (17 de abril de 2012). «The Rise of Mobile Cloud Services: BaaS Startups Grow Up». ReadWrite. Consultado el 23 de octubre de 2012.