Зачем нужна гибкая методология разработки

Что такое гибкая методология разработки и каковы ее принципы

Разработка любого приложения или программы для ПК — сложный процесс. Команде нужно принимать решения, выбирать определенные инструменты и фреймворки. Однако все это важно синхронизировать, иначе работа остановится. Поэтому популярной стала гибкая методология разработки (Agile software development) — комплекс подходов и практик, целью которых является ускорение создание продукта.

Особенности гибкой методологии разработки

В основе Agile лежит общение друг с другом, в то время как в прочих практиках применяется иной подход. Команда разделяется на группы, каждая выполняет определенные действия (итерации) в течение 2-3 недель. В случае Agile-методов специалисты находятся в одном офисе с заказчиком (или его представителем). Благодаря этому время разработки приложения уменьшается объем документации. Однако неоднократно Agile-методы критиковали за недисциплинированность.

В основе лежат четыре ценности:

  • Люди важнее процессов и инструментов.
  • Работающий продукт ценнее бумаг.
  • Сотрудничество с заказчиком приоритетнее условий контракта.
  • Готовность к изменениям важнее плана.

Все это реализуется в работе. Так, чтобы создать приложение необязательно составлять отчеты, диаграммы и схемы для заказчика. Важнее предоставить рабочий продукт заказчику в короткие сроки.

При работе с Agile используют несколько принципов:

  • Приоритет — это удовлетворение заказчика. Получить его можно при быстром выполнении задачи.
  • Изменения — это всегда хорошо, даже в конце разработки.
  • Общение заказчика и команды должно стать ежедневным ритуалом.
  • Если ПО работает, то это синоним успеха.
  • Простота — это искусство, а не недостаток.
  • Лучшие решения получаются у самоорганизирующихся команд.
  • Поставка обновлений должна быть частой.
  • Проекты не просто отдают специалистам, важно создать им условия для работы.

Agile имеет и недостатки. Заказчик может вносить новые требования, которые идут в вразрез с тем, что уже есть. К тому же подход "Работает и хорошо" грозит тем, что в случае обновления платформы — программа перестанет функционировать.