What should I do with a Kanban item that failed the test?

I have a Kanban baseboard with a transfer between Developer and Test:

---------------------------------------------------- | To Do | Ready | Develop | Test | Done | | | | In Progress | Done | | | 

Suppose I set some restrictions on the board. What to do if an item fails the test? It's not the tester to fix the error, since I see it, it cannot go "Finish". I want the tester to return it to Ready, but that will exceed the limit. If the tester lowers the position from "Ready" to "Make", it basically cancels the priority of the software.

Until now, my soul should be in order, surpassing the "Ready" limit, mark those elements that have not passed the tests, and make them priority.

Any other ideas?

+4
source share
8 answers

I would split the state of readiness for reopening and am ready. In this case, you can clearly separate the elements that require repeated work and new elements. Elements requiring re-work should usually be processed first, so it will be clear to developers what is new and what is returned from the testing phase.

+1
source

A few possible solutions (I'm sure there are others), including:

1) Flagging tickets on the spot, with the expectation of the team that marked items (for any reason) are decided in priority order.

2) Moving tickets back. (But then does the advice really reflect the state of the project? Are you also relaxing the changes? It's worth thinking about.)

3) Create new tickets. Perhaps for them a special fin or a different color.

They are not even mutually exclusive. Even if you stick to # 1 (my default preference), # 3 makes sense when an item should be freed even in its current state, and # 2 may make sense if it’s not so much an error, but instead a significant misunderstanding.

Further food for thought: lower WIP limits for dev, and / or the addition of a restriction covering dev and test, further encourage developers to support their work right through this process.

0
source

It depends on what you want to achieve. One option is to take failure seriously so that you bounce the current work item to fix the error.

I think your decision will be fine (make the erroneous assessment really obvious).

And perhaps the real answer is to try it for a while and see how it works.

0
source

I am sure that what I will tell in my answer will be very different from the canonical Kanban. I mean, this can be very, very controversial.

However, since you asked for other ideas, I guessed that you are also interested in heretical views. If this does not fit your case, please take it as a proof of concept.

Firstly, a short overview to depict the metaphor I use. Take note of this short excerpt from the video you can find here.

“Suppose a board representing at least two columns (for example, Doing and QA, but the names are not important here) representing the actions that the programmer is called upon to perform. Suppose this situation: task B is lagging and task A is actually When task A moves to QA, should the programmer work on task A or move task B to "Doing" and start working on it? We all know that multitasking is evil, and the programmer should not work both with task A, so and with problem B.

The correct answer is: first work on task A. Kanban is a pull-out system, and it will be very clear: but even without Kanban it is obvious that task A is closer to the value of the business and should not be in the OK column and move to the Finish columns as soon as possible " Waste must be disposed of and not stored.

This asks the question: is there a free slot in the “Column” section? Can another programmer move task B forward?

The question is inappropriate . If there is only one developer, the answer is no. Since the programmer is unavailable, the de facto "Do the work" column maintenance limit should be reduced to 0. With two developers, the correct question should be "Is another developer available?"

The fact is that Work In Progress Limit is not an indicator of free slots. The number of developers available.

The advice I tried to present uses a different principle: the general, individual and individual presentation of one programmer, such as a magnetic sticker. Call it Face. The programmer puts his face on the task to inform that he is working on this problem. Since each programmer has only one Person, programmers cannot complete more than one task. Limiting work in the process is not an indicator of how many free slots are available: Available team members, that is, people without a task, are a good measure.

The rule is simple: each team member has only 1 person and can put him on just one task.

However, the consequences are not trivial: using Faces it is easy to see who works with whom, how the group is clustered, and who can be asked about a specific problem. "

In other words, I believe that the WIP limit may not be the most appropriate measure of the elements that you should put in a column, especially if the sum of the WIP of all columns is greater than the number of developers (that is, slots that you can really count on).

I believe the same thing can be applied to your case: in the QA column, you have a test that rejects Kanban. There is no problem for me when moving backward in the runtime column, the developer who worked on the failed element is still committed to this. In fact, you have a free slot.

I don’t understand why the WIP restriction in the Doing column should block your workflow. What to do otherwise? To respect the arbitrary number you wrote in the column, should the developer be moved to another task? In the event that you decide to abdicate and violate the WIP limit, you do not question the meaning and relevance and applicability of this limit?

In short: move the task back if you have a developer dedicated to this task.

0
source

The way I did this in the past is to move the failed ticket back to "work." Since it is predictable that many tickets will ultimately fail at the testing stage, you must build this in the number of tickets allowed in the “job” and the amount you actually placed there.

For example, you can allow two developer tickets to “work” and reserve one of these places for failed tickets forever.

0
source

If an element reached the test and then looked at it in one direction, it had a higher priority than anything else in the “do” column, so it could be placed at the top of this column, piling the lower element off.

Or, can the tester return the item back to the software and force it to override the priority - so that it essentially starts again from the column? What PO is for - they decide how important it is to get a fix in.

0
source

I believe there should be two subcolumns in the "Enter" column. You need to "Actively work", another - "Waiting" or whatever you call. If the test fails, return it to standby mode.

If you want to measure how much came back from testing (and this is a good idea), select the jokes for it.

Whatever you choose, do it under the "Running" area on the board.

0
source

The way I deal with this is to leave the story in testing, but the flag is that it failed. It will quickly become a bottleneck in the Test column, because testers will not be able to pull out new items without breaking the WIP limit. This forces the team to climb onto this item to do this (i.e., fix the problem and double-check).

The following questions are worth asking. Whose responsibility is it for development? Whose responsibility is it to check? Whose responsibility is it to re-develop in the event of failed tests? Hope your answer was "Team."

0
source

Source: https://habr.com/ru/post/1397772/


All Articles