Что такое бэклог в разработке?

Ответ

Бэклог (Backlog) — это приоритизированный и постоянно обновляемый список всего, что может понадобиться в продукте: функциональных требований, технических задач, улучшений и исправлений багов.

Виды бэклогов в Scrum:

  • Product Backlog (Бэклог продукта): Исчерпывающий список всех требований к продукту. Управляется владельцем продукта (Product Owner).
  • Sprint Backlog (Бэклог спринта): Набор элементов из бэклога продукта, отобранных для реализации в текущем спринте. Формируется командой разработки.

Структура элемента бэклога (User Story):

Как [роль пользователя],
я хочу [возможность],
чтобы [получить пользу/результат].

Критерии приемки (Acceptance Criteria):
- Критерий 1
- Критерий 2

Управление бэклогом включает:

  1. Рефинимент: Детализация, оценка и пересмотр приоритетов элементов.
  2. Приоритизацию: Расположение задач по важности (часто по методам MoSCoW или стоимости/ценности).
  3. Планирование спринта: Выбор задач из вершины бэклога продукта в бэклог спринта.

Пример приоритизированного списка:

  1. [Высокий] Реализовать двухфакторную аутентификацию.
  2. [Средний] Исправить ошибку 500 при отправке пустой формы.
  3. [Низкий] Обновить иконки в интерфейсе администратора.

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

Ответ 18+ 🔞

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

Какие они вообще бывают, эти бэклоги:

  • Product Backlog (Бэклог продукта): Это типа общая свалка желаний, мечт и невнятных криков стейкхолдеров. Им заправляет Владелец Продукта — тот самый чувак, который постоянно говорит «это срочно», но сам нихуя не может расставить приоритеты.
  • Sprint Backlog (Бэклог спринта): А это уже выжимка, конкретный план на ближайшие две недели. Команда смотрит на верхушку общей кучи и говорит: «Окей, этот кусок говна мы сможем переварить, а вот этот овердохуищный кусок — оставим на потом, пока не обосрёмся».

Как обычно это безобразие оформляют? Вот так, блядь:

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

Критерии приемки (Acceptance Criteria):
- Должно работать.
- Не должно падать.
- Менеджер должен испытать духовный оргазм.

А чтобы эта куча не превратилась в вечный комок неразберихи, с ней нужно что-то делать:

  1. Рефинимент (Уточнение): Это когда вся команда садится и пытается разобрать очередную невнятную хуйню из бэклога. «Хочу «крутой интерфейс» — это как, блядь? Кнопки чтобы блестели или чтобы единороги из экрана выпрыгивали?»
  2. Приоритизация: Самый весёлый цирк. Все кричат, почему их фича — самая важная. Тут применяют научный подход: метод тыка, подкидывание монетки или «MoSCoW», что расшифровывается как «МОжно Сейчас, а Остальное Хуйня (потом)».
  3. Планирование спринта: Команда с тоской смотрит на верхушку списка и решает, сколько они успеют, пока не сойдут с ума. Берут что-то вроде:

Пример этого великолепия:

  1. [ВАЖНО, БЛЯДЬ!] Сделать двухфакторную аутентификацию, а то нас уже взломали три раза.
  2. [Ну, надо бы...] Починить ошибку, которая вылетает, когда просто смотришь на форму.
  3. [Когда-нибудь, может быть...] Поменять синюю иконку на голубую в админке. Эстетика же, сука.

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