Поля, действия, права, ошибки

Урок 4.1 · Как объяснить задачу программисту · Модуль 4. Требования без сложных слов · Бесплатно

Цель урока: Описать требования простыми словами и без технических терминов.

Объяснение

Зачем это нужно: В уроке 3.2 первая версия записи стоила тридцать пять тысяч и две недели. Но смета держится на одном условии: исполнитель понимает, что именно он делает. Не понимает — закладывает запас «на всякий случай», и тридцать пять превращаются в пятьдесят.

Четыре вопроса закрывают больше половины уточнений, которые иначе приходят по одному в течение месяца. Задавать их надо не программисту, а себе — и записывать ответы обычными словами.

Как это работает: Первый вопрос: какие поля. Что человек вводит и что видит на экране. Не «сущности» и не «атрибуты» — просто: имя, телефон, услуга, дата, время. И рядом с каждым — обязательно оно или по желанию.

Второй: какие действия. Что человек делает. Записаться, перенести, отменить, отметить приход. Действие — это глагол, а не экран: «страница записи» — не действие, «записаться» — действие.

Третий: кто что может. Кто видит и кто меняет. Клиент видит только свои записи, администратор — все, мастер — только свои на сегодня. Права описывают не «роли в системе», а людей: клиент, администратор, мастер.

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

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

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

Разбор: Возьмём запись в салон и ответим на четыре вопроса по очереди.

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

Действия. Записаться. Перенести и отменить — сам, но не позже чем за два часа до визита: позже — только через администратора. Администратор отмечает приход или неявку. Мастер смотрит свою запись на день.

Права. Клиент видит только свои записи и только вперёд: историю визитов ему не показываем. Администратор видит все записи всех мастеров и меняет любую. Мастер видит свои на сегодня и ничего не меняет — приход отмечает администратор, чтобы не было спора, кто прав.

Ошибки. В ответе про ошибки случаев несколько, и у каждого две части: что человек видит и что стало с данными. 1. Пустой телефон или номер короче одиннадцати цифр. — видит: «Проверьте номер» рядом с полем. — с данными: запись не создаётся, но имя и услуга остаются в форме. 2. Отмена уже отменённой записи. — видит: «Эта запись уже отменена». — с данными: ничего не меняется, вторая отмена не проходит. Вторые части разные, и это главное: в первом случае важно, что человек не заполняет заново, во втором — что повторное действие ничего не ломает. Надпись объясняет, что не так; данные решают, что будет дальше.

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

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

Запись в салон — четыре ответа.

Поля: имя, телефон, услуга, мастер, дата, время.
Обязательны имя и телефон. Комментарий — по желанию.

Действия: записаться, перенести, отменить.
Администратор: отметить приход или неявку.

Права: клиент — только свои записи вперёд.
Администратор — все записи, меняет любую.
Мастер — только свои на сегодня, ничего не меняет.

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

отмена уже отменённой записи —
  видит: «Эта запись уже отменена»;
  с данными: ничего не меняется, вторая отмена не проходит.

Опишите требования

Опишите свою задачу четырьмя ответами: поля, действия, права, ошибки. В ответе про ошибки назовите не меньше двух случаев — и для каждого обе части: что человек видит и что стало с данными. Если своей задачи сейчас нет, возьмите парикмахерскую из уроков 1.1–1.3 или случай из «Корявых задач» — метод разбирается так же.

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

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

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

Учиться

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

С чего начать

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

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

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

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

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