One of the cornerstones of being agile is to
deliver done features by the end of short sprints. Done as in potentially shippable. Done as in implemented, tested, documented and possible to deploy into production.
This is a typical semi-finished user story |
Common arguments why user stories are left semi-finished:
- we are not used to copmleting them (...yet)
- we think it is unfair not to take credit for partly done work (it looks worse than it is, and we are afraid that management does not see this bigger picture)
- we do not see the point in delivering smaller parts that is truly done
- I think I am more effective if I can focus (all my time) on the one type of task that I am best at (rather than optimizing for the team and product delivery)
- we are different than other product development teams –this might be a good idea in other teams or organizations, but not here
- we are not prepared for the visibility this will provide (goes for both management and team members)
Ripple effects of done |
Why is it so important to deliver finished user stories?
Focus on delivering something that is finished
each sprints will provide you great benefits:
5: Trust. When you deliver finished stuff, the rest of the organisation trusts you. Then you get the freedom to make smart choices work a way that make sense.
How to get there?
In Scrum you do get some help on visibility of how good you are on finish user stories:- You do not review any partly done user stories (show only finished stuff)
- You do not take credit in any sense of user stories that are partly done (it can be visualized on a burn down chart)
Does it seem harsh? Maybe. Still I think the reasoning behind focus on completing user stories makes it worth while, I can not see how anyone can be agile and still leave unfinished work.
- Understand the reasoning behind by reading up on the topic, talk to others and join the agile community. Then you need to work the knowledge into your culture. Inspire, educate and engage.
- I reccomend any team to give it a whole harted try for 6 months
- I would also allow time to make the necessary adjustments:
Most certainly, there are many reasons both technically and human
that needs to be addressed in order to get to a place of making user stories
that is done and truly done.
Further reading:
- This is a great read! http://www.mountaingoatsoftware.com/blog/dont-take-partial-credit-for-semi-finished-stories
- Read this if you are
interested in the details on velocity:
http://www.agilelearninglabs.com/2013/08/story-point-accounting-across-sprints/
This is related, about pulling together as a team to complete stories: - https://www.ibm.com/developerworks/community/blogs/c914709e-8097-4537-92ef-8982fc416138/entry/are_you_struggling_to_complete_user_stories_each_iteration1?lang=en
Excellent points. The benefits of getting a well-oiled scrum machine rolling far outweigh any perceived difficulties and culture changes in adoption of agile principles.
ReplyDeleteThank you for your comment, Steve!
ReplyDelete