Para aprovechar plenamente la escalabilidad y flexibilidad de la nube, la mayoría de las empresas van más allá de un simple planteamiento de "levantar y cambiar", y en su lugar inyectan capacidades nativas de la nube, una estrategia que parece sencilla pero que puede resultar compleja rápidamente. Después de todo, como ocurre con muchas tareas aparentemente fáciles, el diablo está en los detalles.
Afortunadamente, modernizar una aplicación heredada para la nube no tiene por qué ser un proceso largo y doloroso, siempre que se tengan expectativas realistas y se esté plenamente preparado para abordar la tarea. Para ayudarle a evitar dolores y frustraciones innecesarios, tenga en cuenta los siguientes consejos de expertos en modernización en la nube.
1. Modernizar con un propósito
Antes de empezar, es esencial vincular cualquier proyecto de modernización de aplicaciones a la necesidad empresarial que se está abordando. Ya se trate de ahorrar costes, mejorar la seguridad, aumentar la funcionalidad o cualquier otra cosa, sus esfuerzos sólo tendrán éxito si sabe de antemano lo que quiere conseguir con ellos.
A menudo las iniciativas de modernización son impulsadas puramente por el deseo de entrar en la última innovación. Esta actitud puede acarrear complicaciones en el futuro. Con un resultado claro y la comprensión de su 'por qué', puede tomar un conjunto de decisiones que satisfagan y resuelvan su necesidad empresarial.
2. Evaluar recursos y asociarse si es necesario
Modernizar con éxito las aplicaciones heredadas empieza por abordar el trabajo previo necesario para identificar las cargas de trabajo y los activos que se trasladarán a la nube, así como las dependencias, los impactos de las licencias y los casos de uso y beneficios empresariales.
Requiere la participación de las partes interesadas de toda la organización, no sólo de TI, y tener experiencia tanto en la aplicación heredada como en la nube a la que se va a trasladar. Esto le permitirá definir, desarrollar y ejecutar la ruta de migración y modernización óptima para su empresa.
3. Analizar a fondo la arquitectura de la aplicación
Evalúe detenidamente la aplicación que se va a modernizar para comprender su arquitectura, dependencias y requisitos. Identifique los componentes que pueden migrarse a la nube y evalúe las modificaciones necesarias.
A continuación, determine la estrategia de migración de aplicaciones más adecuada, ya sea "lift-and-shift", re-platforming, refactorización o incluso reconstrucción de la aplicación desde cero. Seleccione la estrategia que mejor se adapte a sus objetivos, plazos y recursos.
4. Rehosting, refactorización, rearquitectura, reconstrucción, sustitución: Adapte su enfoque
Hay muchas técnicas y opciones disponibles para la modernización de aplicaciones, como el realojamiento, la refactorización, la rearquitectura, la reconstrucción y la sustitución. Elegir el enfoque adecuado requiere estudiar detenidamente todas las opciones disponibles antes de hacer una selección final.
Una buena modernización de las aplicaciones debería aumentar la agilidad y escalabilidad de la empresa y de las TI. Los enfoques de replanificación y refactorización aprovechan los servicios en la nube y los patrones de solución, por lo que este suele ser el enfoque más eficaz.
5. Modernizar los procesos relacionados
Se debe modernizar también los procesos empresariales subyacentes, incluida la experiencia del usuario y la agilidad. Tener en cuenta esas necesidades permite modernizar el negocio y, al mismo tiempo, modernizar la arquitectura de las aplicaciones, la pila tecnológica y la capacidad de aprovechar los servicios nativos de la nube, como la IA/ML, la movilidad y los microservicios.
6. Planificar a largo plazo
Un enfoque continuo y modular proporciona el mejor camino hacia la modernización. Observa que la mayoría de los proyectos iniciales de modernización de aplicaciones llevan a quienes los adoptan a un camino de modernización permanente, lo que les permite alinearse gradualmente con los objetivos clave de negocio y tecnología. Lo que no es eficaz, es crear un catálogo estandarizado de servicios de talla única y obligar a las aplicaciones a alinearse al unísono.
También se desaconseja reconstruir una aplicación desde cero. Este enfoque rara vez cumple los objetivos y puede abandonarse fácilmente debido a recortes presupuestarios, gastos excesivos o pérdida de interés. El mejor enfoque es la modernización continua, donde la primera iteración podría incluir la eliminación de riesgos y la incorporación de nuevas capacidades... para objetivos y KPI establecidos.
7. Pensar de forma holística
Dadas las diversas opciones, es importante seguir un enfoque holístico para abordar no solo la modernización actual de las aplicaciones, sino la alineación con los retos futuros.
Los CIO deben recurrir a socios con conocimientos profundos sobre la transformación de la nube, concretamente a través de plataformas en la nube creadas mediante DevSecOps, aceleradores nativos de la nube, infraestructura como código y otras técnicas y herramientas. Esto permite una entrega de software rápida y un enfoque de modernización múltiple.
Un enfoque holístico, también permite a los adoptantes aprovechar una combinación de aceleradores y patrones probados combinados en todo el ciclo de vida de entrega de software para acelerar la transformación, implementación y verificación de aplicaciones.
8. Crear un marco de evaluación de la madurez
Es importante crear un marco de evaluación de la madurez en tres pasos.
El primer paso, descubrimiento y evaluación, permitirá conocer los retos actuales y las necesidades de resultados finales, además de proporcionar una evaluación general de la pila tecnológica y la arquitectura actuales, afirma Kohli.
El segundo paso, la creación de una hoja de ruta, exige desarrollar un plan que construya un camino definido que conduzca a los escenarios de los objetivos finales.
El último paso, la asignación de funciones, implica asignar responsabilidades a partes interesadas concretas para la ejecución de múltiples tareas críticas. Aconseja que entre las partes interesadas se incluyan equipos internos y externos, proveedores de tecnología y grupos de pruebas de aplicaciones.
La creación de un marco de evaluación mejorará el retorno de la inversión, acelerará el desarrollo y permitirá a las empresas incorporar nuevas capacidades a su aplicación modernizada. Facilita que varias aplicaciones se ejecuten simultáneamente y se conecten sin problemas con las aplicaciones existentes. También elimina las barreras que limitan la productividad y la integración para crear nuevas experiencias de usuario y mejorar el rendimiento.
9. Componer
Es importante seguir un enfoque sistemático. Empieza por analizar la arquitectura de tu aplicación e identificar las áreas que pueden mejorarse. A continuación, divide tu app en componentes más pequeños e independientes que puedan desplegarse y escalarse individualmente.
Aprovechar los servicios y tecnologías nativos de la nube, como los contenedores y la computación sin servidor, para optimizar el rendimiento y la escalabilidad de una app. Por último, asegura una transición sin problemas migrando gradualmente una app a la nube y probándola a fondo.
10. Haz realidad la promesa de los contenedores y los microservicios
La modernización de las aplicaciones es todo un reto, sobre todo para los responsables y equipos de TI que se enfrentan a esta tarea por primera vez.
Los microservicios permiten desarrollar, probar, desplegar y escalar componentes de forma independiente, lo que hace que el proceso de desarrollo general sea más eficiente. Además, la contenerización, a través de herramientas como Docker y Kubernetes, puede mejorar aún más la escalabilidad y la portabilidad, haciendo que la aplicación fuera independiente de la plataforma. El proceso de modernización no solo mejora el rendimiento de una aplicación, sino que también simplifica el mantenimiento y las actualizaciones.
Fuente: CIO
Comments