Enable javascript in your browser for better experience. Need to know to enable it? Go here.

Liderar a través del cambio:

Navegar por el panorama de las herramientas de IA para la entrega de software

La creciente presión sobre los equipos de ingeniería de software para ofrecer más con menos ha creado una tormenta perfecta para la adopción de la IA. El 95 % de los desarrolladores ya están adoptando asistentes de codificación de IA, lo que desbloquea nuevas eficiencias. Pero con solo el 30 % del ciclo de entrega dedicado a la codificación, las organizaciones también buscan aprovechar la IA para mejorar otras tareas en el ciclo de entrega de software.

 

Aprovechar la IA desde el inicio de las funciones hasta las operaciones promete mejoras en eficiencia, calidad y velocidad. Sin embargo, aunque el potencial es enorme y evoluciona rápidamente, el panorama de las herramientas aún está en sus primeros días. Para los líderes, es difícil saber por dónde empezar y cómo invertir.

 

Este artículo proporcionará un plan sobre cómo pensar en herramientas para la asistencia de IA en una organización de ingeniería de software; está diseñado como un modelo mental para mantenerse al día con un mercado en rápido movimiento y en cambio.

 

 

Ninguna herramienta para gobernarlas todas

 

Los clientes a menudo nos preguntan: “¿Qué herramienta de IA debemos usar para tareas de entrega de software que no sean de codificación?” La respuesta es que no hay una sola herramienta, y eso no es solo porque el mercado sigue evolucionando. Nunca habrá una solución única porque la asistencia generativa de IA (GenAI) debe infundirse en toda la cadena de herramientas de entrega y complementar las herramientas y flujos de trabajo existentes de los usuarios. 

 

Tomemos las pruebas como ejemplo:

  • Los desarrolladores y QA pueden usar un asistente de codificación para generar y mejorar el código de prueba y refinar sus escenarios de prueba.

  • Las preguntas y respuestas podrían motivar a un chatbot a intercambiar ideas sobre “qué puede salir mal” para la puesta en marcha.

  • El proveedor de un producto de prueba ya utilizado por la organización podría mejorar su funcionalidad con IA.

O veamos cómo se utilizaría la IA en el espacio de diseño:

  • Los diseñadores visuales pueden usar extensiones de IA para Figma.

  • Un desarrollador podría generar código de prototipo a partir de un diseño o una imagen con una herramienta de código abierto.
  • Un investigador de usuarios puede utilizar una selección dinámica personalizada en un chatbot para preparar entrevistas de investigación de usuarios y analizar los resultados de la investigación de usuarios con un producto nativo de IA como Kraftful.

 

 

La pila de entrega de software de IA

 

Basándonos en lo que estamos viendo en el mercado, hemos identificado seis arquetipos clave de herramientas que forman las opciones de soporte de herramientas organizativas para la entrega de software con IA como prioridad.

1) Extensiones a la cadena de herramientas de entrega existente

 

Con la creciente demanda de IA, todos los principales proveedores de software están añadiendo extensiones impulsadas por IA a sus herramientas de desarrollo existentes. Algunos ejemplos son Figma , Jira y Confluence de Atlassian y las consolas en la nube de los grandes proveedores de servicios en la nube (Amazon Q Developer , Microsoft Copilot para Azure , Gemini para Google Cloud ). Antes de considerar implementar nuevas herramientas, céntrate en cómo la IA podría integrarse en las herramientas que tu equipo ya está utilizando. Estas extensiones serán una parte importante de tu soporte de IA, ya que ofrecen la mejor integración en el flujo de trabajo existente de tu equipo y en los datos que necesita la IA.

 

Por lo tanto, es importante mantenerse cerca de los proveedores de sus herramientas principales al mantenerse al día con los anuncios y hojas de ruta porque este es un campo que madura. Muchas de estas extensiones impulsadas por IA todavía se encuentran en las primeras etapas de desarrollo; eso significa que, aunque esta área tiene mucho potencial, las funcionalidades actuales en los productos actuales siguen siendo limitadas. Por lo tanto, las pruebas serán un paso crítico en la adopción; identifique a algunas personas de su equipo para evaluar nuevas características antes de implementarlas más ampliamente.

 

 

2) Herramientas y productos nativos de GenAI

 

Además de las extensiones de la cadena de herramientas de entrega existente, hay una multitud de nuevos productos y herramientas de código abierto que tienen GenAI en el centro de su propuesta de valor. La lista de algunos de los productos y casos de uso cubiertos superaría rápidamente el espacio disponible en este artículo, pero el mercado realmente tiene algo para todo en este momento. Esto incluye tareas desde ingeniería de requisitos hasta documentación, diseño de interfaz de usuario y ChatOps respaldado por LLM. Sin embargo, pocas herramientas abordan fragmentos más grandes del flujo de trabajo del proceso de entrega de software, la mayoría solo se centran en tareas concretas.

 

