estoy empezando mi tesis de grado y el tema será "arquitecturas ágiles"arquitecturas ágiles
Básicamente, se iniciará con una descripción de metodologías más de desarrollo de software tradicionales, y el posterior nacimiento de metodologías ágiles, terminando con las recomendaciones y un diseño de una arquitectura de aplicación flexible fácilmente adaptable a los cambios inherentes en la construcción del software.
Mi pregunta es, ¿qué patrones y prácticas de diseño recomendaría para una arquitectura de este tipo? Me interesan los patrones que permiten la maximización del desacoplamiento de clases como la inyección de dependencia, la alta capacidad de mantenimiento y la máxima abstracción del problema específico.