Comparte:
Cloud
11 de octubre de 2016

¿Cómo modernizar cuarenta años de historia de las aplicaciones?

¿Cómo modernizar cuarenta años de historia de las aplicaciones?

¿Cómo modernizar cuarenta años de historia de las aplicaciones?

Escrito por , 11/10/2016

Como señalaba en mi post de ayer, en este momento hay razones de peso por las que muchas grandes empresas se plantean la necesidad de modernizar sus aplicaciones monolíticas. A la hora de hacerlo, una primera reflexión debería de ser “modernizar sólo aquello que es útil para el negocio”.

¿Y qué es útil para el negocio?:

  • Lo que proporciona una respuesta más ágil de cara a los clientes, que disponen de potentes herramientas para optimizar sus compras
  • Lo que permite un mejor posicionamiento frente a una competencia que cada vez se mueve más rápido

Una primera estrategia de modernización debe buscar cómo integrar las aplicaciones más tradicionales con ese nuevo mundo de servicios cloud a través de nuevas aplicaciones “nacidas en la nube” para explotar todo el potencial que ofrece el paradigma cloud. Por poner un ejemplo, los sistemas CRM actuales necesitan integrarse con nuevas fuentes de datos (que proceden de los servicios en cloud) para entender mejor a los clientes finales y personalizar las acciones de marketing en función de sus gustos, estados de ánimo, etc.

El uso de containers en la estrategia de modernización permite eliminar las dependencias con las infraestructuras, lo que reduce la complejidad de lidiar con las mismas, es decir, se consigue abstraer la aplicación del uso de las infraestructuras.

Otra de las estrategias para conseguirlo también puede ser integrar en una aplicación monolítica el uso de microservicios para añadir nuevas funcionalidades o modificar la arquitectura de la aplicación, a través de la “modularización” o “componentización” de las mismas.

En cualquier caso, determinar por dónde empezar no es tarea fácil. En mi opinión, la clave para elegir qué aplicación modernizar reside en identificar aquéllas que dan respuesta a un negocio altamente cambiante y que necesitan alimentarse de datos procedentes de varias fuentes, tanto de datos en entornos más tradicionales (como los que residen en SAP), como los procedentes de entornos digitales (datos colaborativos procedentes de usuarios on line, analitics etc.).

Un ejemplo: las aplicaciones web que dan respuesta a entornos de eCommerce al modernizarse permiten el desarrollo de nuevas app que recogen información online y, así, ofrecer servicios personalizados a los clientes al identificar de forma inmediata el comportamiento de los mismos. Así, es posible geoposicionar a los usuarios que están en una determinada ubicación (centro comercial, aeropuerto, palacio de congresos…) y cruzarlo con información ya existente en el datamining sobre sus costumbres de uso y, de esta forma, mostrarles ofertas o servicios que en ese preciso momento pueden ser interesantes para ellos.

Llegados a este punto, me gustaría compartir algunas reflexiones:

  • Reescribir las aplicaciones existentes (Legacy) supone un gasto difícil de predecir, con lo cual no parece que los clientes se vayan a embarcar en ese tipo de estrategias.
  • Existe un claro reto en la modernización de las aplicaciones más antiguas que aún siguen prestando servicio, ya que han sido desarrolladas por un personal cuyo conocimiento ya no existe en el mercado (Cobol, por ejemplo) por lo que casi sería arqueología software en vez de ingeniaría del software
  • Con los microservicios,» modularización» y «componentización» se ha reducido el tamaño de los paquetes de desarrollo lo que, unido a la mejora de interoperabilidad entre módulos, permite tener las ansiadas aplicaciones altamente escalables, en las que una nueva implementación no supone tener que hacer un cambio en todo el código que la conforma (como sí pasa en las aplicaciones monolíticas).

Como conclusión, cloud es un claro habilitador del negocio, que ha facilitado y revolucionado el mundo de las aplicaciones. Mejorará la competitividad de nuestros clientes en la nueva era digital, pero no solo en los nuevos negocios digitales o en el ámbito de las startup, sino que la nube también puede ser utilizada para mejorar entornos de aplicación más tradicionales. Eso sí, tras el análisis previo de qué partes clave de la aplicación modernizar, y hacerlo cuando aporte un valor diferencial al negocio y no solo en una búsqueda de eficiencia.

Imagen: Codexian

Sobre el autor

Susana Martínez Ferreiro

Susana Martínez Ferreiro

Ingeniera en Informática y Postgrado en Gestión de la tecnología. Creo en las personas, me apasiona la tecnología y valoro el trabajo hecho en equipo (1+1+1=5).
Ver todos sus artículos »