Caractéristiques du cycle de vie

Le cycle de vie du développement logiciel adaptatif a six caractéristiques de base -

  • Axé sur la mission
  • Basé sur les fonctionnalités
  • Itératif
  • Time-boxed
  • Axé sur le risque
  • Tolérant au changement

Dans ce chapitre, vous comprendrez ces six caractéristiques du développement de logiciels adaptatifs.

Axé sur la mission

Pour de nombreux projets, la mission globale qui guide l'équipe est bien articulée, bien que les exigences puissent être incertaines au début du projet. Les énoncés de mission agissent comme des guides qui encouragent l'exploration au début mais ont un objectif étroit au cours d'un projet. Une mission fournit des frontières plutôt qu'une destination fixe. Les énoncés de mission et les discussions qui ont abouti à ces énoncés fournissent une orientation et des critères pour prendre des décisions critiques de compromis de projet.

Sans une mission claire et une pratique de raffinement de mission constante, les cycles de vie itératifs deviennent des cycles de vie oscillants, oscillant d'avant en arrière sans progrès dans le développement.

Basé sur les fonctionnalités

Le cycle de vie du développement logiciel adaptatif est basé sur les fonctionnalités de l'application et non sur les tâches. Les fonctionnalités sont les fonctionnalités développées au cours d'une itération en fonction des priorités du client.

Les fonctionnalités peuvent évoluer sur plusieurs itérations lorsque les clients fournissent des commentaires.

Les fonctionnalités de l'application qui fournissent des résultats directs au client après la mise en œuvre sont principales. Un document orienté client tel qu'un manuel d'utilisation est également considéré comme une fonctionnalité. Les autres documents tels que le modèle de données, même s'ils sont définis comme livrables, sont toujours secondaires.

Itératif

Le cycle de vie du développement logiciel adaptatif est itératif et se concentre sur les versions fréquentes afin d'obtenir des commentaires, d'assimiler l'apprentissage qui en résulte et de définir la bonne direction pour le développement ultérieur.

Time-boxed

Dans Adaptive Software Development Lifecycle, les itérations sont temporelles. Cependant, il ne faut pas oublier que le time-boxing dans Adaptive Software Development ne concerne pas les délais. Il ne doit pas être utilisé pour faire travailler l'équipe pendant de longues heures dans un environnement collaboratif ou pour compromettre la qualité des livrables.

Dans le développement de logiciels adaptatifs, le time-boxing est considéré comme une direction pour concentrer et forcer les décisions de compromis difficiles au fur et à mesure des besoins. Dans un environnement incertain, dans lequel les taux de changement sont élevés, il doit y avoir une fonction de forçage périodique telle qu'une boîte de temps pour terminer le travail.

Axé sur le risque

Dans le développement de logiciels adaptatifs, les itérations sont déterminées par l'identification et l'évaluation des risques critiques.

Tolérant au changement

Le développement de logiciels adaptatifs est tolérant au changement, considérant le changement comme la capacité d'incorporer un avantage concurrentiel, mais pas comme un problème de développement.