Scrum
Last updated
Scrum – найпопулярніший Agile-фреймворк, для багатьох людей ці терміни є синонімами. Scrum - це фреймворк процесу, що використовується для керування розробкою продукту та іншою роботою, пов'язаною із знаннями. Скрам є емпіричним у тому сенсі, що дає командам можливість встановити гіпотезу про те, як вони думають, що щось працює, випробувати це, проаналізувати набутий досвід і внести відповідні корективи. Тобто при правильному використанні фреймворку. Скрам структурований таким чином, щоб команди могли використовувати практики з інших фреймворків, які мають сенс контексту команди.
Scrum найкраще підходить у випадку, коли крос-функціональна команда працює в середовищі розробки продукту, де є нетривіальний обсяг роботи, яку можна поділити більш ніж на одну 2-4-тижневу ітерацію.
Цінності :
Відданість (Commitment): Члени команди особисто віддані досягненню цілей команди;
Сміливість (Courage): Члени команди роблять правильно і працюють над складними проблемами;
Сфокусованість (Focus): Зосередьтеся на роботі, наміченій для спринту, та цілях команди;
Відкритість (Openness): Члени команди та зацікавлені сторони відкрито розповідають про всю роботу та проблеми, з якими стикається команда;
Повага (Respect): Члени команди поважають один одного за здібності та незалежність.
Принципи :
Прозорість: Команда повинна працювати в середовищі, де кожен знає, з якими проблемами стикаються інші члени команди. Команди виявляють проблеми всередині організації, які часто виникають протягом тривалого часу, які заважають успіху команди;
Інспекція: Часті контрольні точки вбудовані в структуру, щоб дати команді можливість поміркувати про те, як працює процес. Ці контрольні точки включають Daily Scrum meeting і the Sprint Review Meeting;
Адаптація: Команда постійно вивчає, як йдуть справи, і перевіряє ті пункти, які здаються безглуздими.
Події :
Спринт (Sprint): це часовий інтервал у 2-4 тижні, протягом якого команда створює потенційно готовий до постачання інкремент продукту;
Планування спринту(Sprint Planning): Команда починає спринт із обговорення, щоб визначити, над якими елементами з беклогу продукту (product backlog) вони працюватимуть під час спринту. Кінцевим результатом планування спринту є беклог спринту (Sprint Backlog). Планування спринту зазвичай складається із двох частин. У першій частині власник продукту та решта команди узгоджують, які елементи беклогу продукту будуть включені до спринту. У другій частині планування спринту команда визначає, як вони успішно доставлятимуть ідентифіковані елементи Product Backlog як частину потенційно можливого продукту інкременту. Команда може визначити конкретні завдання, необхідні для цього, якщо це одна з їхніх практик. Елементи Product Backlog, визначені для доставки, та завдання, якщо застосовно, складають беклог спринту. Після того, як команда та власник продукту встановлять обсяг спринту, як описано в елементах Product Backlog, ніякі додаткові елементи не можуть бути додані до журналу Sprint Backlog. Це захищає команду від змін у рамках цього спринту;
Щоденна зустріч (Daily Scrum/Meeting): це коротке (зазвичай трохи більше 15 хвилин) обговорення, під час якого команда координує свої дії наступного дня. Дейлі не призначений для обговорення статусу чи обговорення проблем;
Огляд спринту (Sprint Review): наприкінці спринту вся команда (включаючи власника продукту) розглядає результати спринту із зацікавленими сторонами продукту. Мета цього обговорення – обговорити, продемонструвати та потенційно дати зацікавленим сторонам можливість використовувати інкремент для отримання зворотного зв'язку. Огляд спринту не призначено для надання звіту про стан (status report). Відгуки про огляд спринту розміщуються в Product Backlog для подальшого розгляду;
Ретроспектива спринту (Sprint Retrospective): наприкінці спринту після огляду спринту (sprint review) команда (включно з власником продукту) повинна подумати про те, як справи йшли під час попереднього спринту, і визначити коригування, які можуть внести у майбутньому. Результатом цієї ретроспективи є щонайменше одна дія, включена в беклог наступного спринту;
Упорядкування беклогу ( );
Артефакти :
Беклог продукту (Product Backlog): це впорядкований список усіх можливих змін, які можуть бути внесені до продукту. Пункти в белог продукту є варіантами, а не зобов'язаннями, і те, що вони існують в белог продукту, не гарантує, що вони будуть доставлені. Власник продукту постійно веде беклог продукту, включаючи його зміст, доступність та порядок;
Беклог спринту (Sprint Backlog): це набір елементів з беклогу продукту, вибраних для доставки спринту. Після того, як команда визначає завдання, ці завдання необхідно виконати для досягнення мети спринту (Sprint Goal);
Інкремент (Increment): це набір елементів з беклог продукту, які відповідають Definition of Done до кінця спринту. Власник продукту може вирішити випустити доповнення або розвинути його у майбутніх Спринтах;
Ролі :
Власник продукту (Product Owner): роль, відповідальна перед командою за управлінням бэклогом продукту задля досягнення результатів, яких прагне команда. Роль product owner-а існує в Scrum для вирішення проблем, коли команда розробки має множинні суперечливі напрямки руху або відсутність напряму взагалі щодо того, що створювати;
Команда розробки (Development Team): складається з людей, які виробляють інкремент продукту всередині спринту. Основна відповідальність команди розробки – забезпечити інкремент, який приносить користь кожному спринту. Як розподілити роботу, це залишається на розсуд команди, залежно від умов на той момент.
Життєвий цикл Scrum :
Створіть беклог продукту;
Власник продукту та команда розробників проводять планування спринту. Визначте обсяг спринту у першій частині планування спринту та план реалізації цього обсягу у другій половині планування спринту;
У міру просування спринту команда розробників виконує роботу, необхідну доставки вибраних елементів бэклога продукту;
Команда розробників щодня координує свою роботу у рамках Daily Scrum;
Наприкінці спринту група розробників надає елементи беклогу продукту, вибрані під час планування спринту. Команда розробників проводить огляд спринту, щоб показати клієнту інкремент та отримати зворотний зв'язок. Команда розробників та власник продукту також розмірковують про те, як пройшов Sprint досі, та відповідним чином адаптують свої процеси під час ретроспективи;
Команда повторює кроки 2-5 до тих пір, поки не буде досягнуто бажаного результату.
Сторі поінти (Story points)
Джерела:
Дод. матеріал:
Особливості тестування в Scrum :
Критерії Готовності ( ): це загальна угода команди про критерії, яким повинен відповідати елемент бэклога продукту, перш ніж він вважатиметься виконаним $
Користувальницькі історії ( );
Мета спринту ( );
Діаграма згоряння задач ( ).
Скрам Майстер (Scrum Master): роль, відповідальна перед командою за те, щоб команда дотримувалася гнучких цінностей і принципів і дотримувалася процесів і практик, які команда погодилася використати. Спочатку це ім'я призначалося для позначення когось, хто є експертом у Scrum і, отже, може навчати інших. Роль зазвичай немає ніяких фактичних повноважень. Люди, які виконують цю роль, повинні керувати з позиції впливу, часто обіймаючи позицію лідера-слуги ( );
Щоб оцінити обсяг роботи над Елементом Беклога Продукту, Скрам-команди зазвичай використовують Сторі Поінти ( , ). Це умовна величина, що дозволяє давати Елементам Беклога відносні ваги. Найчастіше для оцінки в Сторін Поінтах використовуються числа Фібоначчі (1, 2, 3, 5, 8, 13, …), що дозволяє провести оцінку досить швидко.
,