902 99 55 67 info@zertia.es

En los últimos dos artículos ya tratamos los diferentes problemas que experimentan los equipos de TI al tratar con aplicaciones heredadas. Algunos tienen que ver con la evolución funcional y las nuevas necesidades del negocio; otros con el coste de desarrollo o la seguridad. La naturaleza del problema puede variar de una compañía a otra, pero el objetivo de todo equipo de TI es modernizar este tipo de sistemas y adaptarlos al presente.

Las necesidades actuales de las empresas pasan por disponer de un software robusto, escalable, multiplataforma y con un coste contenido de operación. Ni que decir tiene que el software debe adaptarse a las necesidades del negocio e integrarse con el resto de los sistemas.

Entonces, ¿por dónde empezamos? En Zertia te decimos que por estos tres bloques:

Tecnología y arquitectura

El uso de lenguajes de programación y tecnologías desarrolladas por los grandes fabricantes del mercado juega en favor de la evolución del software, ya que garantiza el roadmap del producto y la continuidad del soporte.

Integraciones

El hecho de elegir un lenguaje maduro, con un roadmap de actualización sólido y un soporte de garantías, es esencial en el largo plazo. Y es que, ¿cuántos clientes se han quedado abandonados por fabricantes más pequeños que detienen la continuidad de sus soluciones? Además, el hecho de estar respaldados por una comunidad de desarrollo abierta agiliza la resolución de problemas y la captación de nuevos programadores. Es un círculo que se retroalimenta y mejora de forma continua la calidad del software.

Microservicios

Si queremos que el software pueda ir escalando en funcionalidad según lo requiera el negocio, es fundamental diseñar una arquitectura flexible desde el primer momento. Y aquí es donde entra en juego la filosofía de microservicios, ofreciendo una versatilidad prácticamente plena, ya que se pueden escalar solo algunas partes de las aplicaciones y complementar otras con lenguajes más específicos.

Multiplataforma

Salvo contadas excepciones, todo nuevo desarrollo debe estar diseñado para alojarse en la nube y desplegarse en varios entornos. ¿Por qué en la nube? Por un sinfín de razones que ya hemos nombrado: flexibilidad, escalabilidad, ahorro de costes, disaster recovery , etc. Si quieres medir tu nivel de adopción Cloud, puedes hacerlo a través de nuestro assessment.

Seguridad

Este es un elemento fundamental no solo por motivos de negocio, sino también porque las leyes que regulan la gestión de la información por parte de las empresas son cada vez más duras y concretas. Y esto es una tendencia internacional. Por ello, es necesario fijar políticas SSO con el objetivo de facilitar la administración de usuarios. Además, se puede reforzar la seguridad de los sistemas críticos añadiendo factores de autenticación dobles.

Data & AI

Como hemos comprobado en los últimos años, todas las aplicaciones modernas se programan en la nube. Y en Zertia sabemos de lo que hablamos: somos Gold Partner de Azure desde 2014 y somos los creadores de la primera solución 100% Cloud en España (Ubicua Xperience).

  • Desarrollo orientado al dato: Si desde un primer momento arrancamos el desarrollo de aplicaciones poniendo el dato en el centro de la ecuación, facilitaremos el correcto uso y aprovechamiento de este en beneficio de nuestro negocio.
  • Inteligencia Artificial: Las nuevas técnicas de machine learning y deep learning permiten predecir tendencias y solucionar problemas futuros, lo cual es simplemente inviable con un sistema tradicional. El último estudio de Microsoft sobre el nivel de capacitación de los profesionales españoles en tecnologías de IA, desarrollado en marzo de 2020, señala que el 37% de las empresas españolas ya está en fase de exploración de tecnologías y procesos de IA, mientras que un 28% está ya en una fase posterior que les posicionará como líderes en adopción de IA en España.
  • Capacidad hiperescalar: La infraestructura de hiperescala está diseñada con un objetivo claro: obtener una escalabilidad horizontal con altos niveles de rendimiento y procesamiento que aumenten la disponibilidad y mejoren la tolerancia a fallos.
DevOps y Metodología Agile

Agilidad y colaboración. Dos términos imprescindibles para la modernización de aplicaciones en cualquier sector. Podríamos enumerar casos reales en manufactura, retail, banca, servicios, etc. Veamos qué significan:

  • DevOps: Muchos de los equipos que intervienen en el desarrollo de aplicaciones (operaciones IT, desarrolladores, ingeniería de calidad) solían trabajar aislados unos de otros. Con la llegada de DevOps, estos equipos trabajan unidos para responder mejor y más rápido a las necesidades de los clientes, reducir la probabilidad de error humano y cumplir los objetivos en menos tiempo. ¿Requiere de un importante cambio cultural relativo a la forma de trabajar? Sí. Pero aumenta la productividad y colaboración a niveles nunca vistos.
  • Metodología Agile: Las necesidades del negocio siempre han definido el software que éste consume y los negocios actuales necesitan agilidad por encima de (casi) todo. Dejando de lado los procesos lineales, el desarrollo moderno se divide en bloques más pequeños para poder abordarse y entregarse mucho antes. Lo que antes suponía meses de trabajo, ahora se hace en unas pocas semanas. Y la prueba de los avances permite ir haciendo correcciones y mejoras de manera continua. La metodología Agile nos permite ser mucho más flexibles ante los cambios y reducir significativamente el time-to-market.

Si tu negocio también encuentra dificultades al tratar con las aplicaciones legacy y necesitas modernizarlas, estamos encantados de oír tu caso.

¡Nos vemos en el próximo post!