Гнучка розробка програмного забезпечення (англ. Agile software development, agile-методи) — клас методологій розробки програмного забезпечення, що базується на ітеративній розробці, в якій вимоги та розв'язки еволюціонують через співпрацю між багатофункціональними командами здатними до самоорганізації. Гнучка розробка — засіб для підвищення продуктивності розробників програмного забезпечення.
Scrum (Скрам) - це не абревіатура, цей термін взятий з регбі, який позначає сутичку навколо м'яча.
Сам термін Scrum, - це методологія управління проектами, яка побудована на принципах тайм-менеджмета. Основною її особливістю є залученість в процес всіх учасників, причому у кожного учасника є своя певна роль. Суть в тому, що не тільки команда працює над вирішенням завдання, а й всі ті, кому цікаво рішення задачі, не просто поставили її і розслабилися, а постійно «працюють» з командою, і ця робота не означає тільки постійний контроль.
Основні терміни, які використовуються в методології:
Власник продукту (Product owner) - людина, яка має безпосередній інтерес в якісному кінцевому продукті, він розуміє, як цей продукт повинен виглядати / працювати. Ця людина не працює в команді, він працює на стороні замовника / клієнта (це може бути як інша компанія, так і інший відділ), але ця людина працює з командою. І це та людина, яка розставляє пріоритети для завдань.
Scrum-майстер - це людина, яку можна назвати керівником проекту, хоча це не зовсім так. Головне, що це людина, «заражений Scrum-бацилою» на стільки, що несе її як свою команду, так і замовнику, і відповідно стежить за тим, щоб всі принципи Scrum дотримувалися.
Scrum-команда - це команда, яка приймає всі принципи Scrum і готова з ними працювати.
Спринт - відрізок часу, який береться для виконання певного (обмеженого) списку завдань. Рекомендується брати 2-4 тижні (тривалість визначається командою один раз).
Беклог (backlog) - це список всіх робіт. Можна сказати, що це щоденник загального користування.
Розрізняють 2 види беклогов: Product-беклог і спринт-беклог.
Product-беклог - це повний список всіх робіт, при реалізації яких ми отримаємо кінцевий продукт.
Спринт-беклог - це список робіт, який визначила команда і погодила з Власником продукту, на найближчий звітний період (спринт). Завдання в спринт-беклог беруться з product-беклога.
Планування спринту - це нарада, на якому присутні всі (команда, Scrum-майстер, Власник продукту). Протягом цієї наради Власник продукту визначає пріоритети завдань, які він хотів би побачити виконаними після закінчення спринту. Команда оцінює за часом, скільки з бажаного вони можуть виконати. У підсумку виходить список завдань, який не може змінюватися протягом спринту і до кінця спринту повинен бути повністю виконаний.