When we look at a User Story, we try to apply the I.N.V.E.S.T methodology to each User Story. By ensuring that User Stories meet certain criteria, we are in a better position to estimate efforts. Most of our Agile Software Development teams use the Fibonacci Sequence to give an estimated effort of what it will take to complete the User Story. When the efforts begins to get above a certain threshold, it is typically because it does not fall within the constraits of INVEST.
I Independent Is it self contained?
N Negotiable Can it be changed and rewritten?
V Valuable Does it deliver value?
E Estimable Can you estimate the size?.
S Small Is it too big? Should it be broken down?
T Testable Can you create tests for it?
Once you’re ready to begin tasking you can make sure you’re being S.M.A.R.T
S Specific Do you understand what is involved?
M Measurable How will you know when you're done?
A Achievable Can this be done?
R Relevant How is this realted?
T Time-boxed How much time will it take?
The next time you have a planning meeting and you’re trying to estimate your User Stories, try applying INVEST to it. It really helps to ensure you do not over commit your self or your team. Once you’ve committed to a User Story, you should be able to create SMART tasks.