Урок 5.1 · Как объяснить задачу программисту · Модуль 5. Критерии приёмки · Бесплатно
Цель урока: Научиться писать критерии приёмки, которые можно проверить.
Зачем это нужно: В уроке 4.2 вы закрыли дырки формулой «если <случай>, то <что видит человек> и <что происходит с данными>». Это описание работы. Но принять по описанию нельзя: в нём сказано, что должно быть, и не сказано, как вы убедитесь, что это есть.
Критерий приёмки отвечает ровно на этот вопрос. Он защищает от бесконечного «почти готово»: либо условие выполнено, либо нет, и это видно без спора.
Как это работает: Требование говорит, что должно быть. Критерий — как вы это проверите и что будет считаться выполнением. Разница не в словах, а в том, что критерий выполняется действием и даёт ответ «да» или «нет».
Возьмём требование «клиент получает подтверждение». Понять его можно по-разному. Критерий: «после нажатия «Записаться» на экране видны дата, время и адрес; письмо приходит на указанный адрес; если письмо не пришло, на экране есть кнопка «отправить ещё раз»». Три действия, три наблюдаемых результата — проверка занимает две минуты.
У хорошего критерия три признака, и каждый проверяется вопросом.
Его можно проверить действием. Не «интерфейс удобный», а «записываюсь с телефона, не заглядывая в инструкцию». Не «форма короткая», а «в форме только имя, телефон, услуга и время — и ничего больше».
Два человека дают одинаковый ответ. Покажите критерий администратору салона: он должен сказать «выполнено» или «не выполнено» там же, где и вы. Если он пожимает плечами — это пожелание, а не критерий.
Он про наблюдаемое, а не про намерение. «Использовать современный фреймворк» — не критерий: это про то, как сделано, а не про то, что увидит человек. Критерий всегда смотрит на результат.
И правило про время: критерии пишут до работы. Написанные после, они превращаются в список претензий, и спор идёт не о том, работает ли запись, а о том, кто что обещал.
Разбор: Салон готов принять первую версию. Хозяйка говорит: «Хочу, чтобы было удобно и понятно». Это не отговорка — она правда так думает. Но принять по этим словам нельзя, и виновата не она.
Переводим в критерии — и заодно смотрим, что каждый ловит.
«Удобно записаться» → «Клиент записывается с телефона, не заглядывая в инструкцию: выбирает услугу, время, оставляет имя и телефон». Ловит: длинную форму, лишние поля, кнопку, которую не найти. Не ловит: красоту — и это нормально, красоту не принимают.
«Понятно, что запись прошла» → «После нажатия «Записаться» человек видит дату, время и адрес салона, а не пустой экран и не общее „успешно“». Ловит: молчание после отправки — то самое, из-за которого звонят проверять.
«Чтобы не было двойной записи» → «Если двое выбирают одно время, второй видит „это время только что заняли“ и свободные варианты рядом». Это вы уже описали в 4.2 — и теперь видно, зачем: то, что было поведением, стало тем, что проверяют на демонстрации.
«Администратору удобно» → «Администратор открывает список записей на день и видит время, имя и услугу, не прокручивая страницу». Ловит: календарь на месяц, в котором на телефоне ничего не разобрать.
Четыре строки, и приёмка — не разговор о вкусах, а четыре действия.
Обратите внимание, чего в них нет: ни секунд, ни процентов. Действие и наблюдение уже дают критерий, но границы в нём пока мягкие: «не прокручивая» — это сколько?
Частая ошибка: 1. Писать оценки вместо условий. «Красиво», «современно», «удобно», «чтобы всё работало» — это не критерии: их нельзя ни выполнить, ни проверить, и спор о них бесконечен. 2. Писать критерий про процесс, а не про результат. «Сделать на современном фреймворке», «добавить анимацию» — это про то, как исполнитель работает. Заказчику это не проверить, и на его проблему это не влияет. 3. Формулировать критерии после сдачи. Тогда они превращаются в претензии: работа уже сделана, и каждая новая строка читается как «а вот это вы не сделали». 4. Делать критерий неподъёмным. «Работает на всех устройствах и во всех браузерах» звучит хорошо и не проверяется никогда. Лучше назвать три телефона и один браузер — и проверить по-настоящему.
Итог: Требование говорит, что должно быть. Критерий приёмки — как вы это проверите и что будет считаться выполнением. Три признака: проверяется действием, два человека дают одинаковый ответ, описывает наблюдаемое, а не намерение. Пишутся до работы — иначе превращаются в список претензий. А как поставить в критерий границу-число и откуда её взять — следующий урок.
Требование: клиент получает подтверждение записи.
Критерий приёмки — проверяется действием:
1. После нажатия «Записаться» на экране видны дата, время и адрес салона.
2. Письмо приходит на указанный адрес.
3. Если письмо не пришло, на экране есть кнопка «отправить ещё раз».
Проверка: три действия, две минуты.
Спорить не о чем: каждый пункт либо выполнен, либо нет.Заказчик написал: «Хочу, чтобы запись была удобной и надёжной». Какой пункт — критерий приёмки, по которому работу можно принять?
Критерий успеха: Выбран пункт, который проверяется действием и даёт одинаковый ответ у двух людей.