Diseño ágil con TDD

1.3. El manifiesto ágil

Hasta ahora hemos visto que quizás para algunos proyectos se esté realizando un esfuerzo vano e incluso peligroso: intentar aplicar prácticas de estimación, planificación e ingeniería de requisitos. No es conveniente pensar que estas prácticas son malas en sí mismas o que los fracasos se deben a una mala aplicación de estas, sino que deberíamos recapacitar sobre si estamos aplicando las prácticas adecuadas.

En 2001, 17 representantes de nuevas metodologías y críticos de los modelos de mejora basados en procesos se reunieron, convocados por Kent Beck, para discutir sobre el desarrollo de software. Fue un grito de ¡basta ya! a las prácticas tradicionales. Estos profesionales, con una dilatada experiencia como aval, llevaban ya alrededor de una década utilizando técnicas que les fueron posicionando como líderes de la industria del desarrollo software. Conocían perfectamente las desventajas del clásico modelo en cascada donde primero se analiza,luego se diseña, después se implementa y, por último (en algunos casos), se escriben algunos tests automáticos y se martiriza a un grupo de personas para que ejecuten manualmente el software, una y otra vez hasta la saciedad. El manifiesto ágil se compone de cuatro principios. Es pequeño pero bien cargado de significado:

Estamos descubriendo mejores maneras de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A través de esta experiencia hemos aprendido a valorar:

  • Individuos e interacciones sobreprocesos y herramientas
  • Software que funciona sobre documentación exhaustiva
  • Colaboración con el cliente sobre negociación de contratos
  • Responder ante el cambio sobre seguimiento de un plan

Esto es, aunque los elementos a la derecha tienen valor, nosotros valoramos por encima de ellos los que están a la izquierda.

Firmantes: Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas.

Tras este manifiesto se encuentran 12 principios de vital importancia para entender su filosofía:

  1. Nuestra máxima prioridad es satisfacer al cliente a través de entregas tempranas y continuas de software valioso.
  2. Los requisitos cambiantes son bienvenidos, incluso en las etapas finales del desarrollo. Los procesos ágiles aprovechan al cambio para ofrecer una ventaja competitiva al cliente.
  3. Entregamos software que funciona frecuentemente, entre un par de semanas y un par de meses. De hecho es común entregar cada tres o cuatro semanas.
  4. Las personas del negocio y los desarrolladores deben trabajar juntos diariamente a lo largo de todo el proyecto.
  5. Construimos proyectos en torno a individuos motivados. Dándoles el lugar y el apoyo que necesitan y confiando en ellos para hacer el trabajo.
  6. El método más eficiente y efectivo de comunicar la información hacia y entre un equipo de desarrollo es la conversación cara a cara.
  7. La principal medida de avance es el software que funciona.
  8. Los procesos ágiles promueven el desarrollo sostenible. Los patrocinadores, desarrolladores y usuarios deben poder mantener un ritmo constante.
  9. La atención continua a la excelencia técnica y el buen diseño mejora la agilidad.
  10. La simplicidad es esencial.
  11. Las mejores arquitecturas, requisitos y diseños emergen de la auto-organización de los equipos.
  12. A intervalos regulares, el equipo reflexiona sobre cómo ser más eficaces, a continuación mejoran y ajustan su comportamiento en consecuencia.

Este libro no pretende abarcar el vasto conjunto de técnicas y metodologías del agilismo pero, considerando la poca literatura en castellano que existe actualmente sobre este tema, merece la pena publicar el manifiesto.


Copyright (c) 2010-2013 Carlos Ble. La copia y redistribución de esta página se permite bajo los términos de la licencia Creative Commons Atribución SinDerivadas 3.0 Unported siempre que se conserve esta nota de copyright.