Saltar al contenido principal

Descripción general

Devin se integra en todas las fases del ciclo de vida del desarrollo de software, desde comprender el código existente y planificar cambios hasta probar, revisar y desplegar actualizaciones.

Dónde invierten su tiempo los ingenieros

Las investigaciones muestran que menos del 20% del tiempo de un ingeniero se dedica a escribir código (1, 2). La mayor parte del tiempo se dedica a comprender bases de código, planificar cambios, revisar trabajo y realizar pruebas. Devin ayuda a acelerar cada una de estas fases mientras mantiene a los ingenieros humanos con el control.
Devin a lo largo del SDLC

El rol de Devin a lo largo del ciclo de vida del desarrollo de software

Trabajar dentro de los procesos de ingeniería existentes

Devin contribuye a las bases de código existentes creando pull requests (PR) que contienen sus cambios de código sugeridos. Devin está sujeto exactamente a las mismas protecciones de ramas y políticas de SDLC que cualquier ingeniero humano. Los ingenieros humanos revisan los PR creados por Devin antes de decidir si fusionan o no los cambios de código.

Puntos de integración en el SDLC

Comprensión del código y planificación

Antes de escribir cualquier código, las personas ingenieras necesitan comprender los sistemas existentes y planificar su enfoque. Devin acelera significativamente esta fase:
Usa DeepWiki para navegar por la arquitectura y el código con documentación generada automáticamente. DeepWiki proporciona documentación conversacional para tus repositorios, lo que agiliza la comprensión de sistemas complejos y sus dependencias.
Usa Ask Devin para consultar directamente tu base de código. Las personas ingenieras pueden hacer preguntas sobre la estructura del código, encontrar archivos relevantes y entender cómo interactúan los componentes, reduciendo el tiempo dedicado a la ingeniería inversa y al rastreo de dependencias.
Devin puede definir el alcance y planificar tareas analizando los requisitos en relación con tu base de código. Cuando se integra con Jira o Linear, Devin analiza automáticamente los tickets y proporciona niveles de confianza para ayudar a priorizar el trabajo.
Devin puede realizar el triaje de alertas y elementos del backlog, categorizando los problemas y sugiriendo enfoques. Esto ayuda a que los equipos de ingeniería prioricen eficazmente y reduce el tiempo dedicado a la investigación inicial.

Desarrollo

Devin gestiona tareas de desarrollo de forma asíncrona, lo que permite a los ingenieros delegar trabajo mientras se enfocan en actividades de mayor valor:
Delega tareas bien definidas a Devin de forma asíncrona. Devin trabaja en su propio entorno, preparando cambios de código y enviando PRs para revisión. Esto es particularmente efectivo para tareas repetitivas que pueden ejecutarse en paralelo en múltiples sesiones de Devin.
Devin destaca en proyectos de modernización a gran escala. Por ejemplo, algunos clientes han usado Devin para migrar monolitos ETL de varios millones de líneas a componentes modulares, logrando un ahorro de tiempo humano de 8 veces. Devin puede ejecutar migraciones de extremo a extremo en cientos de repositorios, incluyendo tecnologías heredadas como COBOL.
Devin prepara y envía PRs siguiendo las convenciones de tu equipo. Si existe un archivo devin_pr_template.md en tu repositorio, Devin lo usará para formatear las descripciones de PR de forma coherente.

Pruebas

Devin ejecuta bucles de pruebas autónomos en su propio entorno, mejorando la cobertura de pruebas y detectando problemas de forma temprana:
Devin escribe pruebas a partir de playbooks definidos por personas, siguiendo los patrones y convenciones de pruebas de tu equipo. Cuando Devin genera pruebas, la cobertura normalmente aumenta entre 1,5 y 2 veces, alcanzando con frecuencia más del 90% de cobertura.
Devin ejecuta pruebas en su propio entorno, iterando sobre el código hasta que todas las pruebas pasan. Esto incluye ejecutar tus suites de pruebas existentes, ejecutar linters y realizar comprobaciones de tipos antes de enviar PRs.

Revisión de código

Devin puede proporcionar revisiones automatizadas iniciales en pull requests (PR):
Configura Devin a través de la API para revisar los PR antes que los revisores humanos. Cada PR recibe una revisión inicial generada automáticamente que comprueba la corrección y el cumplimiento de las mejores prácticas de tu organización.
Devin verifica los PR frente a tus estándares de código, guías de estilo y requisitos de seguridad, señalando posibles problemas para que los revisores humanos los aborden.

Seguridad y cumplimiento normativo

Devin se integra en los pipelines de CI/CD para abordar automáticamente los hallazgos de seguridad:
Integra Devin en tu pipeline de CI/CD para responder a los hallazgos de herramientas de análisis estático como SonarQube, Fortify o Veracode. Cuando estas herramientas señalan un problema, Devin puede revisarlo y corregirlo automáticamente.Los clientes informan de que aproximadamente el 70% de las vulnerabilidades se resuelven automáticamente, eliminando backlogs históricos y reduciendo el riesgo en materia de seguridad.
Devin puede ejecutar cambios relacionados con el cumplimiento normativo en toda tu base de código. Por ejemplo, cuando nuevas regulaciones requieren actualizaciones en cientos de miles de archivos, Devin puede implementar los cambios de forma sistemática en todos los repositorios afectados.

Primeros pasos

Para integrar Devin en tu SDLC:
  1. Conecta tus repositorios mediante GitHub, GitHub Enterprise Server, GitLab, Bitbucket o Azure DevOps
  2. Configura las protecciones de rama para asegurarte de que los pull requests (PR) de Devin pasen por tu proceso estándar de revisión
  3. Configura integraciones con Jira o Linear para flujos de trabajo basados en tickets, y con Slack o Microsoft Teams para chatear y colaborar con Devin
  4. Crea playbooks y Knowledge para codificar los patrones y estándares de tu equipo que Devin debe seguir
  5. Conecta MCPs para ampliar las capacidades de Devin con herramientas e integraciones personalizadas
  6. Configura la integración de CI/CD para habilitar la remediación automatizada de seguridad y las pruebas automatizadas