Manual QA course
Apply now
5.0
4.9
4.7
4.3

Гибкие методологии в IT

November 3, 2020

Правила работы, которых придерживаются во время рабочего процесса, называют методологиями. В IT чаще всего используют Agile (гибкий подход) и Waterfall (каскадная методология).

Выбор стратегии зависит от задания, размера проекта, времени и бюджета. Agile и Waterfall считаются самыми популярными методологиями. Agile – гибкий, в то время как Waterfall это четкий план действий. Правильная модель облегчает весь процесс создания приложения и оптимизирует командную работу.

Agile - подход в разработке, который предполагает гибкость с возможностью внесения изменений на каждом этапе проекта.

Главные критерии для всех подходов Agile:

  • Люди и их взаимодействие важнее, чем процесс и инструменты.
  • Важнее создать качественный продукт, чем набор документов.
  • Сотрудничество с клиентом является ключевым моментом в работе.
  • Внедрение изменений важнее следования основному рабочему плану.

Преимущество Agile это планирование. Agile предполагает, что придерживаться технического задания не самая лучшая идея, так как приложение может потерять свою актуальность. Согласно Agile, клиент сможет запустить первую версию приложения уже через короткий период времени, в то время как разработчики продолжат работать над продуктом. 

Методология Agile имеет несколько методов:

Scrum

Команда: до 10 девелоперов.

Весь проект разбивается на короткие этапы. Каждый день отслеживается прогресс (daily scrum). В конце определенного периода пересматриваются все выполненные задачи. Команда постоянно думает о способах оптимизации рабочего процесса. Вся проектная работа курируется двумя людьми – заказчиком и тимлидом.

Kanban

Команда: от 1 до 3 человек

Часто используется для самоорганизации. Девелопер пользуется доской задач, где есть две графы – «сделать» и «сделано». Разрешается работать только над одной задачей за раз.

Существует и гибридная модель Scrum и Kanban - Scrumban.

Scrumban используется в случае, когда заказчик не активен, и/или нет скрам мастера, который будет следить за процессом. Работа начинается с доски задач, однако, ключевое различие в количестве секций. Теперь их три: «Сделать/надо», «в процессе» и «сделано». Каждый член команды выполняет одну задачу за раз.

Планирование происходит по мере необходимости, особенно в том случае, когда заканчиваются задачи в секции «Сделать». В этой команде нет ни фиксированных ролей, ни человека, который модерирует процесс. Вся работа равномерно распределяется между задействованными лицами.

Гибкие методологии универсальны, и могут применяться в любом проекте. Обратная связь очень важна и помогает создать приложение, которое будет выполнять свои задачи в полном объеме. Выбирая эту модель, клиент может быть уверен в качестве продукта.

Waterfall

Данная модель это линейный процесс, без возможности сделать шаг назад. Любые изменения могут осуществляться только после релиза. Самое большое преимущество этого подхода – фиксированная стоимость и сроки сдачи.

Этапы работы согласно Waterfall:

  • Анализ требований и задачи продукта.
  • Планирование этапов работы (создается один раз, без возможности редактирования).
  • Проектирование (структура кода, дизайн и т.д.).
  • Разработка продукта (шаблоны и дизайн).
  • Интеграция (создание исходного кода и обмен данными).
  • Тестирование (исправление системных ошибок, багов).
  • Релиз (завершение разработки, адаптация приложения по запросу клиента).
  • Техническая поддержка (поддержание работоспособности продукта, исправление системных ошибок).

Плюсы и минусы Waterfall

+ -
Сроки сдачи проекта и бюджет определяются до начала работы над проектом Требования определяются вначале и остаются неизменными на протяжении всего рабочего процесса
Понятный рабочий процесс с четкими этапами Требует много времени и финансов
Детализированный план проекта и хорошо структурированная документация Брак гибкости. Отсутствие возможности изменения технического задания после начала работы
Легко отслеживаемый процесс и бюджет благодаря постоянной отчетности Клиент увидит проект уже после релиза и все последующие изменения будут требовать дополнительных временных и финансовых затрат.
Задачи, поставленные перед командой, остаются неизменными до конца проекта Отсутствие связей между этапами разработки.
Качество продукта важнее чем потраченные ресурсы на его реализацию Продукт тестируется после релиза

Когда применяются эти методы?

Agile Waterfall
Если требования к продукту не определены до конца, когда нужно быстро внедрять изменения Требования к проекту тщательно продуманы и остаются неизменными. Идея проекта предельно ясна.
Наличие опытной команды высококлассных специалистов Технологии и инструменты для работы известны заранее
Клиент активно участвует в создании продукта на протяжении всего процесса Клиент не готов принимать участие в процессе разработки. Видит только финальный результат
Для клиента важно иметь возможность вносить правки Клиент хочет знать сроки сдачи и итоговую цену продукта
Идеален для быстрого запуска продукта в кратчайшие сроки Разрабатываемый продукт является сложным и дорогим
Сфера, в которой внедряется продукт довольно изменчива Продукт похож на один из тех, которые ранее выполняла команда

Мы надеемся, что нам удалось немного объяснить, чего можно ожидать на ваших первых проектах в IT-компаниях. Как только вы испытаете одну из упомянутых методологий, вам уже будет трудно представить рабочий процесс другим образом. Ведь эти подходы значительно облегчают рабочий процесс и помогают отслеживать работу над проектом.

Запись на курс Manual QA