Características del ciclo de vida

El ciclo de vida del desarrollo de software adaptativo tiene seis características básicas:

  • Centrado en la misión
  • Basado en características
  • Iterative
  • Time-boxed
  • Impulsado por el riesgo
  • Tolerante al cambio

En este capítulo, comprenderá estas seis características del desarrollo de software adaptativo.

Centrado en la misión

Para muchos proyectos, la misión general que guía al equipo está bien articulada, aunque los requisitos pueden ser inciertos al comienzo del proyecto. Las declaraciones de misión actúan como guías que fomentan la exploración al principio, pero tienen un enfoque limitado en el transcurso de un proyecto. Una misión proporciona fronteras en lugar de un destino fijo. Las declaraciones de misión y las discusiones que dan como resultado esas declaraciones proporcionan orientación y criterios para tomar decisiones críticas de compensación del proyecto.

Sin una misión clara y una práctica constante de refinamiento de la misión, los ciclos de vida iterativos se convierten en ciclos de vida oscilantes, oscilando hacia adelante y hacia atrás sin ningún progreso en el desarrollo.

Basado en características

El ciclo de vida del desarrollo de software adaptativo se basa en las características de la aplicación y no en las tareas. Las características son las funciones que se desarrollan durante una iteración en función de las prioridades del cliente.

Las características pueden evolucionar en varias iteraciones cuando los clientes brindan comentarios.

Las características de la aplicación que proporcionan resultados directos al cliente después de la implementación son primarias. Un documento orientado al cliente, como un manual de usuario, también se considera una característica. Los otros documentos, como el modelo de datos, incluso si se definen como entregables, son siempre secundarios.

Iterativo

El ciclo de vida del desarrollo de software adaptativo es iterativo y se centra en lanzamientos frecuentes para obtener comentarios, asimilar el aprendizaje resultante y establecer la dirección correcta para un mayor desarrollo.

Caja de tiempo

En el ciclo de vida del desarrollo de software adaptativo, las iteraciones están encuadradas en el tiempo. Sin embargo, uno debe recordar que el ajuste de tiempo en el desarrollo de software adaptativo no se trata de fechas límite. No debe utilizarse para hacer que el equipo trabaje durante largas horas desafiando un entorno de colaboración o para comprometer la calidad de los entregables.

En el desarrollo de software adaptativo, el time-boxing se considera una dirección para enfocar y forzar decisiones difíciles de compensación cuando sea necesario. En un entorno incierto, en el que las tasas de cambio son altas, es necesario que haya una función de forzamiento periódica, como una caja de tiempo, para terminar el trabajo.

Impulsado por riesgo

En el desarrollo de software adaptativo, las iteraciones se impulsan mediante la identificación y evaluación de los riesgos críticos.

Tolerante al cambio

El desarrollo de software adaptativo es tolerante a los cambios y considera el cambio como la capacidad de incorporar una ventaja competitiva, pero no como un problema para el desarrollo.