You are on page 1of 11

ЛАБОРАТОРНА РОБОТА № 6

Менеджмент в тестуванні. Порівняння гнучких та каскадних


методологій розробки та роль тестування в них.
Хід роботи:
Завдання 1: Вибір методології розробки Розгляньте різні види методологій
розробки, такі як Waterfall, Scrum, Kanban тощо. Виберіть одну з цих методологій
та обґрунтуйте свій вибір для конкретного проекту. Поясніть, яким чином обрана
методологія вплине на процес тестування.
Для проекту розробки онлайн сервісу доставки квітів я вважаю, що
найбільш підходящою методологією буде Scrum.
Обґрунтування вибору:
Ітеративний підхід: Scrum дозволяє розробникам швидко створювати
мінімально життєздатний продукт і постійно вдосконалювати його на основі
зворотнього зв'язку від клієнта. Оскільки ринок доставки квітів швидкозмінний, і
важливо швидко реагувати на зміни у вимогах та потребах користувачів,
ітеративний підхід Scrum дозволить забезпечити гнучкість і швидкість в розробці
та впровадженні сервісу.
Регулярність спрямованості на результати: Scrum передбачає короткі
ітерації, відомі як "спринти", які зазвичай тривають від 2 до 4 тижнів. Кожен
спринт завершується готовим до випуску інкрементом продукту, що дозволяє
постійно оцінювати прогрес і забезпечувати відповідність розробленого продукту
потребам користувачів.
Прозорість і комунікація: Scrum заснований на принципах прозорості та
активної комунікації. Це особливо важливо для проектів, де потрібно забезпечити
постійний зв'язок з клієнтом та швидку реакцію на їхні зміни в вимогах.

Змн. Арк. № докум. Підпис Дата


Розроб. Літ. Арк. Аркушів
Перевір. 1
Керівник
Звіт з
Н. контр. лабораторної роботи
Зав. каф.
Вплив на процес тестування:
Постійне тестування нових функцій: У Scrum нові функції тестуються на
кожному спринті, тому тестувальники мають можливість швидко перевіряти
якість нового функціоналу та забезпечувати його відповідність вимогам.
Зворотний зв'язок від користувачів: Під час регулярних демонстрацій
користувачам інкрементів продукту, тестувальники можуть отримувати цінний
зворотний зв'язок щодо якості та коректності функцій, що дозволяє швидко
вносити виправлення або поліпшення.
Автоматизація тестування: З огляду на часті релізи та ітеративний характер
розробки, автоматизація тестування стає критично важливою. Тестувальники
можуть розробляти та підтримувати набір автоматизованих тестів, що допомагає
забезпечити швидкість та стабільність релізів.
Отже, Scrum є відмінним вибором для проекту розробки онлайн сервісу
доставки квітів, оскільки він надає можливість швидко реагувати на зміни,
забезпечує прозорість та спрямовує на результати, що сприяє якості та
ефективності проекту.
Завдання 2: Планування тестування в різних методологіях. Порівняйте
підходи до планування тестування в різних методологіях розробки. Розгляньте, як
визначаються терміни, ресурси, обсяги робіт та інші аспекти тестування в Agile та
Waterfall, наприклад.
Планування тестування в різних методологіях розробки, таких як Agile і
Waterfall, має суттєві відмінності через особливості кожної з цих методологій.
Waterfall:
Фазовий підхід: У Waterfall тестування зазвичай відбувається після
завершення розробки кожного етапу проекту (аналіз, проектування, розробка

Арк.

2
Змн. Арк. № докум. Підпис Дата
тощо). Це означає, що тестування починається тільки після того, як весь продукт
розроблений.
Статичне планування: Терміни, ресурси та обсяги робіт у тестуванні
зазвичай фіксуються на початку проекту і залишаються незмінними протягом
всього життєвого циклу проекту.
Детальний план робіт: У Waterfall планування тестування проводиться
детально на початку проекту, включаючи визначення тестових сценаріїв, обсягу
тестування та вимог до тестової інфраструктури.
Agile:
Ітеративний підхід: У Agile тестування проводиться паралельно з
розробкою продукту на протязі всього процесу. Тестування починається з
першого спринту і продовжується на кожному ітераційному циклі.
Гнучке планування: У Agile планування тестування більш гнучке і
динамічне. Терміни, ресурси та обсяги робіт можуть змінюватися на основі змін у
вимогах клієнта, фідбеку від користувачів та інших факторів.
Приоритезація тестів: У Agile тестувальники зазвичай пріоритизують тести
в залежності від їхньої важливості та ризику, що дозволяє зосередити увагу на
найбільш критичних аспектах продукту.
Автоматизація: В Agile широко використовується автоматизація тестування
для забезпечення швидкості та ефективності процесу. Це дозволяє проводити
тести на кожному ітераційному циклі і забезпечувати якість продукту на кожному
етапі розробки.
Отже, якщо Waterfall вимагає детального планування і виконання
тестування після розробки, то Agile дозволяє гнучко реагувати на зміни та
проводити тестування паралельно з розробкою продукту, що забезпечує більшу
ефективність та адаптивність у процесі розробки.

