Agile (Гнучка модель). Scrum. Selenium

Agile – сімейство процесів розробки, а не єдиний підхід у розробці програмного забезпечення. Agile не включає практик, а визначає цінності і принципи, якими керуються успішні команди. Включає в себе наступні методології: наступних методологій Extreme programming, Scrum, DSDM, Adaptive software development, Crystal Clear, Feature-driven development, Pragmatic Programming.

Основні ідеї:

  • Особистості та їх взаємодія є важливішим, ніж процеси та інструменти;
  • Працююче програмне забезпечення є важливішим, ніж повна документація;
  • Співпраця з замовником важливіша, ніж контрактні зобов’язання;
  • Реакція на зміни є важливішим, ніж дотримання плану.

Принципи:

задоволення клієнта за рахунок ранньої та безперебійної поставки цінного програмного забезпечення;
можливість змін вимог навіть наприкінці розробки (це може підвищити • конкурентоспроможність отриманого продукту);

  • часта поставка робочого програмного забезпечення (кожен місяць або тиждень або ще частіше);
  • тісне, щоденне спілкування замовника з розробниками протягом всього проекту;
  • проектом займаються мотивовані особистості, які забезпечені потрібними умовами роботи, підтримкою і довірою;
  • рекомендований метод передачі інформації – особиста розмова (обличчям до обличчя);
  • працююче програмне забезпечення – кращий вимірювач прогресу;
  • спонсори, розробники і користувачі повинні мати можливість підтримувати постійний темп на невизначений термін;
  • постійна увага поліпшенню технічної майстерності і зручному дизайну;
  • простота – мистецтво не робити зайвої роботи;
  • кращі технічні вимоги, дизайн та архітектура виходять у самоорганізованої команди;
    постійна адаптація до мінливих обставин.

Скрам (Scrum) – одна з найпопулярніших методологій гнучкої розробки. Scrum простий у використанні і робить акцент на якісному контролі процесу розробки.
У методології Scrum всього три ролі:

  • Scrum Master
  • Product Owner
  • Team

Скрам Майстер (Scrum Master) – відповідає за успіх у проекті. По суті, Скрам Майстер є інтерфейсом між менеджментом і командою (менеджер проекту або тімліда). Важливо підкреслити, що Скрам Майстер не роздає завдання членам команди.

У Agile команда є самоорганізованою.
Основні обов’язки Скрам Майстра:

  • Створює атмосферу довіри
  • Бере участь у мітингах в якості фасилітатора
  • Усуває перешкоди
  • Робить проблеми і відкриті питання видимими
  • Відповідає за дотримання практик і процесу в команді
  • Скрам Майстер веде Daily Scrum Meeting і відстежує прогрес команди за допомогою Sprint Backlog, відзначаючи статус всіх завдань у спринті. ScrumMaster може також допомагати Product Owner створювати Backlog для команди.

Product Backlog – це пріоритезований список наявних на даний момент бізнес вимог і технічних вимог до системи. Product Backlog включає в себе use cases, defects, enhancements, technologies, stories, features, issues, і т.д .. Product backlog також включає завдання, важливі для команди, наприклад «провести тренінг», «додати всім пам’яті»
Product Backlog постійно переглядається і доповнюється – в нього включаються нові вимоги, видаляються непотрібні, переглядаються пріоритети. За Product Backlog відповідає Product Owner. Він також працює спільно з командою для того, щоб отримати наближену оцінку на виконання елементів Product Backlog для того, щоб більш точно розставляти пріоритети відповідно до необхідним часом на виконання.

Product Owner – це людина, яка відповідає за розробку продукту (представник замовника). Product Owner – це єдина точка прийняття остаточних рішень для команди в проекті.
Обов’язки Product Owner такі:

  • Управляє очікуваннями замовників і всіх зацікавлених осіб
  • Координує і пріорітизує Product backlog
  • Надає зрозумілі вимоги команді
  • Взаємодіє з командою і замовником
  • Відповідає за приймання коду в кінці кожної ітерації
  • Product Owner ставить завдання команді, але він не має права ставити завдання • конкретного члена проектної команди протягом спринту

Команда (Team). Команда бере на себе зобов’язання щодо виконання обсягу робіт на спринт перед Product Owner. Робота команди оцінюється як робота єдиної групи. У Scrum внесок окремих членів проектної команди не оцінюється, оскільки це розвалює самоорганізацію команди.
Обов’язки команди такі:

  • Відповідає за оцінку елементів backlog
  • Приймає рішення по дизайну
  • Розробляє софт і надає його замовнику
  • Відстежує власний прогрес (разом зі Скрам Майстром)
  • Відповідає за результат перед Product Owner

Selenium – це інструмент для тестування Web-додатків.
Офіційний сайт: http://seleniumhq.org
Selenium на даний момент є найпопулярнішим іструментом для автоматизації тестування web-додатків, оскільки він: безкоштовний, гнучкий, працює безпосередньо через браузер, доступний в різних мовах програмування. Важливим є те що тести Selenium виконуються безпосередньо в браузері як це роблять звичайні користувачі.

2 головні переваги Selenium:
Створення тестових сценаріїв Selenium відтворює дії користувача, тобто додаток тестується з точки зору кінцевого користувача.
Можливість запуску тестів в різних браузерах, що полегшує визначення несумісності браузера.
Selenium працює з:
Браузери: Internet Explorer, Mozilla Firefox, Safari, Chrome
Операційні системи: Microsoft Windows, Mac OS, Linux

  1 comment for “Agile (Гнучка модель). Scrum. Selenium

  1. qalearning
    Червень 9, 2015 at 18:20

    Зміст:

    1. Введення в тестування програмного забезпечення
    2. Особливості вимог програмного забезпечення. Методи тестування. Фази тестування. Класи еквівалентності.
    3. Види Тест Кейсiв. Стани Тест Кейсiв. Багтрекінгові системи. Серйозність і пріоритет дефекту. Життєвий цикл дефекту.
    4. Рівні тестування.
    5. Види тестування ПО. Функціональне тестування (Functional Testing). Тестування безпеки (Security and Access Control Testing). Тестування взаємодії (Interoperability Testing).
    6. Нефункціональне тестування ПЗ.
    7. Види тестування, пов’язані зі змінами. Кросбраузерність.
    8. Agile (Гнучка модель). Scrum. Selenium.

Comments are closed.