May 22nd, 2019 by inflectra
Frequently, people wonder whether agile estimation approaches differ completely from the plan-driven approaches in project management. While each framework has its own uniqueness in their approach to gathering estimates, the nature of estimates gathered should be considered in relation to the project or product lifecycle.
How much does estimation approaches differ?
When viewed from the vantage point of project or product lifecycle, there is not a vast difference in the estimation gathering process between agile and plan-driven approaches. However, if we fail to recognize the nature of estimate and the lifecycle stage where estimate is gathered, then we often gravitate towards the nomenclature used thinking that the top-down, bottom-up, and 3-point estimate apply only in plan-driven framework and affinity estimation, planning-poker, and relative sizing apply only in agile framework.
Accuracy of Estimates
When estimates are gathered, the level of accuracy plays a critical role in the amount of effort spent in gathering the estimates. When organizations decide on a strategic objective and evaluate a program or project to address the strategic need, this estimate is called a screening estimate focusing on whether this work can be done. This screening estimate uses an order of magnitude using heuristics or analogous reasoning and hence has a high margin of error. Subsequently, when decision is made to evaluate this initiative further, we move towards the technical, operational, and environmental feasibility analysis to come up with a decision estimate. This may take additional time such as market research and hence increases the precision somewhat compared to the screening estimate. The feasibility analysis then leads to the preliminary evaluation of the budget involved in implementing the work. This preliminary estimate is called the budget estimate. All these estimates are still at a higher level, but the goal would be reducing the amount of error in the estimate.
Subsequently, if the organization decides to move forward, additional estimates are gathered. The complexity, sensitivity, and visibility of the initiative will mandate the level of estimate gathered. This is called the plan estimate used to build the project schedule as part of the integrated project management plan development. Nevertheless, this estimate is a tentative estimate giving the organization the decision to move forward with the project. Only when the actual work is done as part of the project execution, detailed estimates are gathered to gain increasing confidence on when the project will be delivered.
Art of Agile Estimation
If you map these ideas to the art of estimation in agile approaches, one can clearly see when estimation should not be done and what level of estimation is required in agile framework. When a major new idea is conceived, it is often a high-level “dream”. This idea needs to be broken down into epics, which are still at a very high level. For instance, the big dream of a huge house may become an epic castle. Neither of these ideas and epics should be estimated.
As time progresses with increasing level of granularity, themes develop around the castles on the types of big houses followed specific features. As we iterate the epics into themes and features, we are start working through the screening, decision and budget estimates iteratively. So, the big house theme is broken down into duplex home. Since these are relatively better than the ideas and epics, the themes and features are estimated in T-Shirt sizes (Small, Medium, Large, X-Large) or Coffee-Cup sizes (Tall, Grande, Vente, Trenta).
But, what we build are not features. These then get broken down further into user stories. The user story indicates the deliverable that needs to be built. Like the project schedules in the project management framework, the deliverables are decomposed into the tasks or activities even in agile framework. But, the user stories are estimated in story point, but the tasks are estimated in hours.
Estimation is therefore not only science but also an art. One must understand all the techniques so that the right estimation approach can be used as well as adapt the techniques to the situation. Learn more by listening to the webinar on these additional thoughts on estimation.
Dr. Sriram Rajagopalan is a project management guru with extensive software development and project management experience in many industries. Dr. Rajagopalan lead Inflectra's agile project management webinar series called: Deeper Dive Into Agile: Practical Tips On Managing Agile Projects
Blog Art of Agile Estimation Agile webinar series Sriram Rajagopalan
Ask an Inflectra expert:
SpiraTest combines test management, requirements traceability & bug-tracking
SpiraTeam brings your teams together, managing the entire application lifecycle
SpiraPlan lets you manage your programs and portfolio of projects like never before
Orchestrates your automated regression testing, functional, load and performance
The ultimate test automation platform for web, mobile, and desktop applications
The help desk system, designed specifically for software support teams
Cloud hosted, secure source code management - Git and Subversion
Exploratory testing capture tool that automatically records your testing activity
Let us deal with the IT pain so you don't have to. Or use on-premise if you prefer.
Our customers work in every industry imaginable. From financial services to healthcare and biotech to government and defense and more, we work with our customers to address their specific needs.
Our products do not enforce a methodology on you, instead they let you work your way. Whether you work in agile development, Scrum and XP, Kanban and Lean, Waterfall or hybrid Inflectra can help.
If you want to learn more about application delivery, testing, and more take a look at our whitepapers, videos, background papers, blog, and presentations.
Customers use our tools to help automate repetitive tasks and streamline their business processes using our Robotic Process Automation (RPA) solutions.
We collaborate with a wide range of teams to bring our customers a range of services (including load testing, training, and consultation), complimentary technologies, and specialized tools for specific industries.
Learn how different organizations have benefited from using Inflectra products to manage their software testing and application develooment.
Outstanding support is the foundation of our company. We make support a priority over all other work. Take a look at our support policy.
Discover great tips, discussions, and technical solutions from fellow customers and Inflectra's technical experts.
If you can't find the answer you're looking for, please get in touch with us: over email, phone, or online.
We are constantly creating new videos to help customers learn about our products, including through in depth webinars, all freely available along with a wide selection of presentations.
We provide a number of resources to help customers learn how to get the most out of our products, with free online resources, virtual classrooms, and face to face.
Read about Inflectra, our manifesto, and values. Meet our incredible customers who are building awesome things. We are focused on their success using our tools.
The Inflectra Blog contains articles on all aspects of the software lifecycle.
In addition we have whitepapers,
background articles, videos and
presentations to help get you started.
Events are a big part of our awesome customer service. They are a chance to learn more about us, our products, and how to level up your skills with our tools.
We actively partner with companies and individuals all over the world. We are also a great place to work and encourage you to explore joining our team.
Please contact us with your questions, feedback, comments, or suggestions. We'll get back to you as soon as possible.
When you need additional assistance (be it training, consulting, or integration services) our global certified solution provider partner network is ready to help.
At Inflectra, we are fully committed to provide our customers with the very best products and customer service.
We want to help developers extend and customize our tools to fit in with their needs. We provide robust APIs, sample code, and open source projects.