Арк.

3
Змн. Арк. № докум. Підпис Дата
Завдання 3: Оптимізація процесу тестування в Scrum В Scrum тестування
відіграє важливу роль. Розгляньте, як можна оптимізувати процес тестування в
Scrum-проекті. Розгляньте питання, такі як спрямування на автоматизацію, ролі
Scrum Master та Product Owner в процесі тестування.
Оптимізація процесу тестування в Scrum-проекті може забезпечити більшу
ефективність та якість продукту. Ось деякі шляхи оптимізації:
Спрямування на автоматизацію:
Автоматизація тестування дозволяє прискорити процес та забезпечити
більшу покриття тестами.
Автоматизовані тести можуть бути виконані під час кожного спринту, що
дозволяє швидко виявляти та виправляти помилки.
Регулярність виконання тестів:
Виконання тестів повинно бути вбудовано в процес розробки і проводитися
на кожному спринті.
Регулярне тестування дозволяє виявляти помилки раніше та запобігати
накопиченню технічного боргу.
Роль Scrum Master:
Scrum Master може допомогти команді тестування у вирішенні будь-яких
перешкод або проблем, які виникають під час процесу тестування.
Він може забезпечити збалансованість між розробкою та тестуванням, а
також забезпечити, що команда дотримується процесу Scrum.
Роль Product Owner:
Product Owner важливий для забезпечення вірних пріоритетів для
тестування.

Арк.

4
Змн. Арк. № докум. Підпис Дата
Він забезпечує, що функціональність, яку тестують, відповідає бізнес-
вимогам та очікуванням користувачів.
Комунікація і зворотній зв'язок:
Ефективна комунікація між всіма стейкхолдерами, зокрема
тестувальниками, розробниками, Scrum Master і Product Owner, допомагає
уникнути недорозумінь та роз'яснити очікування стосовно тестування продукту.
Зворотній зв'язок від користувачів також важливий для вдосконалення
процесу тестування та покращення якості продукту.
Проактивність тестувальників:
Тестувальники повинні бути активно включені в процес планування,
ретроспектив та інших зустрічах команди Scrum.
Вони можуть допомагати визначити потенційні проблеми або ризики, а
також вносити пропозиції щодо покращення процесу розробки.
Загалом, оптимізація процесу тестування в Scrum-проекті вимагає співпраці
всіх учасників команди, гнучкості у вирішенні проблем та постійного
покращення. Регулярне виконання тестів, автоматизація, ефективна комунікація
та активна участь різних ролей в процесі можуть значно поліпшити якість та
швидкість розробки продукту.
Завдання 4: Моніторинг і відстеження в Kanban Розгляньте, як Kanban може
бути використана для моніторингу та відстеження процесу тестування.
Kanban - це методологія управління проектами, яка базується на
візуальному відображенні потоку робіт на дошці, розділеному на колонки. Кожна
колонка відображає різні етапи процесу роботи, починаючи від постановки
завдання і до завершення його виконання. Методологія Kanban може бути
ефективно використана для моніторингу та відстеження процесу тестування. Ось
кілька способів, як це можна зробити:

Арк.

5
Змн. Арк. № докум. Підпис Дата
Створення спеціальних колонок для завдань тестування: На дошці Kanban
можна створити спеціальні колонки, такі як "Тестування очікує", "Тестування в
процесі" і "Тестування завершено". Це дозволяє членам команди тестування легко
відслідковувати потік роботи та визначати, на якому етапі знаходиться кожне
завдання.
Візуальне відображення прогресу: Канбан-дошка надає зручний спосіб
візуального відображення прогресу тестування. Кожна картка завдання може мати
позначки, що показують стан тестування, наприклад, кількість успішно
пройдених тестів або кількість виявлених помилок.
Обмін інформацією: За допомогою Канбан-дошки всі члени команди
можуть легко спілкуватися та обмінюватися інформацією про стан тестування.
Вони можуть бачити, на які завдання потрібно звернути увагу, які помилки
виявлені, і які завдання готові до перевірки.
Аналіз метрик продуктивності: Kanban також дозволяє відстежувати
метрики продуктивності, такі як час, що пройшов кожний завдання через кожну
колонку, частота виявлення помилок, час, витрачений на виправлення помилок
тощо. Це дозволяє команді тестування виявляти можливі проблеми та
покращувати ефективність своєї роботи.
Постійне оновлення і вдосконалення процесу: Використання Kanban для
моніторингу та відстеження процесу тестування також надає можливість постійно
оновлювати і вдосконалювати робочі процеси. Відстеження продуктивності та
аналіз метрик дозволяють ідентифікувати можливі зони покращення та
впроваджувати відповідні заходи.
Отже, Kanban може бути ефективним інструментом для моніторингу та
відстеження процесу тестування, сприяючи більшій прозорості, ефективності та
керованості проектом.

Арк.

6
Змн. Арк. № докум. Підпис Дата
Завдання 5: Розробка тестових сценаріїв в різних методологіях Порівняйте
підходи до розробки тестових сценаріїв в Agile та каскадних методологіях.
Визначте, як різні методології впливають на процес розробки та оновлення тест-
кейсів.
Розробка тестових сценаріїв в Agile та каскадних методологіях має суттєві
відмінності через особливості кожної з цих методологій. Нижче я наведу
порівняльний аналіз:
Agile:
Ітеративний підхід:
У Agile тестові сценарії розробляються поступово, на основі вимог та
функціональності, що планується для кожного ітераційного циклу.
Тестові сценарії можуть бути визначені на початку проекту, але їхнє
вдосконалення та доповнення відбувається протягом кожного спринту.
Гнучкість та змінність:
Agile надає можливість змінювати та адаптувати тестові сценарії на основі
змін у вимогах, фідбеку користувачів та внутрішніх потреб команди.
Тестові сценарії можуть бути швидко оновлені або змінені відповідно до
нових вимог або виявлених проблем.
Комунікація та співпраця:
Розробка тестових сценаріїв в Agile вимагає активної співпраці між
розробниками, тестувальниками та іншими стейкхолдерами.
Тестувальники можуть працювати над тестовими сценаріями паралельно з
розробниками, щоб забезпечити максимальну відповідність вимогам та якості
продукту.
Каскадні методології (наприклад, Waterfall):

Арк.

