Обязательное и желательное

Урок 3.1 · Как объяснить задачу программисту · Модуль 3. Состав работы и ограничения · Бесплатно

Цель урока: Научиться отделять обязательные функции от пожеланий.

Объяснение

Зачем это нужно: «Нужно всё сразу» — самый дорогой способ начать.

Список желаний у хозяйки парикмахерской выглядит безобидно: запись, расписание, подтверждение, оплата, отзывы, программа лояльности, напоминания, приложение. Восемь пунктов, каждый по-своему полезен. Исполнитель смотрит на этот список и называет срок «три месяца» и цену «четыреста тысяч» — потому что в списке нет ни одного слова о том, что из этого главное.

А главное там есть. Проблема была одна: не дозвониться и записаться, и двое на одно время. Всё, что её решает, — это три функции. Остальные пять полезны, но к проблеме отношения не имеют. Если отделить три от пяти, работа стоит шестьдесят тысяч и занимает три недели — и через три недели у салона уже работает запись, а не «половина всего, ничего не готово».

Разделение на «обязательно» и «потом» — не про жадность и не про экономию на хорошем. Это про то, чтобы получить работающее раньше и проверить его на живых людях, пока не потрачен весь бюджет.

Как это работает: Обязательная функция — без неё задача не имеет смысла: ради неё всё и затевалось. Уберите её — и проблема вернётся целиком, как будто ничего и не делали.

Пожелание — то, что можно добавить позже, когда главное уже работает. Уберите — проблема остаётся решённой, просто чуть менее удобно.

Разница не в том, что вам больше нравится, и не в том, что дороже. Разница только в одном вопросе, и его надо задать каждой функции по очереди.

Возвращается ли проблема без неё? Если да — обязательно. Если нет — пожелание, каким бы приятным оно ни было.

К этому вопросу добавьте два вспомогательных, когда ответ неочевиден. Кто её просил и почему? «Мне кажется, так солиднее» — это не обязательность. «Без этого администратор не увидит, кто когда» — обязательность. Что человек сделает, если её не будет? Смотрите не на слова, а на путь: есть ли у него другой способ получить то же самое — и работает ли этот способ. Есть и работает — пожелание. Отменить запись он может звонком: администратор снимет его между клиентами, ничего не сломается. Нет или не работает — обязательное. Записаться без страницы негде: трубку в салоне не берут, а прийти и застать свободное окно — как повезёт. Человек уйдёт к другому салону.

Рабочая длина первого списка — три-пять пунктов. Если обязательных получилось десять, значит вы описали три задачи сразу или не проверили ни одного пункта вопросом «возвращается ли проблема». Десять обязательных — это то же самое «нужно всё сразу», только аккуратно переписанное.

И второе: пожелания не выбрасывают. Их откладывают — и подписывают, почему и когда вернуться. «Напоминание за день — отложили, потому что запись работает и без него; вернёмся, если неявок станет больше пяти в неделю». Это не «когда-нибудь потом», а условие: понятно, при каком факте пункт вернётся в работу. Так пожелание не теряется и не превращается в вечное «мы это обязательно сделаем».

Разбор: Возьмём список хозяйки целиком и пройдём по нему вопросом «возвращается ли проблема без этого».

Онлайн-запись без звонка. Без неё человек снова звонит, а администратор снова не берёт трубку. Проблема возвращается целиком. Обязательно.

Расписание на день для администратора. Без него администратор не видит, кто когда записан, и двойная запись возвращается — та самая, из-за которой двое пришли на одно время. Обязательно.

Подтверждение клиенту. Без него человек не знает, записали его или нет, и звонит проверять. Звонок вернулся — значит, проблема вернулась. Обязательно.

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

Отмена записи самим клиентом. Спорный пункт, и на нём стоит остановиться. Без отмены человек звонит, чтобы отказаться, — звонок вернулся. Но тот звонок, из-за которого всё затевалось, был про запись, а не про отмену: отменить администратор успеет и между клиентами. Значит, пожелание. Но с оговоркой: если отмен станет больше десяти в неделю, пункт переезжает в обязательные — иначе администратор будет жить на телефоне.

Онлайн-оплата. Деньги и так берут на месте, запись работает без неё. Пожелание. Честная граница: если из десяти записавшихся трое перестанут приходить, предоплата перестанет быть пожеланием и станет обязательной — но это будет видно по фактам, а не по предположениям.

Отзывы на сайте. Полезно для новых клиентов, к записи отношения не имеет. Пожелание, причём отдельная задача: отзывы надо собирать, проверять и показывать — это не «добавить блок».

Программа лояльности. Тоже отдельная задача, и она про повторные визиты, а не про запись. Пожелание.

Своё мобильное приложение. Дорого, долго, и решает ровно то же, что страница записи, открытая с телефона. Пожелание, и не первое в очереди.

Анимация на главной. Красиво. К проблеме не относится вообще. Пожелание.

