According to Standish Group research, 31.1% of projects
will be cancelled before they ever get completed.
Further results indicate 52.7% of projects
will cost 189% of their original estimates
To complete the project in time and budget that were initially estimated, a thorough analysis should be made before the project starts. Let’s consider what stages are usually passed during the estimation.
At the first stage, we need to analyze all materials received from the customer. In some cases, customer provide detailed specifications, in other cases, only brief requirements to the project.
It should go without saying that the more information we have at the beginning the more accurate estimation of the project we get. This can be better displayed with such popular notion as “Cone of Uncertainty” (described in the book “Software Cost Estimation with Cocomo II”) which shows that the estimations become more accurate as far as the project comes to its end (pic.1).
Picture 1 – Cone of Uncertainty
As the starting point, we create a Mind diagram that allows to see the interconnections of all available project data and identify possible “bottle-necks” (pic.2). Analysis of such diagram results in forming a pool of clarifying questions to the customer.
Picture 2 – MindMap Diagram
In case we receive the specification from the customer or get answered our questions on project requirements, or have more detailed description of projects stages, we can then build more accurate Mind diagram (pic.3) with all interconnections that will help us create a Gantt diagram of the project.
The Gantt diagram shows not only project tasks and their relations, but also time supposed to complete them. To build a Gantt diagram we usually use estimation on the analogy, because the mathematical models in case of project estimation are as a rule irrelevant or impossible. For convenience, we make a decomposition of each task, obtain interim estimations, take account of risks, and hence have more precise Mind diagram. However, this technique has a limitation – it is badly applicable for new industries.
Picture 3 – Mind Diagram with Interconnections
The interconnections on the Mind diagram set the time priorities of tasks (this is clearly displayed at the picture 3). The same interconnections then transferred to the Gant diagram (pic.4). If some task was shifted in time, this may influence the timing of the rest of the tasks or will make their execution impossible.
Picture 4 – Gantt Diagram
Thus, using Mind and Gant diagrams as helping tools we are able to estimate time for project development and identify the bottlenecks. Of course, the project time can be reduced, in some cases, by different ways:
To get the final estimation it is necessary to create a table where all terms of project tasks, testing time, budget and risks should be taken into account.
To sum up all the above mentioned information, we can say that the project estimation makes the basic stage of any IT project. Any overestimation or underestimation negatively affects the project, budget and other indexes and relationships with the potential customer. Working on IT project estimation we try to take into consideration multiple factors to the task creating for this purpose Mind diagrams that help to understand requirements and find bottlenecks.
August 12, 2014