7
Змн. Арк. № докум. Підпис Дата
Фазовий підхід:
У каскадних методологіях тестові сценарії зазвичай розробляються на
початку проекту, після визначення всіх вимог та проектування продукту.
Тестові сценарії фіксуються на етапі планування і використовуються
протягом усього життєвого циклу проекту.
Статичність та незмінність:
Тестові сценарії в каскадних методологіях зазвичай залишаються
незмінними протягом усього проекту, якщо не виникає критичних змін у вимогах
або функціональності.
Формальність та деталізація:
У каскадних методологіях тестові сценарії зазвичай деталізуються та
формалізуються на етапі планування, що дозволяє забезпечити повноту та
точність тестування.
Вплив на процес розробки та оновлення тест-кейсів:
В Agile розробка та оновлення тест-кейсів більш гнучка і динамічна,
оскільки вони можуть змінюватися на основі нових вимог або виявлених проблем.
У каскадних методологіях тест-кейси залишаються більш статичними та
фіксованими, адже вони детально визначаються на етапі планування та
залишаються без змін протягом всього проекту.
Отже, розробка тестових сценаріїв в Agile характеризується більшою
гнучкістю, змінністю та активною співпрацею, тоді як каскадні методології
передбачають більш статичний, деталізований та формалізований підхід до
розробки тест-кейсів.
Завдання 6: Оцінка ризиків в розробці та тестуванні Визначте, як оцінка
ризиків відрізняється в різних методологіях розробки, і розробіть план оцінки

Арк.

8
Змн. Арк. № докум. Підпис Дата
ризиків для конкретного проекту. Розгляньте, які можливі ризики пов'язані з
тестуванням.
Оцінка ризиків - це важлива складова кожного проекту, включаючи
розробку програмного забезпечення та тестування. Вона дозволяє ідентифікувати
потенційні проблеми та забезпечити план дій для їх управління та запобігання.
Однак підходи до оцінки ризиків можуть відрізнятися в залежності від обраної
методології розробки. Нижче я наведу порівняльний аналіз та розроблю план
оцінки ризиків для конкретного проекту:
Оцінка ризиків в різних методологіях розробки:
Waterfall:
У Waterfall оцінка ризиків зазвичай проводиться на початковому етапі
проекту під час визначення вимог і проектування системи.
Оцінка ризиків здійснюється у вигляді документованого аналізу, де
ідентифікуються можливі проблеми та визначаються стратегії їх управління.
Agile:
У Agile оцінка ризиків є постійним процесом, який відбувається на кожному
спринті.
Команда постійно аналізує потенційні ризики та вносить відповідні
корективи в процес розробки.
План оцінки ризиків для конкретного проекту:
Проект: Розробка онлайн сервісу для доставки квітів
Ідентифікація ризиків:
Аналіз можливих загроз для проекту, таких як затримки в розробці, втрата
даних, недоліки в безпеці тощо.

Арк.

9
Змн. Арк. № докум. Підпис Дата
Оцінка ризиків, пов'язаних з розробкою та тестуванням, таких як проблеми
інтеграції, неправильне розуміння вимог користувача, недостатній покриття
тестами тощо.
Аналіз впливу та ймовірності:
Оцінка потенційного впливу кожного ризику на проект та ймовірності його
виникнення.
Призначення пріоритетів для кожного ризику відповідно до його
серйозності та ймовірності.
Розробка стратегій управління ризиками:
Визначення конкретних заходів для управління кожним ризиком,
включаючи проактивні дії для запобігання та плани реагування в разі виникнення.
Постійне відстеження та оновлення:
Постійне моніторинг ризиків на протязі всього життєвого циклу проекту.
Оновлення плану оцінки ризиків за необхідності, з урахуванням змін у
вимогах, стані проекту та нових загроз.
Можливі ризики, пов'язані з тестуванням:
Недостатнє покриття тестами всіх аспектів функціональності.
Неадекватні тестові дані або недостатня їхність.
Відсутність автоматизації тестування, що призводить до затримок у
виконанні тестів.
Недостатній час для виконання тестування відповідно до графіка проекту.
Неправильне розуміння вимог користувача, що може призвести до
неповного або неправильного тестування функціональності.

Арк.

10
Змн. Арк. № докум. Підпис Дата
Арк.

11
Змн. Арк. № докум. Підпис Дата

You might also like