Done что такое: Done – перевод с английского на русский – Яндекс.Переводчик

Definition of Done, или кто за что отвечает

Нет ничего проще, чем ответить на вопрос: «Вы это сделали или нет?». Но гораздо сложнее добиться одинакового понимания ответа обеими сторонами: бизнесом, который ставит задачи, и самой разработкой, которая их решает.

Думаю, ни один проект не будет успешен, если не привести бизнес и технологию к общему знаменателю, и в этой связи Definition of Done выглядит одним из критически важных инструментов такого приведения.

Эта статья посвящена самому, как мне кажется, распространенному и опасному заблуждению, связанному с этим инструментом. Подавляющее большинство людей, которым я задавал вопрос «Кто определяет Definition of Done?», отвечали на первых секундах: «Клиент».

Минутка матчасти

Definition of Done — это набор критериев, которые позволяют понять, сделано ли то, что было целью разработки. Формат Definition of Done может быть любым, но чаще всего это простой список с перечнем активностей, которые должны быть успешно завершены, чтобы функционал мог считаться готовым.

Например:

  • код написан;
  • юнит-тесты написаны и успешно выполнены;
  • код прошел ревью;
  • документация обновлена;
  • функциональное тестирование успешно завершено;
  • регрессионное тестирование успешно завершено.

Чем больше и объемнее Definition of Done, тем более строгим оно считается. И тем больше нужно времени и усилий, чтобы наш функционал добрался до желаемого состояния «сделано». И тем выше вероятность, что функционал будет работать в соответствии с ожиданиями бизнеса.

Баланс между потерями на первое и вероятностью второго — это беспощадное поле брани, на котором было сломано много копий, команд, проектов, продуктов и сервисов.

Кому это нужно

Практически ни одно событие, где общаются менеджеры проектов, скрам-мастеры и члены команд разработки не обходится без жалоб из серии «нам не дают достаточного количества времени на полноценное тестирование». При этом в качестве сил зла обычно выступает сам клиент, его представитель или владелец продукта, а в качестве причины фигурируют, главным образом, замедление процесса разработки и отсутствие заметной невооруженным глазом бизнес-ценности для продукта или сервиса.

Конкретный способ управления разработкой, будь то эволюционировавший до некоего итеративного гибрида Waterfall или же чистый, как слеза, Scrum, при этом никакой роли не играет. Как, впрочем, и бизнес-модель компании-разработчика. Хоть внутренний продукт, хоть наружный, хоть мы продали клиенту дюжину тушек — конечная цель разработки одна и та же: производство программного обеспечения, которое работает и кому-то для чего-то нужно.

Сферический конь в вакууме

Возьмем простой сценарий, где у нас есть условный Клиент, который знает, какой именно Продукт нужно произвести и запустить, и Команда, которая знает, как он, Продукт, создается.

Для начала, чтобы предвосхитить возможные упреки со стороны разработки, то есть от Команды к Клиенту, напомню, что единственное, в чем обязан разбираться Клиент — это предметная область, то есть бизнес. Да, было бы неплохо, чтобы Клиент понимал, что код не растет на дереве, а тестирование — это не хаотичная активность приматов на этом же дереве, но, строго говоря, это не обязательно.

С другой стороны, единственное, в чем должна разбираться Команда — это разработка программного обеспечения. Опять же, было бы неплохо, чтобы Команда видела бизнес-цель за набором смешных цветных объектов в трекинговой системе, но ремарка та же, что и в предыдущем абзаце.

В сухом остатке у нас есть человек, который знает или думает, что знает, ЧТО делать, и не обязан знать КАК, и есть группа людей с горящими глазами, которая знает КАК, но пока не знает, ЧТО именно.

Ближе к делу

С учетом вышеизложенного, весь процесс коммуникаций по ходу разработки представляет собой, с одной стороны, трансляцию Клиентом Команде бизнес-требований, а с другой — трансляцию Командой Клиенту необходимых для реализации сроков и текущего статуса разработки этих самых требований.

Обратите внимание, Клиент не ориентируется в 50 оттенках серого от «уже сделал локально» и «залил в dev, но еще не проверили» до «прошли все тесты на stage». Не ориентируется совсем и воспринимает фразу «Функционал готов» самым буквальным образом — готов быть залитым в живой production.

Соответственно, все остальные типы «готовности» для него с точки зрения бизнеса никакого смысла не имеют. Он мог, опираясь на оценки Команды, сжечь на костре маркетинга несколько десятков или сот тысяч долларов в процессе подготовки к запуску на определенную дату. И Falcon Heavy, который собран и красиво возвышается на платформе, но не может взлететь, Клиента, скорее всего, не устроит.

