How to estimate?

No one likes surprises do they?

To avoid this we go about our day making lots of small estimates to help. We don’t want to be late for a meeting so we estimate how long will it take to get there. We want to drive safely so we estimate the speed of other cars so we know it’s safe to pull out. As we get more experience in these situations our estimates get better. The same process applies when delivering software solutions for our clients.

What helps us estimate our projects? Over the years eGloo has implemented and integrated with a wide range of systems. With this experience we can anticipate the friction points and potential for problems and estimate accordingly. Even where there grey areas, the known unknowns if you like, these fit a pattern we have seen before.

How do we estimate? We break projects down into items of work that we know and understand. Often the work is the same or similar to tasks we have completed in prior projects. Our project management tools show us how long these tasks take. This covers design, implementation, testing and support so we have an accurate idea of the complete delivery time. This doesn’t mean everything has been done before. There are still areas of innovation that need estimating as well.

How can we estimate what we don’t know? A technique we use very successfully are Fermi Estimates;

Fermi estimate is one done using back-of-the-envelope calculations and rough generalizations to estimate values which would require extensive analysis or experimentation to determine exactly. 

Fermi problem is an approximate, back-of-the-envelope calculation of an arbitrary figure facilitated by identifying suitable factors of the figure, that are accessible to common experience. Depending on the difficulty of the problem, and the number of sub-problems required to get in touch with common sense, one can usually hope to be correct to within a factor of 2 or 3, and other times to within the correct order of magnitude.

An estimate is always going to carry some amount of uncertainty by definition. Breaking down each task as much as possible reduces that uncertainty by finding the novel elements not tackled before. With a well-defined list of tasks, and good estimates for each, we reach a high degree of confidence in our ability to deliver solutions that meet and even exceed expectations. There will still be surprises but the sound foundation of our project definition means these are incorporated with ease. The ability to adapt and cater for a surprise in a project will make the difference in staying on time and on budget. 

Engage people with what they expect; it is what they are able to discern and confirms their projections. It settles them into predictable patterns of response, occupying their minds while you wait for the extraordinary moment — that which they cannot anticipate.Sun Tzu, The Art of War

The extraordinary moment you cannot anticipate is what we will be expecting at eGloo. We are ready to make sure your project is a success no matter what surprises there are.  We actually like those surprises!