ATDD – Desarrollo orientado a Pruebas de Aceptación

por | Ene 22, 2019 | Capacidades, Desarrollo

ATDD (Acceptance Test Driven Development) o Desarrollo orientado a Pruebas de Aceptación es una metodología de trabajo que pone el foco en la colaboración entre usuarios, desarrolladores y testers, con el fin de entregar un producto de mayor calidad y en menos tiempo.

La calidad es algo que cualquier persona involucrada en un proyecto de desarrollo de software cuida y valora. Sin embargo, en ocasiones lo implementado no cumple las expectativas del cliente; la manera tradicional de planificar proyectos (intentar documentarlo «todo» antes de comenzar, realizar estimaciones a muy largo plazo…) suele traducirse en retrasos en entregas y un producto de baja calidad.

Además, como dice Jeff Sutherland, uno de los creadores de Scrum:

«Los usuarios no saben lo que quieren hasta que lo ven y siempre se reservan el derecho a cambiar de opinión».

Para solucionar esto, ATDD fomenta la comunicación entre cliente, testers y desarrolladores en ciclos rápidos de desarrollo, reemplazando la documentación monolítica por historias de usuario (User Stories) que sirven como base para la toma de requisitos. Mediante conversaciones frecuentes acerca del alcance de las User Stories, se establecen sus criterios de aceptación, es decir, qué requisitos ha de cumplir el desarrollo para ser aceptado por el usuario.

Estas sesiones colaborativas son conocidas como «los tres amigos» («the three amigos»), por las tres perspectivas aportadas a la hora de analizar las User Stories:
– Cliente: ¿Qué problema queremos resolver?
– Desarrollo: ¿Cómo lo podemos resolver?
– Calidad: ¿Qué pasa si…?

Al delimitar el alcance de cada User Story mediante los criterios de aceptación, es posible estimar mejor el tiempo y la complejidad de las tareas. Al mismo tiempo que se consigue encontrar detalles y casos no previstos. Además, estas conversaciones ayudan a que el equipo comprenda realmente las necesidades de los usuarios, adoptando su punto de vista y comunicándose con el cliente en su «idioma».

Ciclo de Vida ATDD

Ciclo de Vida ATDD

Las especificaciones en lenguaje natural son tomadas como Pruebas de Aceptación antes de escribir el código. Mediante las Pruebas de Aceptación es posible definir con ejemplos los criterios de aceptación de un desarrollo (lo que se conoce como «especificación mediante ejemplos»), de modo que los desarrolladores saben qué desarrollar y los usuarios saben qué tendrán.

Las Pruebas de Aceptación sirven también como documentación viva del proyecto (eliminando la documentación duplicada), a la vez que permiten automatizar Tests de Regresión (con herramientas de BDD como Cucumber) y sirven de puente entre el equipo de desarrollo y la parte de negocio implicada, mediante un entendimiento común de los requisitos del desarrollo.

Enfocar un producto con la metodología ATDD desde el comienzo del ciclo de vida del proyecto ahorrará esfuerzo, evitando el desperdicio (‘Muda’) que supone que el equipo de Desarrollo esté centrado en cualquier otra cosa que no sea lo que añadirá un mayor valor a la próxima entrega.

A medida que el proyecto madura y la colaboración con los usuarios se vuelve más fluida, la aproximación que nos ofrece ATDD ayuda a consolidar el cambio de cultura y la transformación digital que toda organización busca, dando como resultado un proceso de desarrollo más ágil y una mejor calidad del producto, previniendo errores, reduciendo el TTM y aumentando la satisfacción del cliente.

Entradas Relacionadas

Nuestro equipo de Desarrollo se forma en Kotlin

Nuestro equipo de Desarrollo se forma en Kotlin

La formación interna siempre ha sido muy importante para nosotros dentro de Kairós DS. La más reciente que hemos organizado ha sido en Kotlin, orientada al desarrollo con Java y Spring, impartida por Antonio Leiva, uno de los mayores expertos que hay en este lenguaje...

En Kairós DS nuestras puertas están abiertas

En Kairós DS nuestras puertas están abiertas

Que este año no está siendo fácil, eso es un hecho,  pero si algo nos caracteriza en Kairós DS es la adaptación que tenemos a los cambios.  El mercado ofrece nuevos retos y objetivos, lo que requiere nuevos perfiles para cubrir esas necesidades que han surgido en el...

2 Comentarios

  1. Enrique Barrales

    Buenas tardes, en su articulo de atdd, mencionan que kaizen es desperdicio y eso es incorrecto ya que kaizen significa «mejora». Desperdicio sería Mura

    Saludos

    Responder
    • Christina Chan Bravo

      Hola Enrique,
      Muchas gracias por tu comentario. Ya hemos corregido el error 😉

      ¡Un saludo!

      Responder

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *