En la era digital, la capacidad de enviar código más rápido que los competidores crea una ventaja casi incalculable. Permite a las empresas ofrecer nuevas y mejores funciones, responder mejor a las necesidades de los clientes y las tendencias del mercado y reducir los recursos necesarios para cada proyecto. No es de extrañar, entonces, que los asistentes de programación generativa de IA probablemente asuman una parte significativa de la carga. Codificación Estas herramientas crean mucho entusiasmo. Cuando se utilizan de forma eficaz, estas herramientas tienen el potencial de reducir a la mitad el tiempo necesario para un proyecto de desarrollo de software promedio.
Sin embargo, si los asistentes de IA se implementan sin la debida diligencia, pueden generar más trabajo, no menos, para los equipos de desarrollo con exceso de trabajo. Cada línea de código debe probarse, protegerse y corregirse minuciosamente antes de que entre en producción. Por lo tanto, el aumento repentino y dramático en la cantidad de código generado impone una carga inmanejable a los desarrolladores, especialmente porque las investigaciones han encontrado que alrededor del 40% del código generado por los copilotos contiene errores. Como resultado, una implementación deficiente de la IA generativa puede, en última instancia, conducir a una mayor carga de trabajo del desarrollador, lo que resulta en una reducción. productividad Y cansancio.
Comprobar, probar, verificar
El problema que enfrentan las organizaciones que buscan acelerar el desarrollo de software es que incluso antes de tener en cuenta los aumentos en el volumen de código, el arduo trabajo que realizan los desarrolladores en las últimas etapas de entrega ya está fuera de control. Más de dos tercios (42%) de los encuestados dicen que sus procesos para implementar código en producción no son rápidos ni eficientes. La razón principal de esto es la lenta tarea de inspeccionar, probar y validar el código; dos tercios de los desarrolladores (67%) dicen que dichas revisiones toman más de una semana. Además, los desarrolladores se enfrentan constantemente a reversiones manuales de implementaciones fallidas, cobertura de pruebas insuficiente y pruebas redundantes. ciberseguridad Demora.
Las consecuencias de esta sobrecarga son significativas: las investigaciones indican que el software de mala calidad cuesta aproximadamente 2,4 billones de dólares al año sólo en Estados Unidos, lo que contribuye al aumento de la ciberdelincuencia y al aumento de vulnerabilidades masivas como MOVEit. En este contexto, si los asistentes de IA terminan duplicando, o incluso triplicando, el volumen de revisiones de código que los desarrolladores deben completar, estos costos y problemas de seguridad se generalizarán e impactarán aún más. Como resultado, las organizaciones pueden enfrentar consecuencias económicas, políticas y regulatorias potencialmente graves.
Las cinco preguntas principales
Sin embargo, el código generado por IA puede ser verdaderamente transformador para las organizaciones, si se establecen las barreras adecuadas. Por lo tanto, el desafío es encontrar una manera de minimizar el esfuerzo de los desarrolladores, de modo que los equipos puedan gestionar el creciente volumen de código de forma segura y eficiente. Como tal, antes de lanzar cualquier proyecto de adopción de este tipo, hay cinco preguntas clave que toda organización debería intentar responder:
¿Está la seguridad automatizada integrada en cada etapa de la entrega? Al ofrecer canales seguros y bien gobernados que automatizan el proceso de prueba, inspección y validación, las organizaciones pueden aliviar una parte importante del esfuerzo de revisión manual del código que soportan actualmente los equipos de desarrollo.
¿Están sus enfoques de desarrollo equipados para admitir la generación y revisión automatizadas de código? Para aprovechar al máximo los canales automatizados, las organizaciones deben contar con enfoques de desarrollo ágiles eficaces. Por ejemplo, el uso de enfoques de programación por pares o por lotes puede ayudar a reducir radicalmente la necesidad de revisiones manuales del código en las etapas posteriores de la entrega y, por lo tanto, simplificar los procesos automatizados de prueba, verificación y reparación.
¿Se implementan las inspecciones de manera efectiva? Las políticas de seguridad son tan efectivas como la tasa de cumplimiento. Dada la presión sobre los equipos de desarrollo para poner el código en producción rápidamente, a menudo existe la tentación de acortar los pasos y saltarse o acelerar las comprobaciones de seguridad. Por lo tanto, las organizaciones deben implementar un enfoque de política como código para evitar la publicación de cualquier código nuevo hasta que cumpla con requisitos estrictos en materia de disponibilidad, rendimiento y seguridad.
¿Cómo se valida el código de terceros? Incidentes como SolarWinds y MOVEit han demostrado lo importante que es que las medidas de seguridad se extiendan más allá de las cuatro paredes de una organización. Sin embargo, Mirando y comprobar Fuente abierta La gestión de componentes y artefactos de software de terceros es un ejercicio que requiere mucho tiempo. Por lo tanto, las organizaciones deben buscar automatizar tanto como sea posible los procesos en los que confían para monitorear y controlar estos activos, como la creación de una lista de materiales de software y la realización de certificaciones SLSA.
¿Dónde puede la IA generativa ayudar a abordar los problemas de seguridad? Además de permitir que los equipos de desarrollo creen código más rápido, la IA generativa puede ser invaluable para ayudarlos a analizar y corregir vulnerabilidades rápidamente. Cada problema que se identifica y soluciona automáticamente es otra tarea con la que los equipos de desarrollo ya no necesitan lidiar. La IA generativa puede ser particularmente efectiva al descubrir vulnerabilidades grandes y de gran alcance, como Log4j, donde pueden requerir el escaneo y reparación de miles de componentes. Estas tareas pueden llevar cientos de horas si los desarrolladores necesitan realizarlas manualmente.
Más rápido, mejor, más feliz
Dado que se espera que el mercado de herramientas de programación generativa para IA crezca a una tasa compuesta anual de alrededor del 22% durante la próxima década, parece probable que un enfoque híbrido humano-IA para la entrega de software pronto se convierta en la norma. Aunque ofrecer estas herramientas de forma segura y eficaz puede ser una tarea difícil, hay grandes motivos para ser optimistas sobre lo que esto significa para el futuro de la industria del desarrollo de software.
Si se implementa correctamente, la IA generativa puede brindar soporte inmediato para reducir la fatiga de los desarrolladores, ayudándolos a resolver problemas, democratizando el proceso de codificación y aumentando drásticamente la productividad. En resumen, las organizaciones que hagan una transición exitosa a la IA generativa pueden esperar equipos de desarrollo que tengan menos probabilidades de agotarse, dedicar más tiempo a trabajos estratégicos interesantes y de alto valor y, en general, sentirse más felices y saludables. A medida que continúen en este viaje, a las empresas les resultará más fácil volverse más ágiles y receptivas tanto para los clientes como para el mercado.
Enumeramos el mejor IDE para Python.
Este artículo se produjo como parte del canal Expert Insights de TechRadarPro, donde destacamos las mejores y más brillantes mentes de la industria tecnológica actual. Las opiniones expresadas aquí son las del autor y no reflejan necesariamente los puntos de vista de TechRadarPro o Future plc. Si está interesado en contribuir, obtenga más información aquí: https://www.techradar.com/news/submit-your-story-to-techradar-pro