Cinco formas en las que los ISV pueden utilizar la nube para modernizar las aplicaciones SaaS

by Sandeep Bhargava, Managing Director, APJ

A software developer typing code on his laptop with code displayed on two additional monitors

 

El software como servicio (SaaS) es un término común utilizado en muchas industrias. El SaaS desempeña un papel importante en las estrategias para la nube y en la modernización de la mayoría de las organizaciones. Pero ¿las plataformas SaaS son todas iguales?  No estoy hablando sobre las características del producto, sino de la plataforma SaaS en sí.  Me refiero a la arquitectura de la aplicación y de la infraestructura subyacente.  Existen diversos usos de SaaS.

Como comprador, usted se puede preguntar: "¿Por qué me importaría ahondar más?". Pues, permítame explicarle por qué debería importarle.  Si un proveedor de SaaS tiene una aplicación monolítica de tenencia única (single-tenant) que debe desplegarse en el sitio, este modelo de arquitectura presentará inconvenientes. 

  1. Al ser de tenencia única, su base de costos será más alta debido a que no hay infraestructura compartida.
  2. Al ser monolítica, sus ciclos de lanzamiento serán más lentos y susceptibles a más errores.
  3. El hecho de que el despliegue sea en el sitio implica no poder aprovechar la capacidad de la nube ni controlar la disponibilidad.
  4. Se corre el riesgo de verse superados por competidores "nativos de la nube", que no tienen ninguna de estas limitaciones.  ¿Perderá vigencia en un plazo de dos o tres años?

Como proveedor de software independiente (ISV), sé que el resultado es evidente. Si no se tiene una arquitectura SaaS real, se debe llevar a cabo una actualización, y se debe hacer rápido.  Desde un punto de vista técnico, estas son las cinco áreas que considero principales en las que poner la atención si usted es un ISV que busca incorporar SaaS a sus aplicaciones.

 

Adopte una arquitectura de tenencia múltiple (multi-tenant)

El aislamiento de los clientes en una arquitectura de tenencia múltiple es simple si se aprovecha un modelo sin servidor, y se organiza el acceso a través de controles de administración de identidad y acceso (IAM).  No tiene sentido crear sistemas de control de acceso basado en roles (RBAC) por su cuenta. Esto ya está listo para usar en la nube. 

Aprovechar una arquitectura sin servidor elimina la necesidad de administrar de manera continua las políticas de escalado. Por el contrario, haga que la plataforma sea la responsable de hacerlo.  Los servicios sin servidor también tienen el beneficio de eliminar gran parte de su carga operativa y colocarla de manera persistente en el proveedor.

 

Cree una arquitectura flexible y escalable

Al usar servicios de implementación REST, el trabajo de cada equipo de desarrollo está aislado de los demás. Esto agiliza la creación de prototipos y el desarrollo.  Esta compartimentación también le permite ofrecer diferentes niveles de calidad de servicios a sus clientes.

Este enfoque basado en API facilita el acceso a terceros (o viceversa) para ampliar su aplicación, importar/exportar datos u ofrecer informes.

 

Adopte la infraestructura como código

La infraestructura como código (IaC) es el enfoque de prácticas recomendadas para el despliegue de infraestructura. Por supuesto, ¡podría escribir un artículo completo solamente acerca de esto! Pero, en primer lugar, una plataforma IaC puede empaquetar diferentes plataformas SaaS para múltiples opciones de despliegue y mercados (marketplace) en la nube.

Por otra parte, algunos beneficios inmediatos son la estandarización, la automatización del despliegue (CI/CD), una corrección más rápida de errores, y un aumento de la productividad y eficiencia en el desarrollo de software.

 

Considere usar el patrón estrangulador

El patrón estrangulador es un método para migrar de manera gradual una arquitectura monolítica a una de microservicios.  Mediante el uso de una estructura API de enrutamiento, la actividad del usuario se dirige al nuevo microservicio cuando cada característica/función es lanzada como un microservicio. 

Esto trae una serie de beneficios, pues evita el enfoque "Big-Bang", que es inherentemente arriesgado. Además, crea una forma rápida de recuperación. También le permite realizar lanzamientos a pequeños grupos de usuarios (dark launch) donde duplicar el tráfico de estos y enviarlo a un nuevo microservicio para probarlo.

 

Sustituya el proceso heredado por alternativas modernas

Los proveedores de servicios en la nube tienen muchos servicios que ayudan a modernizar los procesos heredados, como el procesamiento por lotes.  Por ejemplo, aproveche las colas y los flujos para desvincular servicios y ofrecer una alternativa en tiempo real a los procesos por lotes. Con estas opciones de nube sin servidor, puede pasar de un paradigma basado en lotes/programas a un paradigma basado en eventos.

 

Solving Together™

Cada proveedor de software independiente busca reinventarse en un ambiente en constante cambio y aceleración. Para un ISV, hay varias buenas razones para cambiar la estructura de su empresa y servicios. Por ejemplo, los requisitos y las peticiones de sus clientes cambiaron, su empresa quiere escalar rápido o necesita anticiparse a la competencia.

Lo más probable es que su empresa se enfrente a los mismos desafíos, y usted sea el responsable de resolverlos junto con su equipo. Algunas de las preguntas que recibimos con frecuencia (y ayudamos a responder) cuando trabajamos con proveedor de software independiente son:

  • ¿Qué necesitamos cambiar, técnicamente y con respecto a la configuración de nuestra organización, para asegurarnos de que estamos listos para el futuro?
  • ¿Cómo debería mi empresa hacer frente al cambio de un modelo de venta de licencia a otro de venta por suscripción?
  • ¿Cuál es mi modelo operativo objetivo?
  • ¿Cómo me aseguro de que todos incorporen los cambios necesarios?
  • ¿Deberíamos migrar nuestro entorno mediante el realojamiento, o cambiar nuestra aplicación y forma de trabajar para ser más nativos de la nube?

¿Es usted un proveedor de software independiente que busca transformar su empresa en la nube? Nuestros expertos pueden crear una hoja de ruta adecuada para acelerar su estrategia de adopción de la nube.

Incorpore un enfoque nativo de la nube a su desarrollo de aplicaciones