Imagina un mundo en el que medir la productividad de los desarrolladores sea tan sencillo como consultar tus estadísticas de fitness en un reloj inteligente. Con asistentes de programación de IA como GitHub Copilot, esto parece estar al alcance. GitHub Copilot afirma potenciar la productividad de los desarrolladores con finalizaciones de código conscientes del contexto y generación de fragmentos. Al aprovechar la IA para sugerir líneas o módulos completos de código, GitHub Copilot tiene como objetivo reducir los esfuerzos de codificación manual, lo que equivale a tener un asistente superpoderoso que te ayuda a codificar más rápido y a concentrarte en la resolución de problemas complejos. Las organizaciones han utilizado las métricas de investigación y evaluación de DevOps (DORA) como un enfoque estructurado para evaluar el rendimiento de su equipo de desarrollo de software y de DevOps. Este enfoque basado en datos permite a los equipos entregar software más rápido con mayor confiabilidad y una estabilidad mejorada del sistema. Al centrarse en la frecuencia de implementación, el tiempo de entrega de los cambios, la tasa de fallas de los cambios y el tiempo medio de restauración (MTTR), los equipos obtienen información invaluable sobre sus flujos de trabajo. Impacto de la IA en las métricas de DORA Aquí está el truco: las métricas de DORA no son todo sol y arcoíris. El uso incorrecto de estos puede llevar a que se preste poca atención a la cantidad en lugar de a la calidad. Los desarrolladores pueden manipular el sistema solo para mejorar sus métricas, como los estudiantes que estudian intensamente para los exámenes sin comprender realmente el material. Esto puede crear disparidades, ya que los desarrolladores que trabajan en aplicaciones modernas basadas en microservicios naturalmente se destacarán en las métricas DORA en comparación con aquellos que manejan sistemas más antiguos y monolíticos. La llegada del código generado por IA exacerba este problema significativamente. Si bien herramientas como GitHub Copilot pueden impulsar las métricas de productividad, los resultados podrían no reflejar necesariamente mejores prácticas de implementación o estabilidad del sistema. El código generado automáticamente podría inflar las estadísticas de productividad sin mejorar genuinamente los procesos de desarrollo. A pesar de su potencial, los asistentes de codificación de IA presentan nuevos desafíos. Además de las preocupaciones sobre la atrofia de las habilidades de los desarrolladores y los problemas éticos relacionados con el uso de código público, los expertos predicen un aumento masivo de los problemas de control de calidad y seguridad en la producción de software, lo que impactará directamente en sus métricas DORA. Entrenados en grandes cantidades de código público, los asistentes de codificación de IA podrían sugerir inadvertidamente fragmentos con errores o vulnerabilidades. Imagine que la IA genera código que no desinfecta adecuadamente las entradas del usuario, lo que abre la puerta a ataques de inyección SQL. Además, la falta de contexto específico del proyecto de la IA puede generar un código desalineado con la lógica empresarial única o los estándares arquitectónicos de un proyecto, lo que provoca problemas de funcionalidad que se descubren tarde en el ciclo de desarrollo o incluso en producción. También existe el riesgo de que los desarrolladores dependan demasiado del código generado por la IA, lo que lleva a una actitud laxa hacia la revisión y prueba del código. Los errores sutiles y las ineficiencias podrían pasar desapercibidos, lo que aumenta la probabilidad de defectos en la producción. Estos problemas pueden afectar directamente sus métricas de DORA. Más defectos debido al código generado por la IA pueden aumentar la tasa de fallas de cambio, lo que afecta negativamente la estabilidad del flujo de implementación. Los errores que llegan a producción pueden aumentar el tiempo medio de restauración (MTTR), ya que los desarrolladores pasan más tiempo solucionando problemas causados ​​por la IA. Además, la necesidad de revisiones y pruebas adicionales para detectar errores introducidos por los asistentes de IA puede ralentizar el proceso de desarrollo, lo que aumenta el tiempo de entrega de los cambios. Pautas para los equipos de desarrollo Para mitigar estos impactos, los equipos de desarrollo deben mantener prácticas rigurosas de revisión de código y establecer estrategias de prueba integrales. Estos grandes volúmenes de código generado por IA en constante crecimiento deben probarse tan exhaustivamente como el código escrito manualmente. Las organizaciones deben invertir en soluciones de automatización y gestión de pruebas de extremo a extremo para proporcionar seguimiento y visibilidad de extremo a extremo de la calidad del código en las primeras etapas del ciclo y automatizar sistemáticamente las pruebas durante todo el proceso. Los equipos de desarrollo deben gestionar la mayor carga de código generado por IA volviéndose más inteligentes en cuanto a cómo realizan revisiones de código, aplican pruebas de seguridad y automatizan sus pruebas. Esto garantizaría la entrega continua de software de alta calidad con el nivel adecuado de confianza. A continuación, se incluyen algunas pautas que los equipos de desarrollo de software deben tener en cuenta: Revisiones de código: incorpore las mejores prácticas de prueba durante las revisiones de código para mantener la calidad del código incluso con código generado por IA. Los asistentes de IA como GitHub Copilot pueden contribuir a este proceso al sugerir mejoras en la cobertura de pruebas, identificar áreas donde pueden requerirse pruebas adicionales y destacar posibles casos extremos que deben abordarse. Esto ayuda a los equipos a mantener altos estándares de calidad y confiabilidad del código. Revisiones de seguridad: trate cada entrada en su código como una amenaza potencial. Para reforzar su aplicación contra amenazas comunes como inyecciones SQL o ataques de secuencias de comandos entre sitios (XSS) que pueden introducirse a través del código generado por IA, es esencial validar y desinfectar todas las entradas de manera rigurosa. Cree políticas de gobernanza sólidas para proteger datos confidenciales, como información personal y números de tarjetas de crédito, que exigen capas adicionales de seguridad. Pruebas automatizadas: automatice la creación de casos de prueba, lo que permite a los equipos generar rápidamente pasos para pruebas unitarias, funcionales y de integración. Esto ayudará a gestionar el aumento masivo de código generado por IA en las aplicaciones. Amplíe su alcance más allá de simplemente ayudar a los desarrolladores y al personal de control de calidad tradicional al incorporar usuarios no técnicos para crear y mantener esas pruebas para pruebas automatizadas de extremo a extremo. Pruebas de API: con especificaciones abiertas, cree un enfoque de prueba aumentado por IA para sus API, incluida la creación y el mantenimiento de pruebas y contratos de API. Integre sin problemas estas pruebas de API con herramientas para desarrolladores para acelerar el desarrollo, reducir costos y mantener las pruebas actuales con cambios de código en curso. Mejor gestión de pruebas: la IA puede ayudar con la toma de decisiones inteligente, el análisis de riesgos y la optimización del proceso de prueba. La IA puede analizar grandes cantidades de datos para proporcionar información sobre la cobertura de las pruebas, la eficacia y las áreas que necesitan atención. Si bien GitHub Copilot y otros asistentes de codificación de IA prometen un aumento de la productividad, plantean serias preocupaciones que podrían hacer que las métricas de DORA sean inmanejables. La productividad de los desarrolladores puede mejorar superficialmente, pero ¿a qué costo? El esfuerzo oculto de examinar y corregir el código generado por IA podría eclipsar cualquier ganancia inicial, lo que llevaría a un posible desastre si no se gestiona con cuidado. Armadas con un enfoque que esté listo para el código generado por IA, las organizaciones deben reevaluar sus métricas de DORA para alinearse mejor con la productividad generada por IA. Al establecer las expectativas correctas, los equipos pueden alcanzar nuevas cotas de productividad y eficiencia. Madhup Mishra es vicepresidente sénior de marketing de productos en SmartBear. Con más de dos décadas de experiencia en tecnología en empresas como Hitachi Vantara, Volt Active Data, HPE SimpliVity, Dell y Dell-EMC, Madhup ha desempeñado una variedad de funciones en gestión de productos, ingeniería de ventas y marketing de productos. Le apasiona cómo la inteligencia artificial está cambiando el mundo. Generative AI Insights ofrece un espacio para que los líderes tecnológicos, incluidos los proveedores y otros colaboradores externos, exploren y discutan los desafíos y las oportunidades de la inteligencia artificial generativa. La selección es muy variada, desde análisis profundos de la tecnología hasta estudios de casos y opiniones de expertos, pero también subjetiva, basada en nuestro criterio sobre qué temas y tratamientos servirán mejor a la audiencia técnicamente sofisticada de InfoWorld. InfoWorld no acepta material de marketing para su publicación y se reserva el derecho de editar todo el contenido aportado. Póngase en contacto con doug_dineley@foundryco.com.