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

Desarrollo test-first asistido por IA

Published : Apr 26, 2023
NOT ON THE CURRENT EDITION
This blip is not on the current edition of the Radar. If it was on one of the last few editions, it is likely that it is still relevant. If the blip is older, it might no longer be relevant and our assessment might be different today. Unfortunately, we simply don't have the bandwidth to continuously review blips from previous editions of the Radar. Understand more
Apr 2023
Assess ?

Como muchas otras veces en la industria del software, hemos estado explorando la rápida evolución de las herramientas de IA que pueden asistirnos al escribir código. Vemos muchas personas alimentando ChatGPT con una implementación, y luego le piden que les genere los test asociados a esa implementación. Sin embargo, como somos grandes partidarios del TDD, y casi nunca nos gusta alimentar un modelo externo con nuestro código de implementación potencialmente sensible, uno de nuestros experimentos en este campo es una técnica que llamamos desarrollo test-first asistido por IA. En este enfoque, le pedimos a ChatGPT que genere los tests por nosotros, y a partir de ahí un desarrollador implementa esa funcionalidad. Más específicamente, primero describimos el stack tecnológico y los patrones de diseño que estamos usando a través de un fragmento disponible que será reusable en múltiples casos de uso. Después describimos la funcionalidad específica que queremos implementar, incluyendo los criterios de aceptación. Basado en todo esto, le pedimos a ChatGPT que genere un plan de implementación para esta funcionalidad usando nuestro estilo de arquitectura y tech stack. Una vez que hemos revisado el plan de implementación, le pedimos que genere los tests para nuestros criterios de aceptación.

Este planteamiento nos ha funcionado extremadamente bien: requirió que el equipo tuviera preparada una descripción muy concisa sobre su estilo de arquitectura y ayudó a desarrolladores junior y nuevos miembros de equipos a desarrollar funcionalidades alineadas con el estilo ya existente en el equipo. El mayor inconveniente de este planteamiento es que aunque no estemos ofreciendo al modelo nuestro código fuente, si que le estamos alimentando potencialmente con información sensible como nuestro stack tecnológico o las descripciones de nuestras funcionalidades. Los equipos deberán asegurarse que trabajan con sus consejeros legales para evitar cualquier tipo de incumplimiento de la propiedad intelectual, al menos hasta que aparezca disponible una versión "para empresas” de estas herramientas de IA.

Download the PDF

 

 

 

English | Português

Sign up for the Technology Radar newsletter

 

 

Subscribe now

Visit our archive to read the previous volumes