Agile : un blogueur estime que le but n’est pas de réduire le temps de développement des logiciels
Qu’en pensez-vous ?
Quel est le but du développement Agile ? Développer des systèmes plus vite ou être agile dans le sens littéral du terme ? C’est à cette question que Lewis Foti - architecte de logiciel - a essayé de répondre pour corriger certaines conceptions que beaucoup pourraient avoir au sujet du développement Agile.
La question a été suscitée par un développeur qui estime que l’Agile n’est pas assez rapide et qu’il faudrait aller plus vite. En y réfléchissant, Foti parvient à la conclusion selon laquelle le développement Agile peut permettre de livrer rapidement des projets, mais c’est à tort de croire que l’objectif est de développer des systèmes plus vite.
Pour l’architecte de logiciel, comprendre le but de l’Agile passe par la compréhension des différences entre les méthodes Agiles et les méthodes de développement traditionnelles dites en cascades. « Agile est basé sur la planification légère, le développement incrémental, la livraison précoce et une réponse flexible au changement », rappelle-t-il pour commencer.
Par contre, les développements en cascades gravitent autour d’un planning défini dès le départ avec un délai et un budget à respecter, et c’est la raison pour laquelle ce type de projets connait un faible taux de succès. En effet, comme l’explique Foti, il n’y a aucun moyen de savoir exactement combien complexe le système à livrer peut-il être avant qu’il ne soit mis en œuvre. Des imprévus peuvent se produire à tout moment et affecter le planning, tant au niveau du délai qu’au niveau du budget. Faire donc un planning global peut facilement conduire à la livraison d’un produit incapable d’offrir le nécessaire à l’utilisateur final.
Si au début du projet, les développeurs n’ont pas vraiment une idée claire de ce qu’ils essaient de livrer, ils en saisissent toutefois une meilleure compréhension alors que le projet progresse. Le développement Agile exploite cette compréhension accrue du projet pour améliorer le plan initialement défini.
Pour répondre à sa question, Lewis Foti conclut que « le développement Agile permet de reconnaître les réalités de l'exécution du projet, sachant que nous ne connaissons pas assez ce qui est nécessaire au début du projet. Agile fournit un mécanisme et un environnement où les plans et les priorités sont adaptés pour profiter des connaissances acquises. La visibilité accrue du progrès et la validation fréquente de ce qui est développé réduit les risques liés à la livraison du projet. Les projets agiles peuvent permettre de livrer plus rapidement, mais ils doivent veiller à ce que l'effort soit investi de manière appropriée et conduire à la qualité de livraison ».
Source : Big architecture
Et vous ?
Qu’en pensez-vous ? Quelle est votre expérience du développement Agile ? Dans la pratique, Agile permet-il de réduire le temps de développement de logiciel ?
Partager