Características do ciclo de vida

O Ciclo de Vida de Desenvolvimento de Software Adaptável tem seis características básicas -

  • Missão focada
  • Baseado em recursos
  • Iterative
  • Time-boxed
  • Orientado pelo risco
  • Tolerante à mudança

Neste capítulo, você entenderá essas seis características do Desenvolvimento Adaptativo de Software.

Focado na missão

Para muitos projetos, a missão geral que orienta a equipe é bem articulada, embora os requisitos possam ser incertos no início do projeto. As declarações de missão atuam como guias que incentivam a exploração no início, mas têm um foco estreito ao longo do projeto. Uma missão fornece limites em vez de um destino fixo. As declarações de missão e as discussões que resultam nessas declarações fornecem direção e critérios para a tomada de decisões críticas de compensação de projetos.

Sem uma missão clara e uma prática de refinamento de missão constante, os ciclos de vida iterativos tornam-se ciclos de vida oscilantes, oscilando para frente e para trás sem nenhum progresso no desenvolvimento.

Baseado em recursos

O Adaptive Software Development Lifecycle é baseado em recursos de aplicativos e não em tarefas. Recursos são as funcionalidades desenvolvidas durante uma iteração com base nas prioridades do cliente.

Os recursos podem evoluir em várias iterações quando os clientes fornecem feedback.

Os recursos do aplicativo que fornecem resultados diretos ao cliente após a implementação são os principais. Um documento orientado para o cliente, como um manual do usuário, também é considerado um recurso. Os outros documentos, como o modelo de dados, mesmo se definidos como entregas, são sempre secundários.

Iterativo

O Adaptive Software Development Lifecycle é iterativo e se concentra em lançamentos frequentes para obter feedback, assimilar o aprendizado resultante e definir a direção certa para um desenvolvimento posterior.

Time-boxed

No Adaptive Software Development Lifecycle, as iterações são limitadas no tempo. No entanto, deve-se lembrar que time-boxing no Adaptive Software Development não se trata de prazos. Não deve ser usado para fazer a equipe trabalhar por longas horas desafiando um ambiente colaborativo ou para comprometer a qualidade dos resultados.

No Adaptive Software Development, o time-boxing é considerado uma direção para focar e forçar decisões de tradeoff difíceis como e quando necessário. Em um ambiente incerto, no qual as taxas de mudança são altas, é necessário que haja uma função de força periódica, como uma caixa de tempo, para terminar o trabalho.

Orientado pelo risco

No Adaptive Software Development, as iterações são conduzidas pela identificação e avaliação dos riscos críticos.

Tolerante à mudança

O Adaptive Software Development é tolerante a mudanças, vendo as mudanças como a capacidade de incorporar vantagem competitiva, mas não como um problema para o desenvolvimento.