Aditi
 
Search:
Product Engineering
Product Culture
Emerging Technology Expertise
Predictable Ship Dates
Low Risk Engagement
 



Predictable Ship Dates
Over a decade, Aditi has evolved a process that is specific to product development. We build estimates at the individual developer level; adjust them for their historical productivity, aggregate to develop the overall estimates and a detailed schedule. This schedule includes projected bug counts by week and the expected path to stabilization, and a release date.

As the product gets developed, the schedule is tracked on a daily basis with actual feature completions and associated bug counts to identify feature slips well ahead of time and make necessary adjustments. Also, the stability level of the product is tracked rigorously through a convergence matrix to ensure that there are no significant deviations from projected stability, and thus the release date. The bottom line for this process is to deliver "Predictable Quality on a Predictable Date".

Throughout implementation, peer reviews are done at the design and coding levels. Quality is ensured by reviewing the robustness of the code for error handling, implementing best practices, and understandability.

Such a process benefits our clients by identifying potential cost and schedule escalations well ahead of time and make appropriate course corrections.

In the words of our CEO

"The reason why we believe our software process is predictable is because our better run teams have very hard core measurement and tracking processes in place. Every Monday, we try and get to a 'Known State' on the software project. This is very hard to do because status in software is very ambiguous. When a programmer says he is done with a feature, it is not clear what being done means - has he written all the integration scenarios, has he tested against the harness, what has happened with his dependencies on other people or software that is not written yet, etc. Therefore, we break each task into ONE-day tasks; we define a strict methodology of what it means to say that you are finished (what things must you have done), impose strict penalties for checking code into the system that 'breaks' the build, etc.

Every Monday morning, we do very strict reviews of what is done and not done, and therefore where we are on schedule with respect to something that may be six months away from delivery. Then we re-estimate schedule if necessary, and have strict follow-up that week to make sure those things that are lagging get done. This is a very methodical measurement and follow-up process.

Delivering software with changing specifications with a large team on schedule is a true miracle - I don't know of anything else in business, which is that difficult and requires such close management. Even in well-established software companies that I've known, there were very few managers who could do this well."


 

 

Additional Resources

© 2008 Aditi, All Rights Reserved Privacy Policy