Qu'est-ce que l'approche itérative agile et où est-elle utilisée ?

Publié: 2018-06-22

Pour répondre à la demande du marché, les scénarios en évolution rapide de l'activité numérique ont exercé une pression croissante sur les DSI, pour qu'ils fournissent un développement logiciel tout aussi rapide.

Selon Gartner, un nombre croissant d'organisations informatiques optent pour le développement Agile pour rationaliser la gestion de projet et illustrer la valeur commerciale.

Le 12e rapport annuel sur l'état de l'agilité a révélé que l'une des cinq principales raisons invoquées pour l'adoption des méthodologies agiles était la livraison accélérée de logiciels , passant à 75 % en 2018. Alors que la planification itérative, avec une augmentation de 88 %, était la deuxième solution Agile la plus utilisée. Technique en 2018.

Qu'est-ce que le développement itératif agile ?

Les méthodes agiles de développement logiciel sont le plus souvent décrites comme un développement itératif et incrémental. La stratégie itérative est la pierre angulaire des pratiques Agile, dont les plus importantes sont SCRUM, DSDM et FDD. L'idée générale est de scinder le développement du logiciel en séquences de cycles répétés (itérations). Chaque itération se voit attribuer une durée fixe appelée timebox. Une seule timebox dure généralement de 2 à 4 semaines.

Le modèle itératif agile est peut-être mieux expliqué par Craig Larman dans son livre Agile and Iterative Development - A Manager's Guide . Larman explique que le modèle fonctionne sur une roue ADTC (Analyse, Conception, Code, Test). C'est-à-dire que chaque cycle d'itération intègre l'Analyse du plan, la Conception, son Code et simultanément le Test. La roue ADTC est plus techniquement appelée cycle PDCA (Plan, Design, Check, Adjust). L'équipe Agile implémente le cycle PDCA sur chaque itération séparément de la manière suivante :

P (Plan) - Planification des itérations

Dans cet événement, l'équipe collabore pour discuter des objectifs de la prochaine itération. Il résume également le travail effectué et détermine le backlog de l'équipe requis pour la prochaine itération.

D (Conception) – Exécution des itérations

Il s'agit de l'étape « faire » où le développement du logiciel, sa conception et son codage ont lieu. S'il s'agit d'une deuxième ou troisième itération, des tests de fonctionnalité sont également effectués. L'équipe recueille les témoignages d'utilisateurs et se prépare pour l'étape suivante, qui est l'examen des itérations.

C (Vérifier) ​​– Examen des itérations

Egalement connue sous le nom d'étape de 'check', l'Iteration Review est réalisée avec le Product Owner. L'équipe montre le livrable testé au Product Owner, qui examine ensuite le travail terminé et vérifie si tous les critères ont été remplis.

A (Ajuster) - Rétrospection d'itération

Dans ce cas, l'équipe évalue l'ensemble du processus d'itération dès la première étape. Il fonctionne essentiellement sur toutes les améliorations qui sont rassemblées dans les itérations précédentes. Les nouveaux problèmes sont identifiés avec leurs causes. Avant que l'équipe ne recommence le cycle suivant, le backlog de l'équipe est affiné pour référence future.

Les itérations sont répétées pour les optimisations et les improvisations et, les leçons apprises des cycles précédents sont appliquées au cycle suivant. Jusqu'à ce qu'un logiciel entièrement fonctionnel soit prêt à arriver sur le marché.

Avantages du développement itératif agile

La gestion de projet agile a été créée comme une alternative plus flexible à l'approche traditionnellement rigide en cascade.

La méthode Waterfall est une approche linéaire qui procède séquentiellement d'une phase à l'autre, sans permettre au développement de revenir à l'étape précédente. Il va sans dire que la méthode Waterfall entraîne des répercussions imminentes, qui incluent, mais sans s'y limiter, des coûts de développement accrus, une livraison prolongée de logiciels et un apport de ressources supplémentaires.

