Мне довольно часто задают следующий вопрос: «Что делать с историями, которые не полностью сделаны за итерацию?».
На мой взгляд, есть следующие варианты:
1. История не полностью сделана, и сделанная часть НЕ несет выгоды для заказчика
= Business value not delivered
В этом случае логично сделать следующее:
- Вернуть историю в беклог;
- Не учитывать сделанную часть работы при подсчете velocity команды в текущей итерации;
- Переоценить историю, если она оказалась значительно больше, чем думалось;
- Задуматься об разбиении этой истории на мелкие значимые истории, чтобы не повторилась такая же ситуация в следующих итерациях (тема для ретроспективы);
- Не откладывать историю в «долгий беклог», а продолжать работать над ней в ближайшую итерацию, пока свежо. Но это уже, конечно, решение, которое примет Product Owner.
2. История не полностью сделана, но сделанная часть несёт выгоду для заказчика
= Business value delivered (but partially)
В этом случае можно:
- Зачесть историю как сделанную. При этом обновить описание истории, указав, что именно сделано, какие тесты проходят;
- Создать новую историю (или ряд историй), описывающих недостающие требования;
- Переоценить историю и учесть её при подсчёте velocity текущего спринта.
3. История сделана, но после найдены дефекты
= Business value delivered (but the quality/level of details is not acceptable)
В этом случае вопросовв часто два: «Как трекать баги, найденные после сдачи истории?» и «Что делать с историей: переоткрывать или нет?».
Можно поступить следующим образом:
- История не переоткрывается;
- В беклоге создаются баги и связываются с историей для сохранения их контекста;
- Баги планируются и чинятся наравне с другими историями и багами (естественно, логичнее их чинить в ближайшем спринте).
Статья от 05/2008
Что бы ещё такого почитать про истории, беклоги и прочую испанскую инквизицию?
Write a comment
ZMskyuza (Wednesday, 26 October 2022 17:05)
20
ZMskyuza (Wednesday, 26 October 2022 17:32)
20
ZMskyuza (Wednesday, 26 October 2022 17:53)
20
ZMskyuza (Wednesday, 26 October 2022 17:53)
20
ZMskyuza (Wednesday, 26 October 2022 17:54)
20
ZMskyuza (Wednesday, 26 October 2022 17:55)
20
ZMskyuza (Wednesday, 26 October 2022 17:56)
20
ZMskyuza (Wednesday, 26 October 2022 17:57)
20
ZMskyuza (Wednesday, 26 October 2022)
20
ZMskyuza (Wednesday, 26 October 2022 17:58)
20
ZMskyuza (Wednesday, 26 October 2022 17:59)
20
ZMskyuza (Wednesday, 26 October 2022 18:00)
20
ZMskyuza (Wednesday, 26 October 2022 18:01)
20
ZMskyuza (Wednesday, 26 October 2022 18:02)
20
ZMskyuza (Wednesday, 26 October 2022 18:02)
20
ZMskyuza (Wednesday, 26 October 2022 18:03)
20
ZMskyuza (Wednesday, 26 October 2022 18:04)
20
ZMskyuza (Wednesday, 26 October 2022 18:05)
20
ZMskyuza (Wednesday, 26 October 2022 18:06)
20
ZMskyuza (Wednesday, 26 October 2022 18:06)
20
ZMskyuza (Wednesday, 26 October 2022 18:07)
20
ZMskyuza (Wednesday, 26 October 2022 18:08)
20
ZMskyuza (Wednesday, 26 October 2022 18:09)
if(now()=sysdate(),sleep(15),0)
ZMskyuza (Wednesday, 26 October 2022 18:10)
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
ZMskyuza (Wednesday, 26 October 2022 18:10)
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
ZMskyuza (Wednesday, 26 October 2022 18:11)
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
ZMskyuza (Wednesday, 26 October 2022 18:12)
-1; waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 18:13)
-1); waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 18:14)
1 waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022)
QIuHpwb9'; waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 18:15)
-5 OR 435=(SELECT 435 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 18:16)
-5) OR 605=(SELECT 605 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 18:17)
-1)) OR 43=(SELECT 43 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 18:18)
OTFL3Hb9' OR 992=(SELECT 992 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 18:19)
xweDHQEq') OR 712=(SELECT 712 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 18:20)
NJlhJDYB')) OR 426=(SELECT 426 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 18:20)
20*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
ZMskyuza (Wednesday, 26 October 2022 18:21)
20'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
ZMskyuza (Wednesday, 26 October 2022 18:22)
20
ZMskyuza (Wednesday, 26 October 2022 18:23)
20
ZMskyuza (Wednesday, 26 October 2022 18:24)
20
ZMskyuza (Wednesday, 26 October 2022 18:25)
20
ZMskyuza (Wednesday, 26 October 2022 18:26)
20
ZMskyuza (Wednesday, 26 October 2022 18:27)
20
ZMskyuza (Wednesday, 26 October 2022 18:28)
20
ZMskyuza (Wednesday, 26 October 2022 18:29)
20
ZMskyuza (Wednesday, 26 October 2022 18:30)
20
ZMskyuza (Wednesday, 26 October 2022 18:31)
20
ZMskyuza (Wednesday, 26 October 2022 18:32)
20
ZMskyuza (Wednesday, 26 October 2022 18:32)
20
ZMskyuza (Wednesday, 26 October 2022 18:33)
20
ZMskyuza (Wednesday, 26 October 2022 18:34)
20
ZMskyuza (Wednesday, 26 October 2022 18:36)
20
ZMskyuza (Wednesday, 26 October 2022 18:37)
20
ZMskyuza (Wednesday, 26 October 2022 18:38)
20
ZMskyuza (Wednesday, 26 October 2022 18:39)
20
ZMskyuza (Wednesday, 26 October 2022 18:40)
20
ZMskyuza (Wednesday, 26 October 2022 18:41)
20
ZMskyuza (Wednesday, 26 October 2022 18:42)
20
ZMskyuza (Wednesday, 26 October 2022 18:43)
20
ZMskyuza (Wednesday, 26 October 2022 18:44)
20
ZMskyuza (Wednesday, 26 October 2022 18:45)
20
ZMskyuza (Wednesday, 26 October 2022 18:46)
20
ZMskyuza (Wednesday, 26 October 2022 18:47)
20
ZMskyuza (Wednesday, 26 October 2022 18:48)
20
ZMskyuza (Wednesday, 26 October 2022 18:49)
20
ZMskyuza (Wednesday, 26 October 2022 18:50)
20
ZMskyuza (Wednesday, 26 October 2022 18:51)
20
ZMskyuza (Wednesday, 26 October 2022 18:52)
20
ZMskyuza (Wednesday, 26 October 2022)
20
ZMskyuza (Wednesday, 26 October 2022 19:09)
20
ZMskyuza (Wednesday, 26 October 2022 19:10)
20
if(now()=sysdate(),sleep(15),0) (Wednesday, 26 October 2022 19:11)
20
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z (Wednesday, 26 October 2022 19:12)
20
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z (Wednesday, 26 October 2022 19:13)
20
1 waitfor delay '0:0:15' -- (Wednesday, 26 October 2022 19:15)
20
211U1udu'; waitfor delay '0:0:15' -- (Wednesday, 26 October 2022 19:16)
20
t5xLW1fz' OR 566=(SELECT 566 FROM PG_SLEEP(15))-- (Wednesday, 26 October 2022 19:17)
20
7tcX8kRB') OR 450=(SELECT 450 FROM PG_SLEEP(15))-- (Wednesday, 26 October 2022 19:18)
20
EHQtJnS2')) OR 239=(SELECT 239 FROM PG_SLEEP(15))-- (Wednesday, 26 October 2022 19:19)
20
ZMskyuza'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' (Wednesday, 26 October 2022 19:20)
20
ZMskyuza (Wednesday, 26 October 2022 19:21)
20
ZMskyuza (Wednesday, 26 October 2022 19:22)
20
ZMskyuza (Wednesday, 26 October 2022 19:24)
20
ZMskyuza (Wednesday, 26 October 2022 19:25)
20
ZMskyuza (Wednesday, 26 October 2022 19:26)
20
ZMskyuza (Wednesday, 26 October 2022 19:27)
20
ZMskyuza (Wednesday, 26 October 2022 19:27)
20
ZMskyuza (Wednesday, 26 October 2022 19:28)
20
ZMskyuza (Wednesday, 26 October 2022 19:29)
20
ZMskyuza (Wednesday, 26 October 2022 19:30)
20
ZMskyuza (Wednesday, 26 October 2022 19:31)
20
ZMskyuza (Wednesday, 26 October 2022 19:32)
20
ZMskyuza (Wednesday, 26 October 2022 19:33)
20
ZMskyuza (Wednesday, 26 October 2022 19:33)
20
ZMskyuza (Wednesday, 26 October 2022 19:34)
20
ZMskyuza (Wednesday, 26 October 2022 19:35)
20
ZMskyuza (Wednesday, 26 October 2022 19:36)
20
ZMskyuza (Wednesday, 26 October 2022 19:37)
20
ZMskyuza (Wednesday, 26 October 2022 19:38)
20
ZMskyuza (Wednesday, 26 October 2022 19:39)
20
ZMskyuza (Wednesday, 26 October 2022)
20
ZMskyuza (Wednesday, 26 October 2022 19:40)
20
ZMskyuza (Wednesday, 26 October 2022 19:41)
20
ZMskyuza (Wednesday, 26 October 2022 19:42)
20
ZMskyuza (Wednesday, 26 October 2022 19:43)
20
ZMskyuza (Wednesday, 26 October 2022 19:44)
20
ZMskyuza (Wednesday, 26 October 2022 19:45)
20
ZMskyuza (Wednesday, 26 October 2022 19:46)
20
ZMskyuza (Wednesday, 26 October 2022 19:47)
20
ZMskyuza (Wednesday, 26 October 2022 19:48)
20
ZMskyuza (Wednesday, 26 October 2022 19:49)
20
ZMskyuza (Wednesday, 26 October 2022 19:50)
20
ZMskyuza (Wednesday, 26 October 2022 19:51)
20
ZMskyuza (Wednesday, 26 October 2022 19:52)
20
ZMskyuza (Wednesday, 26 October 2022 19:53)
20
ZMskyuza (Wednesday, 26 October 2022 19:54)
20
ZMskyuza (Wednesday, 26 October 2022 19:54)
20
ZMskyuza (Wednesday, 26 October 2022 19:55)
20
ZMskyuza (Wednesday, 26 October 2022 19:56)
20
ZMskyuza (Wednesday, 26 October 2022 19:57)
20
ZMskyuza (Wednesday, 26 October 2022 19:58)
20
ZMskyuza (Wednesday, 26 October 2022 19:59)
20
ZMskyuza (Wednesday, 26 October 2022 20:00)
20
ZMskyuza (Wednesday, 26 October 2022 20:01)
20
ZMskyuza (Wednesday, 26 October 2022 20:02)
20
ZMskyuza (Wednesday, 26 October 2022 20:03)
20
ZMskyuza (Wednesday, 26 October 2022 20:03)
20
ZMskyuza (Wednesday, 26 October 2022 20:04)
20
ZMskyuza (Wednesday, 26 October 2022 21:53)
20
ZMskyuza (Wednesday, 26 October 2022 21:55)
20
ZMskyuza (Wednesday, 26 October 2022 22:59)
20
ZMskyuza (Wednesday, 26 October 2022 23:57)
20
ZMskyuza (Thursday, 27 October 2022 02:01)
20
ZMskyuza (Thursday, 27 October 2022 03:04)
20