JavaRush /Курсы /C# SELF /Работаем по Scrum’у

Работаем по Scrum’у

C# SELF
11 уровень , 6 лекция
Открыта

1. Что такое Scrum?

То, что всё, что касается разработки, стандартизировано, вы уже поняли. А что, если я вам скажу, что стандартизировано вообще всё? И речь здесь даже не про имена переменных и функций, хотя они тоже стандартизированы🤦‍♂️.

Есть методология разработки — называется Agile и её популярная реализация — Scrum. Scrum ещё называют фреймворком — он определяет все процессы в команде. Когда должны быть совещания, кто на них должен присутствовать, что должно обсуждаться, какие результаты совещания должны быть и в каком виде они должны быть записаны 📋.

"Но зачем столько стандартизации", — спросите вы. Ну, во-первых, вы работаете в высокотехнологичном секторе — хай-тек, все дела. Во-вторых, так проще работать друг с другом. Ну а в-третьих, в названии вашей профессии .NET Software Engineer обратите внимание на последнее слово — инженер. И поймёте, откуда ноги растут.

2. Как выглядит работа по Scrum

Scrum — это гибкая методология управления проектами, часто используемая в разработке программного обеспечения. Основанная на итеративных и инкрементных процессах 🔁

Scrum схема

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

Ключевые элементы Scrum включают роли, события и артефакты.

  • Основные роли — это Product Owner, который определяет требования к продукту, Scrum Master, поддерживающий процесс согласно правилам Scrum, и команда разработчиков, выполняющая работу.
  • Основные события — это ежедневные встречи (daily meetings или дейли митинги), планирование спринтов, ретроспективы и демонстрации результатов работы.
  • Артефакты включают бэклог (список задач) продукта, бэклог спринта и инкремент продукта 📋.

Не пугайтесь! Хотя регламентирование всего и вся выглядит немного страшно, работать "по Скраму" легко и приятно. Scrum разрешил основной конфликт между разработчиками и заказчиками/владельцами продукта 🤗

Разработчики всегда просили оставить их в покое и дать спокойно работать. А владельцам продукта нужно было срочно внести в него новые фичи, что-то изменить, или провести какой-нибудь эксперимент 🧪.

Scrum разбил разработку на стабильные периоды — спринты (обычно 2 недели). В течение одного периода разработчики делают только те задачи, которые были запланированы на текущий спринт. Если заказчику нужно что-то срочно сделать, он добавляет эти фичи в следующий спринт 🗓️.

3. Sprint & Scrum Board

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

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

На протяжении текущего спринта разработчики и владелец продукта должны собраться на митинг и обсудить задачи для следующего спринта.

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

Бэклог текущего спринта любят отображать в виде Scrum Board ✅ — некая доска с задачами и статусами. Доска разделена на столбцы, которые обычно представляют стадии выполнения задач, такие как "К выполнению", "В процессе", "На проверке" и "Выполнено". Это позволяет всей команде видеть прогресс и легко идентифицировать любые затруднения в рабочем процессе.

Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