Passer à la navigation principale Passer à la recherche Passer au contenu principal

Improving the estimation, contingency planning and tracking of agile software development projects

  • Eduardo Miranda

Thèses et mémoires: Thèse de doctoratDoctorat en génie: Génie

Résumé

Les progrès technologiques dus aux logiciels présents dans nos maisons, nos voitures et nos téléphones ont également apporté des changements à la manière dont cette même technologie est développée. L’augmentation de la puissance des ordinateurs a permis l’émergence d’une nouvelle approche pour développer du logiciel. Cette approche s'appuie sur des composants, du prototypage et des cycles de développement courts, plutôt que sur une approche plus traditionnelle - mais pas si lointaine - basée sur des phases d’analyse, de conception et de réalisation. Cette nouvelle approche s’intitule le développement agile. Cette thèse porte sur trois aspects distincts, bien qu’étroitement liés, de la gestion de ce type de projets dits agiles de développement de logiciel, à savoir : - l'estimation de la taille du logiciel pour planifier un projet, - le suivi des activités de développement et, - le calcul et l'administration des fonds de réserve La taille du logiciel constitue l’intrant principal au processus d’estimation de l'effort et de la durée d’un projet de développement de logiciel. En conséquence, déterminer des évaluations crédibles et fiables de cette taille est primordial au processus d’estimation. Cette thèse propose en premier l'utilisation d'une méthode modifiée de comparaison par paires pour appuyer le jugement des experts - méthode d’estimation la plus utilisée dans l'industrie du logiciel. Dans la méthode modifiée proposée, le nombre de comparaisons, un facteur limitant l'utilisation de la méthode à grande échelle, est réduit presque de moitié par l’emploi des designs cycliques incomplets (Incomplete Cyclic Design - ICD) pour choisir des paires appropriées d'entités à comparer. Cette thèse porte en deuxième sur le suivi d'un projet qui consiste en un processus de comparaison de l’avancement du projet anticipé selon la planification par rapport à son avancement réel, afin de décider, s’il y a lieu, des actions nécessaires pour le compléter tel que prévu. La thèse propose et montre l'utilisation d'un indicateur de ligne de mise à jour (Line of Balance - LOB) modifié en vue d'obtenir des informations non disponibles avec les « burn down charts » et les diagrammes de flux cumulatif (cumulative flow diagram), les deux indicateurs les plus fréquemment utilisés dans les projets dits agiles. La contribution de la thèse s’inscrit, non seulement en termes de la nouveauté de l'application de cet indicateur LOB aux projets de développement de logiciels, mais également dans le remplacement des calculs de délai provenant des plans originaux, par de l’information extraite directement d'un système de contrôle de versions. Cette thèse porte en troisième lieu sur les fonds de réserve tels que définis par le Project Management Institute (PMI) comme la quantité de fonds requis au-delà de l'estimation pour ramener le risque de dépassements à un niveau acceptable pour l'organisation. Cette thèse postule qu'un calcul réaliste de ces fonds devrait être basé sur le coût de maintien du projet dans les délais, et non sur ce qu’aurait coûté ce travail s’il avait été prévu dès le commencement. Cette thèse propose en outre un modèle quantitatif tenant compte de la taille du projet, du moment auquel la sous-estimation a été reconnue et des pertes de processus liées aux actions de rétablissement. Les résultats du modèle permettent l'exploration des coûts et des avantages de plusieurs alternatives de gestion. Les trois méthodes présentées s’avéreront du plus grand intérêt pour les chefs de projet, les ingénieurs logiciel et les autres intervenants impliqués dans la planification des projets et les activités de gestion des risques. Même si les exemples employés pour illustrer et expliquer les concepts correspondent aux projets utilisant des approches agiles telles que « Scrum » et « Feature Driven Development », les méthodes proposées s'appliquent aussi aux autres types de développement de logiciels.
Date26 août 2010
langue originaleAnglais américain
Établissement diplômant
  • École de technologie supérieure
SuperviseurPierre Bourque (Directeur(-trice)) & Alain Abran (Codirecteur(-trice))

Mots-clés

  • Méthodes agiles (Développement de logiciels) Gestion. estimation du logiciel
  • suivi des activités
  • ligne de mise à jour
  • calcul et administration des fonds de réserve
  • développement agile
  • comparaison par paires

Citer cette ressource

'