TransWikia.com

Should bugs be treated as stories or as tasks?

Project Management Asked on October 26, 2021

If you’re using scrum you should know that there is a clear difference between tasks and stories. A story is something that is valuable to user. A task is a step to produce that value to user.

So, how shall we define a bug?

Is it something we should just fix?

Or,

Is it something that will put more value to user?

14 Answers

So there's some ambiguity of terms here that I think we need to address first. Let's all make sure we agree what a "bug" is. I would consider a bug to be a problem in the software relative to what the product owner would like the software to do, that was not introduced during the current sprint.

With that definition of a bug, I think it somewhat clarifies how the bug should be treated. The software is behaving in a way the PO does not like, so while in one sense they may be putting in a bug fix request, in another sense, they are simply putting in a feature request. From that perspective, it seems pretty clear that bugs should be treated as stories and work as such.

Now from the trenches. In my experience, what we would more classically refer to as bugs (badly behaving software), have had higher variability in their actual size vs. estimated size than a 'standard' story. I don't think that's a compelling enough reason for bug fixes to NOT be treated as stories, but it is something that I've noticed. One technique I've used to overcome this is having the development team spend a few minutes before estimating to look into the bug. I encourage a lightweight review of the problem, and I think it has helped with the accuracy of the estimation.

Answered by Chris Bowers on October 26, 2021

With our team, we treat them as a hybrid item. The way we do Scrum, stories always get points, and tasks never do. Bugs don't get a story point value assigned by the team. HOWEVER, when we go to commit our Sprint backlogs, we need a way to estimate bugs, right? For purposes of planning and velocity, we ballpark every single bug at a 2-point story--while some are much larger and some much smaller, we find that this works out well for estimation purposes.

Answered by JDRoger on October 26, 2021

To take a page from Notch, creator of MineCraft:

I've got a few plans and visions, but my only true design decision is to keep it fun and accessible. There's no design doc, but there are two lists; one for bugs, and one for features I want to add but think I might forget.[1]

His approach implies that, like others have said, both represent items of software that need to be delivered. That said, combining the lists like like jmort253 has suggested would help prioritizing the backlog.

Answered by JamesQMurphy on October 26, 2021

A practice I've heard of is grouping a number of related bugs into a single product backlog item. This makes sense to me as there might be hundreds of bugs in a large system, and keeping track of all of them as separate product backlog items would incur a considerable amount of backlog grooming waste.

It is also easier to attribute end user value this way, and we also avoid estimations in fractions of a story point that otherwise would be inevitable for trivial bugs.

Answered by DmytroL on October 26, 2021

What's the difference between a story and a task? Or a story and an epic? Or, a bug and a story?

In my opinion, it's all work.

If a bug is found in a story we're working on in the current sprint, the story is moved back to the sprint ready queue and flows back through the process.

If it's something unrelated to the current sprint and gets prioritised by the PO, whether it's a bug with previously delivered work or something new, it's moved to the sprint ready queue and flows back through the process.

Answered by Ben on October 26, 2021

The wonderful thing about agile is that we retired concepts such as the requirements baseline so for an agile team the difference between a bug and a story is not an argument worth having. Both represent "stuff" you need to.

If the bug is part of the work being done in an iteration/sprint and we want to fix it in that sprint/iteration then treat it like a task. Otherwise put it on the product backlog.

If the bug is on the product backlog then there is value in fixing it otherwise it should not be on the backlog. The bug should also be estimated otherwise you will have difficulties planning work and measuring.

There is one special case where new development exposes a latent bug so severe that it impacts the whole iteration and I don't think there is an easy answer to this one.

Answered by Ken Clyne on October 26, 2021

I agree with: - if part of work on current feature, treat it as part of the sprint and not a separate defect - if outside of the sprint (e.g. from production issue) then create a Bug item on the backlog.

Should you give them Story points:

  • Yes: means they are treated just like stories and help with the accuracy of your planning process. However, it also implies that they add business value and form part of your team velocity measure which they shouldn't

  • No: means that they are not treated as adding business value and punishes the velocity if you have a quality issue that needs addressing and falling velocity would be an indicator. It also means that you may find it hard to plan your releases against the rest of your backlog.

Answered by Greg on October 26, 2021

For me it depends on the size, severity and when it is found.

If it's found during testing of a planned feature, it goes back into development to be re-worked on, and discussed in the scrum.

If it's major, red alert, red-flag stuff then it probably needs it's own task to be inserted into the next sprint.

If during general testing a heap of smaller, ordinary priority bugs are found, I tend to make up cards that say "fix 5 outstanding bugs" (or whatever suitable number), assign it a small value and but it in the backlog with all the other tasks.

Don't get hung up on the terminology - just make sure they can be tracked, repaired and accounted for.

Answered by Gary on October 26, 2021

For me the bug in implementation is usually a task.

As for bugs in design/architecture these are usually not so easily fixed and tend to end as a story.

Answered by binary_runner on October 26, 2021

My recommendation to teams I'm coaching is to separate bugs to two kinds:

  • The bugs/defects that are due to a failure in CURRENT work (e.g. story from current sprint) - for those I recommend tracking them as tasks on that story, and as blockers to that story being DONE/Accepted.

  • Bugs/Defects that are detected but are understood to have been there for some time now, maybe even already there in production - for those, treat them as backlog items that you need to prioritize. Thats usually a Product Management/Ownership decision/policy. The end result CAN be that you will fix them right now, but it depends on the priority.

Answered by Yuval on October 26, 2021

A bug is an output of "Verification" and an input to "Project Planning" and "Requirements Development" (according to CMMI). Thus, in order to keep a transparent traceability between artifacts you should refer to your bugs when making changes to "stories" and planning new "tasks".

Answered by yegor256 on October 26, 2021

I use a modified version of Scrum with my teams in week long sprints. The product backlog is ordered from top to bottom in order of importance. The development team takes items off the top of the stack and works on them.

If the feature isn't done at the end of the week, we talk about what will be done at the end of the next sprint, and work continues on the incomplete items.

In Managing Bugs in Scrum, the author, Mark Summer, suggests treating bugs as the same as a partially implemented feature. If you really think about it, that's exactly what a bug is. It's a specific part of a feature that is not completely implemented.

I currently have a bug list and a feature list. I am considering merging them and treating the bugs as incomplete features, as suggested by the blog author. This will greatly simplify the challenges I face in prioritizing tasks, and it will make it easier for developers to pull tasks off the product backlog stack.

Answered by jmort253 on October 26, 2021

A bug is bug per se and should be treated as a task. I see no difference, you can have a sprint with tasks of bug fixing.

Answered by Arturo Caballero on October 26, 2021

Something that puts more value is a feature or a story. A bug is something wrong in a feature/story that has been completed.

Answered by Brian Carlton on October 26, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP