Los líderes de tecnología se encuentran bajo continua presión para adoptar arquitecturas modernas. Para hacerlo bien, necesitan saber qué es lo que tiene
tiene el potencial de mayor impacto para sus negocios digitales, según la consultora Gartner.
Durante la Cumbre de Soluciones Comerciales e Innovación de Aplicaciones, la consultora Gartner ha hecho públicas las principales tendencias en torno a la ingeniería de software. Y, es que, según Joachim Herschmann, vicepresidente analista de la firma, “los líderes de esta tecnología se encuentran bajo continua presión para adoptar arquitecturas modernas. Para hacerlo bien, necesitan saber qué es lo que tiene el mayor impacto potencial para sus negocios digitales dentro de un horizonte de planificación visible”. Estas son las tendencias:
InnerSource
Es una estrategia de desarrollo de software que aplica prácticas de código abierto al código propietario. Al adoptar una mentalidad
open source, las organizaciones pueden cerrar brechas y romper silos, lo que lleva a un ciclo de vida de software más sólido y estricto. “En última instancia, InnerSour ayuda a los equipos a crear software más rápido y trabajar mejor juntos, lo que resulta en un desarrollo de mayor calidad y una mejor documentación”, dijo el experto.
Experiencia del desarrollador
Este término se refiere a todos los aspectos de las interacciones entre los desarrolladores y las herramientas, plataformas, procesos y personas con las que trabajan para construir y dar productos y servicios de software. Mejorar la experiencia es fundamental para tener éxito con las iniciativas digitales y crear departamentos de alto rendimiento. Gartner cree que este segmento se extiende más allá de lo utilizado por los desarrolladores. “Las herramientas utilizadas en el trabajo diario ciertamente desempeñan un papel en la mejora de la calidad de los flujos de trabajo de los desarrolladores. Sin embargo, su experiencia también depende de factores no tecnológicos. Estos incluyen tener tiempo dedicado a un trabajo profundo, creativo y significativo, así como libertad personal a probar cosas nuevas sin miedo al fracaso”.
Equipos de ingeniería de software aumentada con inteligencia artificial
La ingeniería de software aprovecha las tecnologías de la
inteligencia artificial (IA) para ayudar a los equipos a crear y entregar aplicaciones más rápidamente. “Requiere hacer que los equipos sean más eficientes en su trabajo, liberándolos del trabajo tedioso, en lugar de dejar que la tecnología los reemplace”, aseveró el analista.
Aplicaciones potenciadas por IA
La combinación de datos empresariales disponibles, capacidades avanzadas de creación de modelos y servicios de IA generativa dará como resultado aplicaciones mejoradas con datos que impulsan mejores decisiones comerciales. Las aplicaciones potenciadas por IA pueden enriquecer la información disponible en la empresa y las aplicaciones, automatizar los flujos de trabajo y crear modelos que evalúen el riesgo o recomienden las siguientes mejores acciones.
Para tener éxito al utilizar la IA, los líderes de ingeniería de software deben tratar el desarrollo de modelos de IA de manera diferente al desarrollo de aplicaciones y coordinar las actividades entre los equipos de desarrollo y de creación de modelos.
Ingeniería de plataformas
La ingeniería de plataformas es la disciplina de construir y operar plataformas de desarrollo interno de autoservicio para la entrega de software y la gestión del ciclo de vida. Ayuda a los desarrolladores a descubrir, operar, proteger, mejorar y construir sobre sistemas de TI distribuidos y complejos, especialmente cuando no son expertos técnicos en los sistemas subyacentes.
Las plataformas mejoran la experiencia general de los desarrolladores con un conjunto seleccionado de herramientas y servicios. También mejoran la coherencia y la calidad de las soluciones de TI y reducen las herramientas y procesos redundantes, consolidan los esfuerzos paralelos de múltiples equipos, hacen cumplir los estándares de seguridad y cumplimiento e incluyen una automatización generalizada.
Digital Immune System
Digital Immunity interconecta prácticas de las áreas de observabilidad, pruebas de software, ingeniería del caos, desarrollo de software, ingeniería de confiabilidad del sitio y seguridad de la cadena de suministro de software para garantizar una alta resiliencia y calidad de las aplicaciones.
«Muchas organizaciones de ingeniería de software ya están utilizando algunas de estas estrategias, pero ninguna de estas prácticas por sí sola será suficiente para lograr el objetivo de construir sistemas altamente resilientes», dijo Herschmann. «En conjunto, estas prácticas constituyen un poderoso enfoque de calidad continua para garantizar que los sistemas digitales complejos sigan funcionando incluso si ‘la casa está en llamas'».
-Foundry