Every project has its own uncertainty and no matter which methodology you choose there will be some degree of unpredictability, especially early on in a project. Agile methodology which relies heavily on team coordination, communication can help you set expectations and manage that uncertainty. Over the years organizations have implemented agile methods to varying degrees, to increase speed to market their product, increase productivity, growth strategy, improve operation effectiveness processes, improve product quality etc.
Many organizations that are new to agile process seem to struggle with estimation. It's important to clear the air about Agile estimation and how it can provide results if implemented in a right way. Estimates can help an organization to set a goal and expectations about what a team can deliver, but due to lack of poor planning teams struggle with estimation. In many cases, it has been observed that things turn out to be really rough if things are estimated without proper planning and understanding that may eventually jeopardize the whole project.
It's a proven fact that to make a precise prediction in a project you need to have a correct estimation. There are lot of things that need to be taken into consideration while calculating budget in any project like infrastructure, time frame, man hours etc. to get an idea of a plan and a goal to measure against. Once in a project you set a goal, teams need to come up with plans and estimate tasks.
A method that has been widely used in agile methodology to correct flaws in estimation techniques is planning poker. Planning poker theory sometimes called Scrum poker is a simple but powerful process that corrects any false precision and makes team-estimating faster, more accurate, and more fun. However it has a 'con' side to it. The estimating stories with Scrum poker theory is based on the story's complexity. A story for example with number 5 can be more cumbersome to complete than one that's has a number 3, but it doesn't meant that the 5 will take more time than 3 to complete. Estimates that are totally based on time can sometimes make planning commitments complex and uncertain.
Following are the key issues of the agile estimation process that most teams underestimate:
- Overlooking review effort, inspection and testing process
- Not to take into consideration the importance of having paper documentation
- Underestimating cost that include expenses like travel and meeting costs (especially large projects)
- Missing special testing requirements
- Underestimating project management / support effort, retrospective and demo meeting
- No plan for resistance after delivery if in case a support period is required
- Poor communication and team structure
It is pivotal that a team before the start of a project should do some basic research such as to collect important information about the requirements, do some thinking about the outcome, and then put this information through an estimation algorithm of choice.Estimation is a complex process and if the planning and understanding is good in a team so will be the estimation. An estimate in the context of an agile project is all about shared understanding of requirement and solution.