Dado que muchos de estos productos están siendo desarrollados por startups en fase temprana, es necesaria una evaluación cuidadosa antes de compartir cualquier dato con ellos. También es importante observar  detenidamente el alcance y la madurez de su funcionalidad. En la actual fiebre del oro del GenAI, muchos utilizan demostraciones impresionantes pero poco profundas con poco que respaldar.

Un programador que trabaja en código para un programa de software.

Caso práctico: Thoughtworks ayudó a allanar el camino para que una importante empresa de servicios financieros de EE. UU. aprovechara las herramientas de IA para el desarrollo de software. Solo un mes después del compromiso, entregamos un informe completo de Market Scan con una hoja de ruta configurable para las iniciativas de GenAI, lo que abre las puertas a nuevas y emocionantes posibilidades.

3) Asistentes de codificación

 

Entre las herramientas nativas de GenAI, los asistentes de codificación se destacan como el área más establecida con el mayor potencial cuando buscan la IA para la entrega de software; por eso se les ha dado su propia categoría en nuestro modelo. Muchos de nuestros grandes clientes empresariales ya están utilizando la IA para ayudar con la codificación y, dependiendo del contexto, ese uso puede conducir a una reducción de hasta un 10 % en el tiempo del ciclo de la historia. 

 

En la actualidad, el producto más popular del mercado es GitHub Copilot . El asistente de IA de Jetbrains, recientemente lanzado, es algo que debes ver, ya que Jetbrains es líder en proporcionar una excelente experiencia de desarrollador en entornos de desarrollo integrados (IDE). Alternativas como Tabnine y Codeium destacan por sus ofertas de autoalojamiento y datos de capacitación que alivian algunas de las preocupaciones de la copia izquierda. AWS y Google han lanzado AWS CodeWhisperer y Gemini Code Assist, que se espera que sean particularmente buenos para escribir código para la pila de nube respectiva. Continue está emergiendo como una de las extensiones IDE de código abierto más populares para la asistencia de codificación, con la opción de conectar la herramienta a una gama de diferentes ofertas de modelos, incluidas las que se ejecutan en la máquina de un desarrollador. Y aider es un asistente de codificación de código abierto que toma un enfoque fuera del IDE; actualmente es una de las pocas herramientas de este tipo que puede cambiar el código en múltiples archivos.

 

También hay herramientas especializadas en áreas específicas de asistencia de codificación. Codium AI, por ejemplo, es un producto que se centra en la generación de pruebas. Además, hay un área completa de herramientas de asistencia de codificación que se centran en navegar y explicar el código a través de una base de código o incluso muchas bases de código, como Cody de SourcegraphBloop AI o Driver AI .

 

La asistencia de codificación con IA ha llegado para quedarse. Aunque ya está ofreciendo valor en la actualidad, tiene el potencial de tener un impacto aún mayor, en particular cuando GenAI se combina con otras tecnologías que pueden comprender y analizar estáticamente el código. Sin embargo, es importante tener en cuenta que los asistentes de codificación deben combinarse con prácticas de ingeniería eficaces que actúen como medidas de seguridad. Aunque los modelos de lenguaje grande (LLM) destacan en el reconocimiento y la síntesis de patrones, carecen de la capacidad de juzgar la calidad del código. En su lugar, siguen amplificando lo que ven indiscriminadamente. Y lo que pueden ver incluye mucho código público semihorneado en sus datos de formación, o el código incorrecto en nuestra base de código que no queremos repetir.

 

 

4) Chatbots y capacidades de intercambio rápido

 

Afrontémoslo, es probable que sus empleados ya estén aprovechando herramientas como ChatGPT para su trabajo diario, así que la pregunta no es si, sino cómo las están utilizando. Una forma de facilitar el uso responsable es con chatbots internos bajo tu control que permiten a tus equipos aprovechar toda la amplitud de lo que los LLM pueden hacer, con barandas integradas. En este momento, vemos una serie de organizaciones que prueban dichos chatbots internos, principalmente con interfaces de usuario (UI) personalizadas que hablan con modelos básicos en los grandes proveedores de nube de una manera supervisada, o incluso con modelos alojados por la propia organización. 

 

La clave para liberar todo el potencial de estas implementaciones depende de dos factores importantes: mejorar las habilidades de los empleados en técnicas de motivación y darles las herramientas para compartir indicaciones eficaces entre sí. Plataformas como Dify demuestran cómo puede ser el intercambio rápido.

 