Поэтому Команде, мне кажется, было бы логично, давая определенные оценки по времени, иметь в виду именно этот тип готовности функционала. А для этого набор действий Команды по производству Продукта (или его инкремента), должен включать все виды активностей, необходимых для того, чтобы быть уверенными в качестве и работоспособности функционала.

Необходимых с чьей точки зрения?

Вот мы и подобрались к главному вопросу, на который значительная часть Команд отвечает неправильно. Прямо или косвенно спрашивает разрешения на включение в оценку по времени, к примеру, код ревью или юнит-тестов. Или другими словами, просит Клиента участвовать в формировании содержания Definition of Done.

Клиента! Но ведь Клиент — единственное причастное к разработке Продукта лицо, которое не знает, как разрабатывается программное обеспечение! Зачем у него спрашивать, и уж тем более, зачем у него спрашивать разрешения правильно делать работу Команды? В этом нет никакого бизнеса, это технология!

Естественно, не менее абсурдно выглядят и попытки Клиента ускорить разработку за счет «выставки народной резни» по качеству вообще и Definition of Done в частности: «А без юнит-тестов?», «А зачем мы тратим время на ревью?», «Зачем документация по API?», «Не рассказывайте сказки, я сам в 1812 году работал с перфокартами» и так далее.

Представьте, что к каменщику, которого наняли строить и который между рядами кирпичей кладет или ложит раствор, подходит Заказчик и говорит: «Слушай, мужик, зачем ты тратишь свое время и мои деньги на это месиво? Нельзя просто положить кирпич на кирпич, а раствора туда иногда для запаха между каждым десятым и каждым одиннадцатым рядом?!»

Представили? Выглядит просто сказочно.

Конечно, все аналогии лживы по своей природе, но в чем принципиальная разница между этим примером и нашим случаем? И там, и там, Человек-ЧТО влазил и рассказывал Человеку-КАК — как тому делать его работу. Каменщик ведь не пытался построить оперный театр вместо дельфинария, он просто соблюдал технологию процесса. Не более того.

Кто виноват и что делать

Во-первых, Definition of Done должно быть. Причем даже если Команда не одна, а N, оно должно быть одно на всех.

Потому что если ваш цех по производству Kotlin-пасочек станет хронически обгонять цех RxSwift-пасочек по причине отсутствующего или гораздо менее строгого Definition of Done, мобильная разработка рискует превратиться в храм боли. Боли при общении с Клиентом.

При этом, естественно, усилия QA команды получат ярко выраженный Android-вектор, и это направление будет тормозить запуск всего Продукта в целом.

Позволю себе привести формулу для расчета количества Definition of Done в зависимости от количества команд:

NDoD = 1 NT

где NDoD — количество Definition of Done,
NT — количество Команд

Во-вторых, Definition of Done должно быть четко сформулировано и понятно всем причастным, включая Клиента. Но его источником должна быть технология, а не бизнес. Соответственно, если Команда хочет увидеть силы, которые не выделяют достаточного количества времени на тестирование, ей нужно посмотреть в зеркало.

После титров

И в завершение позволю себе пару небольших ремарок.

Да, есть определенная (и крайне незначительная) часть проектов, где единственное, что имеет значение — это время, даже в ущерб качеству. Но это исключение, которое подтверждает правило.

И нет, я не считаю, что это легко — не позволять Клиенту диктовать Definition of Done. Это трудно. Но если мы считаем себя профессионалами, подход должен быть профессиональным.

Наконец, все вышеизложенное — всего лишь личная субъективная точка зрения (других у меня нет). Надеюсь, вы сможете извлечь из этого материала что-то полезное.

Спасибо, буду крайне признателен за комментарии.

Все про українське ІТ в Телеграмі — підписуйтеся на канал редакції DOU

Теми: розробка

Definition of Done ✔ (DoD) — Критерии Готовности

13 сентября, 2022 г.

2 отзыва, в среднем 5 из 5

Definition of Done («Критерии Готовности», DoD) — это когда все условия или Acceptance Criteria, которым должен соответствовать программный продукт, выполнены («Done») и готовы к принятию пользователем, клиентом, командой или потребляющей системой.

1.

Что такое Definition of Done

2.

Зачем нужны Definition of Done

3.

Как писать Definition of Done

4.

Definition of Done

5.

Что такое Definition of Done (DoD)

6.

Примеры DoD для User Story

7.

Примеры DoD для Features

8.

Примеры DoD для Epics

9.

Главная рекомендация Definition of Done

Готово Определение и значение | Dictionary.com

  • Лучшие определения
  • Викторина
  • Связанный контент
  • Примеры
  • Британский
  • Идиомы и фразы

