¿Cuáles son algunas buenas referencias para aprender sobre los diferentes tipos de técnicas de desarrollo ágil y cómo / cuándo aplicar cada una?

En mi opinión, la elección suele ser entre Agile y Process Driven, en lugar de entre diferentes sabores de agile. Alistair Cockburn tiene una visión interesante (lo siento, no estoy seguro de un enlace) donde mapea el tamaño del proyecto en un eje y las consecuencias del fracaso en el otro, desde “inconvenientes” hasta “muerte en masa”. A medida que los proyectos se mueven de tamaños más pequeños a más grandes, y a medida que las consecuencias del fracaso se vuelven más severas, más procesos y controles se vuelven más apropiados.

Entre metodologías ágiles particulares, estaría más a favor de encontrar algo que funcione bien para su equipo que un sabor exacto. Personalmente, prefiero una versión ligera de Scrum, pero Extreme puede ser excelente siempre que a su equipo no le importe trabajar de una manera más estrecha (literalmente).

Un peligro al adoptar cualquier proceso ágil es la posibilidad de que comiences a seguir el proceso PARA seguir el proceso. Recuerde que el proceso no tiene un valor inherente en sí mismo, su único valor está en cuánto ayuda a sus esfuerzos de desarrollo. Nunca tenga miedo de doblar, romper o cambiar ninguna de las reglas de un proceso ágil para adaptarse mejor a su equipo y circunstancias, y tenga mucho cuidado con cualquiera que trate el proceso como prescriptivo.

Los procesos ágiles son como los lenguajes de computadora. Si eliges y eliges funciones de idioma de varios idiomas, puedes obtener un desastre. Implemente Scrum o XP o preferiblemente ambos juntos, ya que están diseñados para trabajar juntos. No obtienes un rendimiento de 5-10x al elegir y elegir cuál es lo que espero de un buen Scrum.

Proyectos de uso donde el cliente no está seguro de cómo se ve el producto
http://www.allaboutagile.com/wha