Урок 1 з 4
Цінності і принципи
У модулі 3 студія обрала гібридний підхід, а в модулі 8 ми бачили, як вона робить рівні двотижневими спринтами. У цьому модулі розберемо, як влаштовані Scrum і Kanban зсередини і як не перетворити їх на формальність.
Звідки взявся Agile
У лютому 2001 року сімнадцять розробників зустрілися на гірськолижному курорті в штаті Юта. Кожен мав свій «легкий» метод розробки: Scrum, екстремальне програмування та інші. Те, у чому вони зійшлися, записали в Маніфест гнучкої розробки програмного забезпечення (Agile Manifesto).
Agile (з англійської — гнучкий) — це набір цінностей і принципів. Scrum, Kanban та інші методи — конкретні способи працювати за ними.
Чотири цінності
Маніфест порівнює чотири пари і каже, що ліве важливіше за праве. Праве при цьому теж має цінність, просто меншу.
- Люди і взаємодія важливіші за процеси та інструменти. П'ятихвилинна розмова двох розробників часто вирішує те, що тиждень висить у трекері задач.
- Робочий продукт важливіший за вичерпну документацію. Гравцям потрібен рівень, у який можна грати. Сорок сторінок його опису їм не потрібні.
- Співпраця із замовником важливіша за переговори про контракт. Засновники дивляться результат кожного спринту і разом із командою вирішують, що робити далі.
- Реагування на зміни важливіше за дотримання плану. Якщо бета-тест показав, що на 5-му рівні нудно, команда переробляє його зараз, хоч у плані стояли інші задачі.
Маніфест часто читають як «документація і план не потрібні». Але в ньому прямо сказано, що права частина теж цінна. План у гнучкій команді є, його просто переглядають кожну ітерацію.
Чотири цінності Agile
Ліве важливіше за праве, але праве не дорівнює нулю.
У студії: Програміст і дизайнер за п'ять хвилин домовляються про стрибок персонажа замість тижня коментарів у трекері.
Принципи
До маніфесту додали 12 принципів. Повністю їх можна прочитати на agilemanifesto.org. Ось п'ять, які найбільше змінюють щоденну роботу:
- Постачати часто. Робочий результат кожні кілька тижнів, а не раз на рік.
- Приймати зміни навіть пізно, якщо вони дають замовнику перевагу.
- Бізнес і розробники працюють разом щодня, а не лише на старті й на здачі.
- Простота. Те, що можна не робити, не роблять: кожна зайва функція забирає час і потім потребує підтримки.
- Регулярно покращувати роботу. Команда сама дивиться, що їй заважає, і змінює процес. Для цього існує ретроспектива.
Команда
Гнучка команда крос-функціональна: усі навички, потрібні для результату, є всередині неї. У студії програміст, дизайнер, тестувальник і маркетолог разом доводять рівень до «готово» і нікуди його не передають. Команда самоорганізована: як робити задачу, вирішує вона сама.
Розмір команди — до 10 людей (модуль 10). Керівник тут діє як слугуючий лідер з модуля 2: прибирає перешкоди, захищає команду від потоку випадкових задач, допомагає домовлятися.