Adaptive Software Development: Difference between revisions

Jump to navigation Jump to search
No edit summary
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{EntradaMeta
{{Meta-bok|min=5}}
|termino=Adaptive Software Development · ASD
|lectura=2 min de lectura
|temas=Agilidad
|actualizado= 2026
}}


''Adaptive Software Development'' (ASD) es el modelo de implementación de patrones ágiles para desarrollo de software, diseñado por Jim Highsmith,(''Adaptive Software Development: A Collaborative Approach to Managing Complex Systems'').
'''Adaptive Software Development''' (ASD) es un marco de desarrollo de software diseñado por Jim Highsmith a finales de los años noventa, publicado en su libro homónimo en el año 2000. Su aportación central fue sustituir el ciclo clásico ''planificar-diseñar-construir'' por un ciclo de tres fases que asume explícitamente la incertidumbre como condición normal del trabajo: '''especular, colaborar y aprender'''.
==Características básicas==
 
*Trabajo orientado y guiado por la misión del proyecto.
ASD bebe de la teoría de los sistemas adaptativos complejos: la idea de que en entornos de alta incertidumbre los resultados no pueden predecirse con precisión, sino que emergen de la interacción continua entre el equipo, el cliente y el producto. Esta base teórica lo sitúa entre los marcos más conceptualmente ricos del ecosistema ágil, aunque su adopción práctica haya sido menor que la de Scrum o XP.
*Basado en la funcionalidad.
 
*Desarrollo iterativo.
== Características básicas ==
*Desarrollo acotado temporalmente.
 
*Guiado por los riesgos.
* Trabajo orientado y guiado por la misión del proyecto, no por un plan detallado.
*Trabajo tolerante al cambio.
* Basado en la funcionalidad: el producto se construye y mide en términos de valor entregado.
==Fases de la gestión ágil según ASD==
* Desarrollo iterativo con ciclos cortos y acotados temporalmente.
===Especulación===
* Guiado por los riesgos: las decisiones se toman en función de lo que más puede salir mal.
Está compuesta por 5 pasos:
* Tolerante al cambio: el cambio no es una excepción que gestionar sino una constante que abrazar.
#Inicio para determinar la misión del proyecto.
* Orientado a la colaboración intensa entre el equipo técnico y el cliente.
#Fijación del marco temporal del proyecto.
 
#Determinación del número de iteraciones y la duración de cada una.
== Las tres fases del ciclo ASD ==
#Definición del objetivo de cada iteración.
 
#Asignación de funcionalidad a cada iteración.
=== Especulación ===
===Colaboración===
 
Desarrollo concurrente del trabajo de construcción y gestión del producto.
El término ''especulación'' sustituye deliberadamente a ''planificación''. Highsmith argumenta que en proyectos complejos hablar de "plan" implica una falsa certeza: en realidad se está haciendo una apuesta informada sobre cómo podría desarrollarse el trabajo. La especulación incluye:
===Aprendizaje===
 
*En cada iteración se revisa:
# Inicio del proyecto: definición de la misión y los objetivos de alto nivel.
**Calidad, con criterios de cliente.
# Fijación del marco temporal global del proyecto.
**Calidad, con criterios técnicos.
# Determinación del número de iteraciones y su duración.
**Funcionalidad desarrollada.
# Definición del objetivo de cada iteración.
**Estado del proyecto.
# Asignación provisional de funcionalidades a cada iteración.
 
=== Colaboración ===
 
El desarrollo del producto se realiza de forma concurrente entre el equipo técnico y el cliente. ASD enfatiza que la colaboración no es solo una práctica deseable sino una condición estructural del método: sin acceso continuo al cliente, el ciclo de aprendizaje se rompe.
 
=== Aprendizaje ===
 
Al final de cada iteración el equipo revisa cuatro dimensiones:
 
* '''Calidad desde el punto de vista del cliente:''' ¿el producto hace lo que el cliente necesita?
* '''Calidad técnica:''' ¿el código es mantenible y sostenible?
* '''Funcionalidad entregada:''' ¿se ha completado lo previsto para esta iteración?
* '''Estado del proyecto:''' ¿qué hemos aprendido que afecta a las próximas iteraciones?
 
