Aquí está mi opinión:
El desarrollo ágil de software es un grupo de métodos de desarrollo de software basados en el desarrollo iterativo e incremental, donde los requisitos y las soluciones evolucionan a través de la colaboración entre equipos autoorganizados y multifuncionales. (fuente: wikipedia)
Para que Agile tenga éxito, necesita equipos autoorganizados y multifuncionales. Agile no habla sobre cómo escribir código, qué debería ser la calidad del código y qué metodología de prueba debe seguir.
Agile solo dice que el control de calidad, en lugar de esperar 3 meses para comenzar a analizar las pruebas (por ejemplo, cascada), tiene un modo iterativo de desarrollo de software en el que participan todas las partes interesadas de cada fase del desarrollo del producto.
No veo cómo se relaciona esto con TDD. Siento que TDD se reduce al desarrollador individual. Cuando comencé a codificar por primera vez, nunca escuché la palabra ‘ágil’. Pero mi arquitecto practicaba TDD. Solía bromear diciendo que esa es la única forma en que me aseguro de que no rompas mi código.
- ¿Cuál es la mejor manera de hacer que las pruebas de software funcionen como freelance?
- ¿Puedo solicitar una visa 457 como ingeniero de software cuando tengo 2 años de experiencia en Victoria? ¿Y vale la pena?
- ¿Cómo se ve un equipo de desarrollo de software realmente bueno? (¿Qué lo hace genial?)
- ¿Qué es un resumen del artículo 'The Mythical Man-Month'?
- ¿Qué consejos debo tener en cuenta al escribir mi primera declaración de trabajo como ingeniero de software de consultoría?
Si no fuera a seguir TDD (no hay absolutamente ninguna razón para hacerlo), no le impediría seguir metodologías ágiles.
Esta es mi opinión, los líderes de la industria podrían tener una opinión diferente.