Итог разбора: три обязательных пункта, семь пожеланий. Три недели и шестьдесят тысяч вместо трёх месяцев и четырёхсот тысяч — и через три недели можно проверить главное: перестали ли люди не дозваниваться. Проверить это на «половине всего» невозможно: пока не готова запись, нечего и проверять.

Обратите внимание на порядок внутри первого списка. Он не случайный: сначала запись (человек записывается), потом расписание (администратор видит), потом подтверждение (человек узнаёт, что записан). Исполнитель читает список сверху вниз и оценивает то, что сверху. Если обязательное спрятано в конце, он оценит не то, что важнее всего.

Частая ошибка: 1. Прятать обязательное в конце списка. Или не помечать его вовсе. Тогда исполнитель сам решит, что в списке главное, — и это будет не то, что вы имели в виду. Список из двенадцати равноправных пунктов читается как «сделайте всё», а стоит как «сделайте всё». 2. Считать обязательным всё, что жалко выбросить. «Раз уж делаем сайт, давайте сразу и отзывы, и лояльность» — это не обязательность, а нежелание возвращаться к разговору. Возвращаться придётся всё равно: вопрос только в том, вернётесь вы к работающей записи или к недоделанному всему. 3. Выбрасывать пожелания совсем. Через месяц никто не вспомнит, что хотели, и разговор начнётся с нуля, а исполнитель снова оценит всё сразу. 4. Путать «обязательно» с «дорого» и «сложно». Обязательное бывает простым: подтверждение на экране — это несколько строк, а без него человек звонит проверять. Пожелание бывает дорогим: приложение стоит как весь первый этап, а решает то же, что страница в телефоне.

Итог: Два списка: «без этого не работает» и «хорошо бы потом». В первом три-пять пунктов, и каждый прошёл проверку: уберите — проблема вернётся. Во втором у каждого пункта есть причина, почему отложили, и условие, когда вернуться. А насколько полно делать каждую обязательную функцию — это следующий урок: обязательное тоже бывает коротким и длинным.

Обязательно (без этого проблема возвращается):
1. Клиент записывается сам, без звонка.
2. Администратор видит расписание на день.
3. Клиент получает подтверждение.

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

Разделите список

Перечислите 3 обязательные функции и 2 пожелания для своей задачи. У каждого пожелания одной фразой напишите, почему без него задача всё равно решает проблему. Если своей задачи сейчас нет, возьмите парикмахерскую из уроков 1.1–1.3 или случай из «Корявых задач» — метод разбирается так же.

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

Уроки модуля 3

Что ещё есть на сайте

Учиться

  • Уроки — Все уроки трёх траекторий: список, поиск и ваш прогресс.
  • Программирование с нуля — Python с первой команды до своего проекта: 12 модулей.
  • Интерфейсы и сайты с нуля — Кнопки, страницы и мини-игры: результат виден сразу в браузере.
  • Компьютер без страха — Файлы, браузер, пароли, мошенники, документы и деньги в интернете простыми словами. Бесплатно и без оплаты.
  • Если уже случилось — Деньги ушли с карты, пропала симка, взломали аккаунт, потерялись документы — порядок действий по шагам и куда звонить.
  • Какой компьютер нужен — Чек-лист по уровням: для учёбы ничего покупать не нужно, для своего проекта — 16 ГБ и SSD, для работы — 32 ГБ. Плюс нейросети и устаревание железа.
  • Без кода: ставить задачу — Как объяснить задачу программисту и принять работу. Кода нет ни строчки.
  • Конструктор описания задачи — Собрать описание по полям и получить готовый текст для исполнителя.

С чего начать

Потренироваться

  • Практикум: задачи из жизни — Та же команда урока — на работе, дома и в документах. 63 задачи с проверкой вывода и без регистрации.
  • Игры-тренажёры — Найти ошибку в чужом коде, прочитать, что делает программа, и увидеть, что случится, если нажать клавишу.
  • Симулятор: от задания до сдачи — Пройти путь целиком: папка, терминал, файл, сохранение, запуск, проверка по критерию приёмки. Два сценария и две системы.
  • Мастерская экрана — Проверить цвета и раскладку страницы: контраст, шаблоны, конструктор.
  • Колесо фортуны — Одна прокрутка в день: скидка на подписку или дни доступа.

Словари и юмор

Сайт, оплата и помощь

  • Родителям — Возраст, время на уроки, безопасность в сообществе, деньги и результат — что важно знать до оплаты.
  • Инструкция пользователя — Как всё устроено: уроки, кабинет, уведомления, подписка, ярлык.
  • Сообщество — Вопросы и ответы: читать можно всем, писать — после входа.
  • Подписка — Тарифы, что входит, возврат 14 дней, история платежей.
  • Помощь и поддержка — Частые вопросы и форма обращения — ответ в течение дня.
  • Отзывы учеников — Что пишут те, кто уже учится: без звёзд, с проверкой каждого текста.
  • Профиль и пароль — Имя, пароль для входа без кода, уведомления, свои данные.