Показывает уровень сложности слова.

[ duhn ]

/ dʌn /

Сохрани это слово!

См. синонимы слова «готово» на сайте Thesaurus.com

Показывает уровень оценки в зависимости от сложности слова.


глагол

причастие прошедшего времени do 1 .

Нестандартный. простое прошедшее время do 1 .

вспомогательный глагол

Нестандартный: Южный Мидленд и Южный штат США (используется с основным глаголом в прошедшем или, иногда, в настоящем времени для обозначения завершенного действия): Я уже говорил вам об этом. Он съел свой обед.

прилагательное

завершено; законченный; через: Наша работа сделана.

достаточно прожарены.

изношен; измученный; использованный.

в соответствии с модой, хорошим вкусом или приличиями; приемлемо: Это не сделано.

ВИКТОРИНА

Сыграем ли мы в «ДОЛЖЕН» ПРОТИВ. «ДОЛЖЕН» ВЫЗОВ?

Должны ли вы пройти этот тест на «должен» или «должен»? Это должно оказаться быстрым вызовом!

Вопрос 1 из 6

Какая форма обычно используется с другими глаголами для выражения намерения?

Идиомы о сделанном

    быть / сделали с, разорвать отношения или связи с; остановка.

    готово, Неформал.

    1. устал; измученный.
    2. лишенный средств, положения и т. д.
    3. мертвый или близкий к смерти.

    завершено, неофициально. очень уставший; исчерпаны: он действительно был сделан после близкой гонки.

примечание к использованию слова done

4. В прилагательном значении «завершенный, завершенный», done датируется 14 веком и совершенно стандартно: Ваш портрет уже готов?

ДРУГИЕ СЛОВА ОТ сделано

half-done, прилагательное

Слова рядом done

Donatus, Donau, Donbass, Doncaster, donder, done, donec, done Deal, donee, done for, Donegal

Dictionary.com Unabridged На основе Random House Unabridged Dictionary, © Random House, Inc., 2022

Слова, относящиеся к done

завершенный, завершенный, завершенный, завершенный, истощенный, осушенный, выполненный, завершенный, выполненный, исчерпанный, исправленный, выполненный, усовершенствованный, выполненный , реализовано, предоставлено, установлено, проведено, выполнено, прекращено