Sudhakar Gorti, CIO pour Environmental Data Resources est d'accord : « L'un des principaux avantages d'Agile sur Waterfall est que vous voyez un livrable sur une base itérative et que le Product Owner peut décider d'apporter des modifications au backlog du produit ».

Implication du client – ​​Agile Le développement itératif encourage la contribution des utilisateurs. Après chaque cycle itératif, les commentaires des clients sont obtenus et le produit est ensuite soumis aux modifications nécessaires en fonction de ces commentaires. Cet aspect apporte de l'adaptabilité dans le cadre du projet.

Favorise l'évolution - La planification dans le processus de développement Agile itératif est un exploit continu, qui laisse de la place pour l'évolution des idées, au lieu d'une planification approfondie qui ne précède que l'exécution et les tests dans Waterfall.

Évaluation des risques - L'itération agile permet l'identification et l'atténuation des risques dès le début du développement pour éviter les ralentisseurs plus tard dans la chronologie.

Livraison rapide - Le travail est divisé en petits cycles, permettant aux membres de l'équipe de se concentrer et de livrer à temps. De plus, les tests sont menés simultanément dans le codage et la conception à chaque itération, ce qui réduit considérablement le temps nécessaire pour parvenir à l'achèvement.

Où l'approche itérative agile est-elle employée ?

L'approche itérative agile est la mieux adaptée aux projets ou aux entreprises qui font partie d'un périmètre en constante évolution. Projets qui n'ont pas un ensemble défini d'exigences destinées à un ensemble de temps défini. Dans de tels cas, l'approche itérative agile aide à minimiser les coûts et les ressources nécessaires chaque fois qu'un changement imprévu se produit.

nTask a été créé en utilisant la méthodologie Scrum. Scrum permet un travail d'équipe indépendant à l'aide de la roue ADCT, pour laquelle diverses équipes nTask ont ​​travaillé en collaboration dans des sprints de deux semaines (itérations).

Étant donné que la portée de nTask évolue en permanence et que des ajouts sont effectués chaque semaine, l'approche itérative permet à l'équipe de développement de nTask d'aller et venir pour les optimisations.

Brad Murphy, PDG du cabinet de conseil Agile Gear Stream, estime que l'approche itérative Agile est désormais largement utilisable dans des domaines autres que le développement de logiciels.

Il explique comment le marketing numérique peut bénéficier de l'approche itérative en utilisant l'élément de livraison fréquente pour recueillir les commentaires des clients. Les commentaires sollicités rapidement peuvent directement aider à améliorer les itérations suivantes pour attirer un trafic plus important.

Selon les enquêtes du Deloitte Center for Government Insights, 80 % des grands projets informatiques fédéraux se qualifiaient d'« itératifs agiles » en 2017. L'une des raisons de cette augmentation s'explique facilement par la réduction du temps nécessaire pour mener à bien un projet en harmonie. avec le coût total du projet.

Un autre rapport de Deloitte en 2015 révèle que des banques comme Barclays ont également commencé à utiliser des approches itératives telles que Scrum sur plus de 20 % de leurs audits internes. Barclays a reconnu bénéficier de SCRUM dans des domaines tels que la gestion des risques et la planification.

L'approche itérative agile ne se limite pas aux organisations informatiques et aux sociétés financières. Walmart utilise l'approche itérative agile pour les audits internes. L'un de leurs nombreux succès après l'induction Agile était le gain de temps par rapport à l'approche d'audit traditionnelle.

Ricky Barr, directeur général de l'audit interne, United Airlines, résume son expérience de l'utilisation de l'audit interne agile de Deloitte comme « un cycle d'audit plus rapide via des itérations limitées dans le temps ».

Jusqu'à il y a 8 ans, de nombreuses entreprises telles que la grande majorité des clients de Gartner utilisaient encore les méthodes Waterfall traditionnelles pour le développement d'applications.

Mais avec les avantages démontrables d'Agile au fil des ans, allant d'une valeur commerciale accrue à un fort impact organisationnel, la communauté Agile s'est étendue des start-ups aux marques mondiales comme celles d'IBM et de Cisco.