Développement adaptatif S / W - Introduction

Qu'est-ce que Agile?

En termes littéraires, le mot «agile» signifie quelqu'un qui peut se déplacer rapidement et facilement ou quelqu'un qui peut penser et agir rapidement et clairement. Dans les affaires, «agile» est utilisé pour décrire les façons de planifier et de faire le travail dans lequel il est entendu que faire des changements au besoin est une partie importante du travail. L '«agilité» commerciale signifie qu'une entreprise est toujours en mesure de prendre en compte les évolutions du marché.

Dans le développement de logiciels, le terme «agile» est adapté pour signifier «la capacité de répondre aux changements - changements des exigences, de la technologie et des personnes».

Manifeste Agile

Le Manifeste Agile a été publié par une équipe de développeurs de logiciels en 2001, soulignant l'importance de l'équipe de développement, en tenant compte de l'évolution des exigences et de l'implication des clients.

Le Manifeste Agile est -

Nous découvrons de meilleures façons de développer des logiciels en le faisant et en aidant les autres à le faire. Grâce à ce travail, nous en sommes venus à valoriser -

  • Les individus et les interactions sur les processus et les outils.
  • Logiciel de travail sur une documentation complète.
  • Collaboration client sur négociation de contrat.
  • Répondre au changement au sujet d'un plan.

Autrement dit, bien qu'il y ait de la valeur dans les éléments de droite, nous valorisons davantage les éléments de gauche.

Caractéristiques de l'agilité

Voici les caractéristiques de l'agilité -

  • L'agilité dans le développement logiciel agile se concentre sur la culture de toute l'équipe avec des équipes multidisciplinaires et interfonctionnelles qui sont responsabilisées et auto-organisées.

  • Cela favorise le partage des responsabilités et de la responsabilité.

  • Facilite une communication efficace et une collaboration continue.

  • L'approche de toute l'équipe évite les retards et les temps d'attente.

  • Des livraisons fréquentes et continues garantissent une rétroaction rapide qui à son tour permet à l'équipe de s'aligner sur les exigences.

  • La collaboration facilite la combinaison de différentes perspectives en temps opportun dans la mise en œuvre, la correction des défauts et la prise en compte des changements.

  • Les progrès sont constants, durables et prévisibles, mettant l'accent sur la transparence.

Méthodologies Agiles

Les premières implémentations des méthodes Agile incluent Rational Unified Process, Scrum, Crystal Clear, Extreme Programming, Adaptive Software Development, Feature Driven Development et Dynamic Systems Development Method (DSDM). Celles-ci sont désormais collectivement appelées les méthodologies Agile, après la publication du manifeste Agile en 2001.

Dans ce tutoriel, nous allons apprendre la méthodologie Agile - Adaptive Software Development.

Qu'est-ce que le développement logiciel adaptatif?

Le développement logiciel adaptatif est une évolution vers des pratiques adaptatives, laissant les pratiques déterministes dans le contexte de systèmes complexes et d'environnements complexes. Le développement de logiciels adaptatifs se concentre sur la collaboration et l'apprentissage en tant que techniques pour construire des systèmes complexes. Il est issu des meilleures pratiques du développement rapide d'applications (RAD) et des cycles de vie évolutifs. Le développement de logiciels adaptatifs a ensuite été étendu pour inclure des approches adaptatives pour la gestion, la spéculation remplaçant la planification.

Jim Highsmith a publié un livre sur le développement de logiciels adaptatifs en 2000. Dans les mots de Highsmith -

«Le développement logiciel adaptatif est cyclique comme le modèle évolutif, avec les noms de phase Spéculer, collaborer, apprendre reflétant le domaine imprévisible de systèmes de plus en plus complexes. Le développement adaptatif va plus loin que son héritage évolutif de deux manières principales. Premièrement, il remplace explicitement le déterminisme par l'émergence. Deuxièmement, cela va au-delà d'un changement de cycle de vie pour un changement plus profond du style de gestion. »