Software projects, while not inherently unknowable, are notoriously difficult to estimate. In fact, a study by PWC found that the largest contributor to IT project failures, at 32%, was poor estimation at the project planning phase. But why do software projects take so long (i.e. longer than you think)?
Well, there are a number of reasons why software project management performs so poorly when it comes to delivering projects on time. These include:
- Unclear objectives: One of the biggest issues that developers face is clients who don’t actually know what they want. An initial estimate can be pushed back weeks from even starting as the exploration phase drags on and the project is clearly defined.
- Not all developers can work at the same speed: There are varying estimates as to the difference between the capabilities of good developers and average developers, ranging from 5:1 to 300:1 (from a Google Vice-President). Just because one developer managed a certain task in two weeks doesn’t mean another will be able to complete it in the same time.
- Désir de pousser le timing: Pour diverses raisons, comme essayer de faire passer un dossier commercial ou d'impressionner les cadres supérieurs, la direction ou les sponsors du projet peuvent être volontairement trop optimistes avec leurs techniques d'estimation de projet logiciel. Repousser les échéances au lieu de les reculer aboutit rarement à une livraison dans les délais.
- Late-in-game changes: It happens with nearly every development project – the team is five months in, and two weeks off delivery, the client gets a look at an evaluation prototype and suddenly they actually want something completely different. The result is a big firestorm as they try to push for out-of-scope changes, while the team tries to explain why that can’t happen, usually resulting in a compromise that brings the project way over time and budget, which then has to be further explained at the executive level.
- Ne pas prendre en compte tous les processus: Trop souvent, les techniques d'estimation des projets logiciels utilisées ne tiennent pas compte de ce qu'il faut réellement faire pour que le logiciel soit "prêt pour le client". Les tests alpha, les tests bêta et les corrections finales de bogues prennent tous du temps et ne peuvent pas être réalisés à la hâte, quelle que soit la date limite.
There is a multitude of reasons why software project estimation techniques fail to adequately predict a project’s timeline. So, what can be done to make those estimations better? Here are some tips:
Determine your critical path: An effective critical path approach will set out the minimum possible length the project can take. This is at least a good place to begin from and gives everyone a basic idea of where they stand.
Choisissez une stratégie d'estimation qui convient au projet: Il existe un certain nombre de techniques d'estimation de projets logiciels qui sont couramment utilisées. Le choix de l'une d'entre elles dépend de la situation de l'équipe à ce moment-là :
- Expert-driven estimation: The lead expert on a given point is asked to give their estimation and all of these are gathered together.
- Analogy-based estimation: Using the experience of similar projects and tasks to make predictions.
- Estimation par complexité : Pour les projets de grande envergure avec beaucoup d'estimations, une valeur de complexité est attribuée à , puis les temps sont calculés en fonction de la complexité.
- Negotiated estimation: Team leads and subject matter experts give their estimates and negotiate through differences if there are any.
Faites vérifier les estimations par des sources externes : Si le projet a un sponsor ou une personne sur laquelle on peut compter pour vérifier les estimations que vous faites, alors faites appel à eux et demandez leur aide.
Use a 20% range: Rather than insisting on a precise estimate, give a range, to account for the likely unknowables in the project. A standard range to go by is whatever your final estimation would be + 20%.
Pour la gestion de projets logiciels - et en fait pour toute gestion de projet - plus la visibilité est grande, plus les estimations sont précises. Lorsqu'il s'agit d'identifier le temps que prennent certaines choses et la durée d'un projet, le logiciel de gestion de projet de Planview AdaptiveWork est un leader mondial. Contactez-nous pour organiser une démonstration gratuite.