Sunday, April 13, 2008

Vintana or the art of Project forecast and tasks estimations

Originally posted 2002 (Antananarivo, Madagascar.)

Back in 1999, the firm I worked for embarked on a national effort to help reverse the effect of soil erosion by participating in various earth-friendly activities. On one such occasion, the whole staff was “volunteered” to help plant trees. It started out as a PR and social endeavor but it turned out to also be beneficial for all of us.

Trees were planted, the firm got its 5mins of fame in the lime light (being in the news two days in a row), the staff got some exercise. But most of all, our programming team learned invaluable lessons that transformed the way we approached tasks and boosted our ability to estimate programming tasks.
On a chilly Friday morning, we were greeted by the lead organizer from a homegrown green NGO. Truck loads of tree bags were waiting for us behind him. After the usual introductions, and having explained what was expected of us, he divided his “captive audience” in groups of five and asked each individual member to plant three trees each. The members of a group would then be assigned a starting point on different portions of the field. This was done in such a way that faster people were not hampered by slower people. An hour later, the same organizer reassessed our speed to adjusts for the fact that by then some of us would have slowed down either by fatigue or distraction. He later explained that since each one of us in our own way would have developed a system to stream line our planting effort, he also adapted his target surface to cover for the day. Some people were shifted to other portions of the field to cover. He then declared that the initial field to cover would be reduced by 20% and would take two days to complete. It took exactly that time to do the job and by Saturday evening 5pm we were done.

The following Monday morning, the development team assembled to discuss the share experience. It quickly transpired that we were all to some degree enthused by our new “discovery”. Project estimations can be accurate. Teams can be organized to produce a harmonious flow of work. Personal velocity can be a useful benchmark to help evaluate the time and effort necessary to perform a job.

This was a fundamental time for our startup firm. Suddenly afflicted by a deluge of interests from the local business operators, we were in dire need of ideas to scale up our operations. We needed to estimate projects more accurately, and this key event had ignited a self-introspection process that would eventually result in what we named Vintana.

Vintana is “the art of Project forecast and tasks estimations”.

In the following weeks I shall talk about the creative process that lead to the notion of Vintana. At issue are facts such as the need for accurate Project estimations. This will lead to the question of harmonious flow of work within a Teams and how to achieve that. Finally I will talk about a controversial issue in the programming community: Personal velocity. You will see how to avoid the potential negative misuse that it can engender, and understand why it is a necessary benchmark.

No comments: