There was a great debate going on in one of the Agile Linked-in forums yesterday. The question put to the audience was this - they have a user story that never seems to end. They wanted to know how to best deal with this situation, i.e. do they count some story points towards the previous sprints velocity, do they split the user story up into multiple sprints etc.
I have some thoughts on the subject. Firstly, one needs to try to avoid getting into this situation in the first place. If it's a high risk feature with a lot of unknowns, don't shoot for holy grail. Break the story way down. Rather plan a spike, to do the research in the first sprint. During that spike, plan to resolve all the uncertainties so you can gauge the real size of the feature. Then once you have a good handle on that break the stories down into manageable chunks that can be completed in a Sprint.
If you're already in this predicament, what are you going to do about it.
Well first, stop! Then figure out how you are going to plan to learn what you don't know. And carve that out. Then once you have a handle on it just chunk it out as I already described above..
Don't give yourself credit for a user story if it's not completed in the original sprint. Wait till it's done and claim all of the story points in that sprint. It all comes out in the wash any way. So don't let that be the concern.
If you're in this predicament, definitely discuss this in the retrospective and try to pinpoint the reasons and how to avoid them in the future.
Additionally I strongly suggest not code completing the story in one sprint and schedule the testing in another sprint. I would much rather do this simultaneously in the spirit to doing it the right Agile way.
I really think the spike idea will help in most of these situations.
Written by Jack Milunksy - COO at Brightspark, certified ScrumMaster and Co-founder of Agilebuddy
(Agile project management software that lets you easily Create, Estimate, Plan and Track your software development projects). For great Agile tips follow Jack at: www.twitter.com/agilebuddy. To get more info on Agilebuddy please visit: www.agilebuddy.com