Гнучкі Методології Розробки (agile). scrum
DESCRIPTION
Презентація про гнучкі методології розробки (Agile), а також про управлінський фреймворк Scrum.TRANSCRIPT
Гнучкі методології розробки (Agile). Управлінський фреймворк Scrum
Яремчук ОлександрФКН. Група 131
Метод, методика та методологія
Методологія — це вчення про структурну побудову, логічні конструкції, методи і принципи розв'язання наукової проблеми, конкретніше — вчення про основоположні принципи побудови, форми і засоби наукового пізнання дійсності.
Методика - це, як правило, якийсь готовий "рецепт", алгоритм, процедура для проведення будь-яких націлених дій. Близьке до поняття технологія. Методика відрізняється від методу конкретизацією прийомів і завдань. Наприклад, математична обробка даних експерименту може пояснюватися як метод (математична обробка), а конкретний вибір критеріїв, математичних характеристик - як методика.
Метод – систематизована сукупність кроків, які потрібно здійснити для виконання певної задачі, досягнення мети. Поняття тотожне алгоритму діяльності чи технологічного процесу.
Agile Гнучкі методології розробки (англ. Agile software development, agile-методи) – це серія підходів до розробки програмного забезпечення, орієнтованих на використання ітеративної розробки і динамічне формування вимог і забезпечення їх реалізації в результаті постійної взаємодії всередині робочих груп, що складаються з фахівців різного профілю.
Навіщо потрібен Agile?
1. прискорення часу виходу на ринок2. управління зміною пріоритетів3. підвищення продуктивності праці4. краще узгодження бізнесу5. підвищення якості програмного забезпечення6. «прозорість» проекту7. зниження ризику8. спрощення процесу розробки9. скорочення витрат10. покращення духу команди11. підвищення ремонтопридатності та розширення пр. заб.12. поліпшення інженерної дисципліни13. управління розподіленими командами
Історія У лютому 2001 в штаті Юта США був випущений «Маніфест гнучкої методології розробки програмного забезпечення». Він був альтернативою керованим документацією, «великоваговим» практикам розробки програмного забезпечення, таким як «метод водоспаду», який був золотим стандартом розробки в той час. Даний маніфест був схвалений і підписаний представниками методологій екстремального програмування, Crystal Clear, DSDM, Feature driven development, Scrum, Adaptive software development, Pragmatic Programming. Гнучка методологія розробки використовувалася багатьма компаніями і до прийняття маніфесту, однак саме після цієї події відбулося входження Agile-розробки в маси.
Agile-маніфест розробки програмного забезпечення
Люди та співпраця важливіші за процеси та інструменти
Готовність до змін важливіша за дотримання плану
Співпраця із замовником важливіша за обговорення умов контракту
Працюючий продукт важливіший за вичерпну документацію
Порівняння Agile та Waterfall Модель Каскадна Гнучка
Процес розробки
Безперервний, із заздалегідь визначеними
етапами
Ітераційний, кількість ітерацій
невідомо
ПроектуванняОдин раз, на
початку проекту, докладне
Багаторазове, деталізація в міру
необхідності
Залучення клієнта 3-4 рази Постійне
Терміни та бюджет
Заздалегідь визначені і прописані в
договорі
Невідомі до самого кінця проекту
Клієнт платить за... Результат Процес
Тонкі місця гнучкого підходу
Висновки
Scrum
Що таке «фреймворк»? Фреймворк або каркас — основна концептуальна система або структура для вирішення комплексних задач.
Програмним фреймворком є готовим до використання комплекс програмних рішень, включаючи, дизайн, логіку та базову функціональність системи або підсистеми.
Концептуальний фреймворк — є абстрактна структура чи система, що використовується в дослідженнях для визначення можливих способів вирішення проблеми, задачі чи представлення ідеї
Поговоримо про «Scrum»
Scrum - методологія управління розробкою інформаційних систем для гнучкої розробки програмного забезпечення. Scrum чітко робить акцент на якісному контролі процесу розробки. Крім управління проектами з розробки ПЗ Scrum може також використовуватися в роботі команд підтримки програмного забезпечення (software support teams), або як підхід управління розробкою і супроводом програм: Scrum of Scrums.
Sprint
Спринт - ітерація в скрам, в ході якої створюється функціональний ріст програмного забезпечення. Жорстко фіксований у часі. Тривалість одного спринту від 2 до 4 тижнів.
Ролі людей в Scrum«Свині» повністю включені в проект і в скрам-процес. - Скрам-майстер (ScrumMaster) - Скрам-команда (Scrum Team)
«Кури»- Користувачі (Users)- Клієнти, Продавці (Stakeholders)- Управляючі (Managers) - Експерти-консультанти (Consulting Experts)
Sprint Backlog, Product Backlog- Беклог продукту (Product Backlog) - пріоритезований список вимог з оцінкою трудовитрат. Зазвичай він складається з бізнес-вимог, які приносять конкретну бізнес-цінність і називаються елементи беклога.- Беклог спринту (Sprint Backlog) - частина беклога продукту, з найвищою важливістю і сумарною оцінкою, не перевищує швидкість команди, відібрана для спринту.- Інкремент продукту - нова функціональність продукту, створена під час спринту спринту.
Standup (Scrum-мітинг)
1. Що було зроблено з попереднього скрам-мітингу?2. Які є проблеми?3. Що буде зроблено до наступного скрам мітингу?
Burndown (Таблиця згорання)
Ідеальна команда Хороша команда
Вже досить пізно. Давайте відпочинем
Питання?