Caractéristiques du cycle de vie

Le cycle de vie du développement logiciel adaptatif comporte six caractéristiques de base:

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

Dans ce chapitre, vous comprendrez ces six caractéristiques du développement logiciel adaptatif.

Axé sur la mission

Pour de nombreux projets, la mission globale qui guide l'équipe est bien articulée, même si les exigences peuvent ê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 une focalisation étroite tout au long d'un projet. Une mission fournit des limites plutôt qu'une destination fixe. Les énoncés de mission et les discussions qui aboutissent à ces énoncés fournissent des orientations et des critères pour prendre des décisions critiques de compromis de projet.

Sans une mission claire et une pratique constante de raffinement de la mission, 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 de logiciels adaptatifs 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.

Boîte à temps

Dans Adaptive Software Development Lifecycle, les itérations sont limitées dans le temps. Cependant, il ne faut pas oublier que le time boxing dans le développement de logiciels adaptatifs n'est pas une question de délais. Il ne doit pas être utilisé pour faire travailler l'équipe pendant de longues heures pour remettre en question 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 se concentrer et forcer des décisions de compromis difficiles en cas de besoin. 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 guidé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.