4.1 Що таке Scrum?
Те, що все, що стосується розробки, стандартизовано, ви вже зрозуміли. А що, якщо я вам скажу, що стандартизовано взагалі все? І мова тут навіть не про імена змінних та функцій, хоча вони теж стандартизовані (*facepalm*).
Є методологія розробки — називається Agile, і її популярна реалізація — Scrum. Scrum ще називають фреймворком — він визначає всі процеси в команді. Коли повинні бути наради, хто на них повинен бути присутнім, що повинно обговорюватися, які результати нарад повинні бути і в якому вигляді вони повинні бути записані.
"Але навіщо стільки стандартизації", — запитаєте ви. Ну, по-перше, ви працюєте у високотехнологічному секторі — хай-тек, всі справи. По-друге, так простіше працювати один з одним. Ну а по-третє, в назві вашої професії Python Fullstack Software Engineer зверніть увагу на останнє слово — інженер. І зрозумієте, звідки ноги ростуть.
4.2 Як виглядає робота за Scrum
Scrum — це гнучка методологія управління проектами, часто використовується в розробці програмного забезпечення. Заснована на ітеративних та інкрементних процесах.
Scrum ділить проекти на цикли розробки, звані спринтами, які зазвичай тривають від одного до чотирьох тижнів. Кожен спринт починається з планування задач, які повинні бути виконані, і завершується презентацією, де команда демонструє досягнуті результати.
Ключові елементи Scrum включають ролі, події та артефакти.
Основні ролі — це Product Owner, який визначає вимоги до продукту, Scrum Master, підтримує процес згідно з правилами Scrum, і команда розробників, що виконує роботу.
Основні події — це щоденні зустрічі (daily meetings або дейлі мітинги), планування спринтів, ретроспективи та демонстрації результатів роботи. Артефакти включають беклог (список завдань) продукту, беклог спринту і інкремент продукту.
Не лякайтеся! Хоча регламентація всього й усього виглядає трохи страшно, працювати "за Скраом" легко і приємно. Scrum вирішив основний конфлікт між розробниками та замовниками/власниками продукту.
Розробники завжди просили залишити їх у спокої і дати спокійно працювати. А власникам продукту потрібно було терміново внести в нього нові фічі, щось змінити або провести якийсь експеримент.
Scrum розбив розробку на стабільні періоди — спринти (зазвичай 2 тижні). У період одного спринту розробники виконують лише ті завдання, що були заплановані на поточний спринт. Якщо замовнику потрібно щось терміново зробити, він додає ці фічі в наступний спринт.
4.3 Sprint & Scrum Board
Sprint — це основний цикл розробки в Scrum, тривалістю від однієї до чотирьох тижнів. Як ми вже говорили, у період цього часу команда працює над виконанням конкретного набору завдань з беклогу продукту.
На початку кожного спринту відбувається планування, де команда обирає завдання з беклогу продукту і зобов'язується їх виконати. Спринт закінчується демонстрацією виконаної роботи і ретроспективою, де команда аналізує процес роботи над спринтом і шукає способи покращити наступний спринт. Цей підхід дозволяє регулярно оновлювати продукт, швидко реагуючи на зміни вимог та пріоритетів.
Протягом поточного спринту розробники і власник продукту повинні зібратися на мітинг і обговорити завдання для наступного спринту.
Backlog, або беклог, — це список всіх задач, які необхідно виконати. У Scrum розрізняють беклог продукту, що включає всі вимоги до продукту (фічі), і беклог спринту, що складається з завдань, обраних для реалізації в поточному спринті. Беклог є живим документом, який регулярно оновлюється і переглядається для забезпечення відповідності поточним бізнес-цілям та умовам ринку.
Беклог поточного спринту люблять відображати у вигляді Scrum Board — така собі дошка з завданнями і статусами. Дошка розділена на стовпці, які зазвичай представляють стадії виконання задач, такі як "До виконання", "В процесі", "На перевірці" і "Виконано". Це дозволяє всій команді бачити прогрес і легко ідентифікувати будь-які труднощі у робочому процесі.

ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