Как использовать done в предложении

  • Но нам, гражданам, необходимо сделать еще одну вещь.

    Аяан Хирси Али: Наш долг — сохранить жизнь Charlie Hebdo|Аяан Хирси Али|8 января 2015 г.|DAILY BEAST

  • Газеты по всей Европе также сделали это в знак солидарности с убитыми.

    Почему мы поддерживаем Charlie Hebdo — и вы должны тоже|Джон Авлон|8 января 2015 г.|DAILY BEAST

  • Ни Республиканская, ни Демократическая партии не сделали ничего, чтобы постоянно преследовать американских избирателей азиатского происхождения.

    Американцы азиатского происхождения – новая Флорида|Тим Мак|8 января 2015|DAILY BEAST

  • Он ясно дал понять, что полностью ценит то, что сделали копы.

    Сбит во время замедления работы полиции Нью-Йорка|Майкл Дейли|7 января 2015|DAILY BEAST

  • Потому что я больше говорил о том, что уже было сделано.

    Паттон Освальт о борьбе с консерваторами с помощью сатиры|Уильям О’Коннор|6 января 2015 г.|DAILY BEAST

  • Нужно лишь захотеть, и дело сделано; но если вы ослабите свои усилия, вы разоритесь; ибо и разрушение, и восстановление происходят изнутри.

    Pearls of Thought|Maturin M. Ballou

  • Готово, говорит он, зачем позволять пятидесяти нашим людям наступать и окружать их с каждого фланга.

    Жизнь и самые удивительные приключения Робинзона Крузо, Йорка, моряка (1801)|Даниэль Дефо

  • К тому времени, как я умылась, в дверь постучали, и через минуту я уже был в салле — ясли.

    Эдинбургский журнал Блэквуда, том 60, № 372, октябрь 1846|Разное

  • И это просто фантастический разговор, или это то, что можно сделать и что нужно сделать?

    Спасение цивилизации|H. Г. (Герберт Джордж) Уэллс

  • Если на это ушли годы, вы никогда не выйдете из этого дома, пока это не будет сделано.

    Мат|Джозеф Шеридан Ле Фаню0067

    done

    / (dʌn) /


    глагол

    причастие прошедшего времени от do 1

    be done with или have done with положить конец отношениям с

    have done to быть полностью законченнымделали ли вы?

    это сделано

    1. восклицание разочарования, когда что-то разрушено
    2. восклицание, когда что-то завершено

    междометие

    выражение согласия, как при заключении сделки между двумя сторонами0017

    прилагательное

    завершено; готово

    достаточно приготовленодоведено до оборота

    израсходованоони должны были сдаться, когда закончились боеприпасы

    социально приемлемый или приемлемыйчто не делается в высших кругах

    неформальный обман; обманутый

    сделанный для неформального

    1. мертвый или почти мертвый
    2. в серьезном затруднении

    сделанный или наведенный неформальный физически истощенный

    Collins English Dictionary — Complete & Unabridged 2012 Digital Edition © William Collins Sons & Co. Ltd. 1979, 1986 © HarperCollins Издатели 1998, 2000, 2003, 2005, 2006, 2007, 2009, 2012 год

    Другие идиомы и фразы с выполнением


    в дополнение к идиомам, начиная с выполненных

    • Ded Deal
    • Сделано для
    • . сделано для Т

    см. также:

    • легче сказать, чем сделать
    • хорошо сделано
    • сделано (с)
    • не раньше сказано (чем сделано)
    • не сделано
    • закончено и сделано0004
    • видел одного, видел их всех (был там, делал это)
    • что сделано, то сделано
    • когда все сказано и сделано

    Также см. underdo.

    Словарь идиом американского наследия® Авторские права © 2002, 2001, 1995, издательство Houghton Mifflin Harcourt Publishing Company. Опубликовано издательством Houghton Mifflin Harcourt Publishing Company.

    Определение готовности

    Чтение: Определение готовности

    Сохранить на потом

    Готово, сделано сделано или сделано сделано сделано?

    Если вы занимаетесь разработкой приложений, вы уже задавали этот вопрос. Итак, какое определение для done? Задавая вопрос, важно отметить, кто вы и какой у вас уровень в организации. Команды доставки, команды программы и команды портфолио определяют сделанное по-разному. Что мы знаем наверняка, так это то, что нам нужно четкое определение того, что сделано на каждом уровне организации.

    Определение готовности

    Определение готовности (DoD) — это когда все условия или критерии приемки, которым должен удовлетворять программный продукт, соблюдены и готовы к принятию пользователем, заказчиком, командой или потребляющей системой. Мы должны соответствовать определению «сделано», чтобы гарантировать качество. Это снижает количество доработок, предотвращая продвижение пользовательских историй, которые не соответствуют определению, в среды более высокого уровня. Это предотвратит предоставление клиенту или пользователю функций, которые не соответствуют определению.

    Истории пользователей

    DoD чаще всего используется на уровне группы доставки. Выполнено на этом уровне означает, что владелец продукта рассмотрел и принял пользовательскую историю. После принятия «готовая» пользовательская история будет способствовать увеличению скорости команды. Вы должны соответствовать всем определенным критериям, иначе пользовательская история не будет завершена.

    User Story DoD Примеры:

    • Модульные тесты пройдены
    • Код пересмотрен
    • Критерии приемлемости выполнены
    • Функциональные испытания пройдены
    • Нефункциональные требования выполнены
    • Владелец продукта принимает историю пользователя

    Особенности

    Выполнение на этом уровне может означать, что его можно добавить в выпуск. Не все пользовательские истории нужно завершать. Скорее, это означает, что функция может быть достаточной для удовлетворения потребности. После принятия готовая функция будет способствовать скорости выпуска. Опять же, вы должны соответствовать всем определенным критериям, иначе функция не будет реализована.

    Функция DoD Примеры:

    • Критерии приемлемости выполнены
    • Интегрировано в чистую сборку
    • Повышен до среды более высокого уровня
    • Автоматические регрессионные тесты пройдены
    • Функциональные тесты на уровне функций пройдены
    • Нефункциональные требования выполнены
    • Соответствует требованиям соответствия
    • Функциональность задокументирована в необходимой пользовательской документации

    Эпики

    Выполнено на этом уровне может относиться к стратегическому приоритету организации, элементу плана портфеля или некоторому другому набору функций, удовлетворяющих потребности рынка. Не все пользовательские истории или функции должны быть завершены. Скорее, эпоса может быть достаточно, чтобы удовлетворить потребность. После принятия готовая эпопея будет участвовать в расчетах пропускной способности, чтобы увидеть, соответствует ли предложение спросу.

    Epic DoD Примеры:

    • Нефункциональные требования выполнены
    • Сквозная интеграция завершена
    • Регрессионные тесты пройдены
    • Повышение до рабочей среды
    • Соответствует определенным ожиданиям рынка

    Резюме

    Точно так же, как очень важно определение готовности, так же важно и определение готовности.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *