Дефиниция за Готово: Как да я напишем и развиваме
Дефиницията за Готово е формално описание на състоянието на Инкремента, когато той отговаря на изискванията за качество, необходими за продукта. Тя е споделено разбиране.
Дефиницията за Готово е повече от контролен списък. Тя е формално описание на състоянието на Инкремента, когато той отговаря на изискванията за качество, необходими за продукта. Тя създава прозрачност, като осигурява споделено разбиране за това каква работа е била завършена като част от Инкремента. Тя гарантира, че всеки знае какво означава „готово“. Без ясна Дефиниция за Готово, екипите и заинтересованите страни ще имат различни представи за това дали работата е наистина приключена.
Защо Дефиницията за Готово е важна
Ясната Дефиниция за Готово е фундаментална за Скръм. Тя осигурява прозрачност. Когато елемент от Продуктовия беклог отговаря на Дефиницията за Готово, се ражда Инкремент. Този Инкремент е използваем. Това означава, че заинтересованите страни могат да го инспектират и да предоставят обратна връзка без забавяне. Ако даден елемент не отговаря на Дефиницията за Готово, той не може да бъде пуснат, дори ако Разработчиците смятат, че е готов. Той не е Инкремент. Тази яснота предотвратява недоразумения и изгражда доверие.
Дефиницията за Готово също така насочва Разработчиците при избора на количеството работа по време на Спринт планирането. Те трябва да вземат предвид цялата работа, необходима за изпълнение на Дефиницията за Готово. Това включва разработка, тестване, интеграция и документация. Тя оформя тяхното разбиране за това какво означава да се достави стойност.
Кой я създава
Ако Дефиницията за Готово за продукта е част от стандартите на организацията, всички Скръм екипи трябва да я следват като минимум. Ако не е, Скръм екипът трябва да създаде такава за продукта. Разработчиците са основно отговорни за изработването на тази Дефиниция за Готово. Те са тези, които вършат работата, така че те най-добре разбират какво е необходимо, за да се гарантира качество. Скръм Мастърът улеснява този процес, като гарантира, че всеки разбира неговата цел и стойност. Продуктовият Собственик гарантира, че Дефиницията за Готово е в съответствие с очакванията за качество на продукта и нуждите на пазара.
Това е съвместно усилие. Докато Разработчиците притежават детайлите, целият Скръм екип трябва да се съгласи с нея. Тази споделена собственост помага да се осигури ангажираност и спазване.
Написване на първата Дефиниция за Готово
Започнете просто. Не се опитвайте да обхванете всеки възможен аспект на качеството от първия ден. Фокусирайте се върху най-критичните елементи, които гарантират, че Инкрементът е използваем и потенциално готов за пускане. Кои са абсолютните минимални условия, за да считате дадена част от работата за завършена и готова за използване от клиента или за обратна връзка? Помислете за основните аспекти на функционалността, качеството и интеграцията.
- Прегледан код
- Написани и преминали автоматизирани тестове
- Интегриран с основния клон
- Без известни критични дефекти
- Отговаря на стандартите за сигурност
- Приемлива производителност
- Готов за внедряване
Това са примери. Списъкът на вашия екип ще бъде специфичен за вашия продукт и контекст. Целта е да се установи базова линия, която екипът може последователно да спазва Спринт след Спринт.
Развиване на Дефиницията за Готово
Дефиницията за Готово не е статична. Тя се развива. По време на всяка Спринт ретроспектива, Скръм екипът инспектира доколко текущата Дефиниция за Готово им е послужила. Те идентифицират области за подобрение. С нарастването на зрелостта на екипа, с развитието на продукта или с промените в технологиите, Дефиницията за Готово трябва да бъде актуализирана. По-зрял екип вероятно ще има по-строга Дефиниция за Готово, отразяваща по-високи стандарти за качество или по-сложни инженерни практики.
Например, ранна Дефиниция за Готово може да гласи „преминали ръчни приемо-предавателни тестове“. По-късно тя може да се развие до „преминали автоматизирани приемо-предавателни тестове и интегрирани в CI/CD пайплайн“. Тази еволюция отразява нарастващите възможности на екипа и ангажимента към по-високо качество. Скръм екипът винаги трябва да се стреми да подобрява своята Дефиниция за Готово. По-стабилна Дефиниция за Готово обикновено води до продукти с по-високо качество и намален технически дълг.
Влияние върху пускането
Когато множество Скръм екипи работят върху един и същ продукт, всички те трябва да използват една и съща Дефиниция за Готово. Това осигурява последователност и безпроблемна интеграция между екипите. Ако елемент от Продуктовия беклог не отговаря на Дефиницията за Готово, той не е част от Инкремента. Той не може да бъде представен на Спринт прегледа като „готово“. Тази дисциплина е от решаващо значение за поддържане на качеството на продукта и целостта на процеса на пускане. Инкрементът е сума от всички елементи от Продуктовия беклог, завършени по време на Спринт, и стойността на Инкрементите от всички предишни Спринтове.
