scrumuser-storiesagile-processesdefects

Is it wise to generate stories for defects when using Scrum and there is no story already created?


Let's say you are working on a piece of legacy code that was written before your company started using an Agile methodology like Scrum.

Now let's say you discover a bug in the field that needs to be fixed and there was never a story for that feature written up. Everyone on the team knows what that particularly feature is and how it is supposed to behave but just no story associated with it.

Now in the current sprint you are to work on that defect because Marketing & Support are tired of dealing with the issue.

Do you create a story in retrospect for that defect to be linked to? Do you relabel your defect as a story and modify the formatting so that it looks like a story? If you don't create a story, do you get points for the defect? If you do create a story, do you get points for fixing the defect (via the story's points)?

What's the best way to handle this situation?

Update: Let's say that all the sudden the installation process started to blue screen the system on Windows 7 64-bit and there has always been a requirement that the application installs on all Windows platforms. The new issue may have come about because of service pack 1 or something like that.


Solution

  • Do you create a story in retrospect for that defect to be linked to?

    Yes. It's worthy of review, also, to be sure everyone agrees on the story.

    If it's a bug-free, but annoying interface, then you are really modifying the workflow, and it does need to be memorialized as a proper story.

    If there's a bug involved, then there are unit tests which should have found the bug (but didn't). This doesn't seem to be your situation, but it's common that incomplete unit tests don't find a bug. Extending the unit tests (after fixing the story) is also very important.

    Do you relabel your defect as a story and modify the formatting so that it looks like a story?

    Not really. The defect is just a defect, whether or not there's a story in place.

    Defects go away. Stories don't.

    If you do create a story, do you get points for fixing the defect (via the story's points)?

    Why not?

    Edit. The story points issue is difficult. Ideally, the points track the work done and value created. Story == effort == points. But the issues arise in handling reuse, release and rework.

    You have several, unrelated issues: effort, quality and value. The points can track one of those. It can't track either of the others.

    If you think velocity should reflect effort, then you can't take points away because of bugs or requirements changes. It doesn't track value created, and can't be used for that.

    If you think velocity should track value, then you must take the points away. It doesn't track effort because the work was done, but credit for it was removed.

    Rework is tough. Bugs and requirements changes are the same thing, they're rework. You've got a whole spectrum of candidates.

    Bottom Line. Points are a political weapon and don't measure much. Either effort or value, but not both. And not well.