Facilitar que las personas compartan mensajes es especialmente importante cuando se utiliza la IA para ayudar a la entrega de software. Esto se debe a que los equipos de entrega de software comparten un dominio común de selección dinámica. Todos los equipos necesitan escribir historias de usuarios, elaborar escenarios de pruebas, tomar decisiones de arquitectura o aplicar prácticas de seguridad como el modelado de amenazas. 

Estudio de caso: Una empresa líder de medios y editoriales recurrió a Thoughtworks para optimizar su proceso de desarrollo de software con IA. Con el portal de asistencia al equipo de Thoughtworks, estamos realizando experimentos a lo largo del ciclo de vida de desarrollo utilizando IA. 

5) Portales de asistencia al equipo

 

En resumen: muchos productos y herramientas para las tareas de entrega de software todavía están en sus etapas incipientes; los proveedores actuales de componentes existentes de la cadena de herramientas de entrega solo se están poniendo al día lentamente. Al mismo tiempo, muchos están ansiosos por explorar el potencial de la IA en la entrega de software. Para aprender más rápido que más tarde, considera la posibilidad de implementar una herramienta personalizada ligera que esté bajo tu control y una que tus equipos de ingeniería puedan utilizar para aprender sobre el potencial de la IA.

 

Experimentar pronto puede servir de base para su planificación e inversiones en el espacio y ayudarle a supervisar mejor la evolución del mercado de una manera más intencionada. El coste de aprendizaje con una herramienta personalizada también es relativamente bajo: GenAI como tecnología es bastante accesible, especialmente para la experimentación. Y, a diferencia de muchas otras herramientas utilizadas para entregar y ejecutar software, la asistencia GenAI no conduce al bloqueo del proveedor y a los esfuerzos de migración; simplemente puede dejar de usar una herramienta y comenzar a usar otra. A veces incluso puede reutilizar selecciones dinámicas con otras herramientas, ya que la interfaz de todas las herramientas es el lenguaje natural.

 

Thoughtworks tiene un acelerador que puede ayudarle a configurar un piloto de asistencia en equipo. Codifica las buenas prácticas y el conocimiento organizativo para ayudar a los equipos con tareas como la creación de ideas de productos, la redacción de historias de usuarios, los debates de arquitectura, la generación de datos de prueba o, de hecho, cualquier otra cosa adecuada para el soporte de GenAI. Esta configuración le permite aprender con una herramienta que se implementa en su entorno, bajo su control, con modelos proporcionados por un proveedor de nube en el que ya confía.

 

 

6) Modelos básicos y búsqueda

 

Los proveedores de componentes de cadena de herramientas de entrega y productos nativos de GenAI suelen proporcionar acceso a un modelo de lenguaje grande y funcionalidad de búsqueda como parte de su oferta. Sin embargo, para chatbots internos, herramientas de código abierto o herramientas personalizadas como el portal de asistencia al equipo, las organizaciones deben proporcionar acceso a modelos (de fundación) y capacidades de búsqueda para la propia generación aumentada de recuperación (RAG). Ese es el componente final de nuestro modelo mental.

 

Si mira este componente desde la perspectiva de ayudar a sus equipos de entrega de software hoy, la opción predeterminada para ver serían los servicios de modelo proporcionados por su proveedor de nube actual. AWS, Azure y Google Cloud proporcionan capacidades para configuraciones de recuperación de información simples para mejorar sus herramientas con algunos RAG para datos organizacionales relevantes. Configurar el acceso al modelo como este también le da la oportunidad de introducir algunas medidas de seguridad, supervisión y análisis.

 

 

Mirando hacia el futuro

 

La incansable presión de hacer más con menos, o incluso lo mismo, no se alivia. Aunque muchas de estas herramientas todavía se encuentran en sus primeras etapas, la trayectoria del mercado sugiere un desarrollo rápido y cambios en las prácticas y herramientas de entrega de software. Para mantenerse a la vanguardia, las organizaciones deben empezar a familiarizarse con la IA para la entrega de software. 

 

Empezar poco a poco dentro de ciertos departamentos o equipos puede iniciar una transformación gradual pero manejable, evitando los desafíos de una revisión a gran escala y apresurada más adelante. Más allá de la publicidad, la asistencia de IA en software no es solo una tendencia de paso. Al integrar proactivamente las herramientas de IA y cultivar una cultura de uso responsable, los líderes pueden garantizar que sus organizaciones sigan siendo competitivas y estén bien preparadas para un futuro en el que la IA esté profundamente integrada en cada aspecto del desarrollo de software.

 

Si desea explorar el potencial y la preparación de su organización para adoptar la IA en todo su ciclo de vida de entrega de software, solicite hoy mismo nuestra Clínica de entrega de software asistida por IA.

Más información en una clínica de entrega de software asistida por IA