Esta revisión no es solo una validación sino el principal mecanismo de adaptación del marco.
 
== ASD y el desarrollo de productos con IA ==
 
El ciclo especular-colaborar-aprender de ASD tiene una vigencia especial en el contexto del desarrollo de productos con IA generativa, donde la incertidumbre sobre el comportamiento del sistema es inherente y la planificación detallada resulta aún más difícil que en el software tradicional.
 
Tres conexiones concretas:
 
* '''Especulación y prompts:''' diseñar un prompt o configurar un modelo es, en términos de ASD, especulación pura: se hace una apuesta sobre cómo responderá el sistema y se itera a partir del resultado real, no del previsto.
* '''Colaboración con el cliente:''' los productos de IA requieren retroalimentación del usuario para evaluar la calidad del output, especialmente en tareas subjetivas. ASD ya describía esta necesidad antes de que existiera la IA generativa.
* '''Aprendizaje como mecanismo central:''' en el desarrollo con IA el ciclo de entrenamiento-evaluación-ajuste es funcionalmente idéntico al ciclo de aprendizaje de ASD. Equipos que ya trabajan con marcos adaptativos tienen más facilidad para integrar flujos de trabajo con modelos de lenguaje.
 
== ASD en perspectiva: dónde encaja hoy ==
 
ASD no es un marco de adopción habitual en 2025 y ha sido en gran medida absorbido por Scrum y otros enfoques ágiles que incorporaron sus principios de forma más concreta y operativa. Su valor actual es principalmente conceptual:
 
* Para equipos que quieren entender la base teórica de la agilidad más allá de las ceremonias de Scrum.
* Para organizaciones que trabajan en entornos de alta incertidumbre donde la idea de "especulación" resulta más honesta que la de "planificación".
* Como referencia histórica que ayuda a entender por qué el [[El manifiesto ágil|Manifiesto Ágil]] (2001) fue posible: ASD, junto con XP, Scrum y otros marcos, aportó el sustrato intelectual del que surgió.
 
== Error frecuente ==
 
<div class="bok-aviso">
'''Tratar ASD como un método operativo completo.''' A diferencia de Scrum, ASD no prescribe roles, eventos ni artefactos concretos. Es un marco conceptual que necesita complementarse con prácticas específicas para ser operativo. Quien busque instrucciones paso a paso encontrará más utilidad en Scrum o XP; quien busque fundamentos para entender por qué la agilidad funciona encontrará en ASD una lectura valiosa.
</div>
 
== Referencias ==
 
* Highsmith, Jim. (2000). ''Adaptive Software Development: A Collaborative Approach to Managing Complex Systems''. Dorset House Publishing.
* Highsmith, Jim. (2002). ''Agile Software Development Ecosystems''. Addison-Wesley.
 
== Véase también ==
 
<div class="bok-tags">
[[El manifiesto ágil]] [[Extreme programming]] [[Gestión evolutiva]] [[Crystal]] [[DSDM]] [[FDD]] [[Agilidad]] [[Mapa de metodologías]]
</div>
 
<div class="bok-ecosistema">
<div class="texto">
<span class="titulo">'''¿Quieres seguir aprendiendo?'''</span>
<span class="sub">En el Club Agile practicas y mides tu avance a tu ritmo, con recursos exclusivos, aulas e-learning y retos en Skill Arena. Y cuando quieras certificar lo que sabes, tienes convocatorias disponibles durante todo el año.</span>
</div>
<div class="botones">
<div class="bok-btn-outline">[https://scrummanager.com/club/ Club Agile]</div>
<div class="bok-btn-filled">[https://www.scrummanager.com/website/c/calendar/show-courses.php Ver convocatorias]</div>
</div>
</div>


[[Category:Glosario de términos]]
[[Category:Glosario de términos]]
[[Category:Marcos_y_modelos]]
[[Category:Marcos_y_modelos]]
[[Category:Metodologías ágiles]]