{"id":14276,"url":"\/distributions\/14276\/click?bit=1&hash=721b78297d313f451e61a17537482715c74771bae8c8ce438ed30c5ac3bb4196","title":"\u0418\u043d\u0432\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0432\u0430\u0440 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0443 \u0431\u0435\u0437 \u0431\u0438\u0440\u0436\u0438","buttonText":"","imageUuid":""}

Манифест Agile: что лежит в основе гибкого подхода

Agile – гибкая методология разработки программного обеспечения и проектов. Этот подход позволяет упростить процессы, быстро внедрять изменения и не отставать от тенденций рынка.

Авторы Agile сделали основой методологии старую шутку.

— Как съесть слона?

— По кусочкам.

Методология Agile помогает быстрее разрабатывать продукт, делить задачи на подзадачи и реализовывать их благодаря взаимодействию специалистов различных профилей в рамках рабочей группы.

Откуда появился Agile?

В 2001 году 17 специалистов в области программного обеспечения, видные представители индустрии собрались вместе покататься на лыжах и поговорить о будущем развитии программного обеспечения. Многие из этой компании уже тогда были известны своими разработками: автор экстремального программирования Кент Бек, создатель UML Мартин Фаулер, Робетр Мартин, до сих пор выпускающий обучающие статьи и видео о том, как писать хороший код. Главным для обсуждения был вопрос “Как улучшить способы разработки программного обеспечения?”. Итогом совместных размышлений стал небольшой документ, который больше 20 лет является маяком для всех, кто любит гибкие подходы в работе – “Манифест гибкой разработки программного обеспечения”, по-английски – просто Agile Manifesto.

До чего же удалось договориться? Программисты определили четыре ценности, которые, по их мнению, должны помочь в процессе разработки.

Ценность №1

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

Ценность №2

Вторая ценность – работающее программное обеспечение важнее исчерпывающей документации. Здесь также нужно понимать, что приверженцы Agile не отказываются от ведения документов вообще. Если стоит выбор, на что потратить время, они предпочтут доработку продукта, а не описание, например, модулей, которое впоследствии может и не пригодиться. Из второй ценности вытекает одно серьезное заблуждение: многие считают, что в Agile-подходе нет никакой документации. Это не так. Преданные Agile команды отличаются гибкостью и поэтому могут себе позволить задокументировать, на их взгляд, только самое нужное, а на второстепенное не тратить времени.

Ценность №3

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

Ценность №4

Четвертая ценность – реакция на изменения важнее, чем следование плану. Нужно строить процесс таким образом, чтобы он адекватно реагировал на изменения. Первые правки будут, когда заказчик увидит начальную версию продукта. В процессе разработки может произойти всё, что угодно: требования клиента поменяются, появится новый сильный конкурент, у заказчика закончатся деньги и т.д. и т.п. Подобные критические ситуации не страшны, если вы умеете гибко на них реагировать.

Ценности Agile дополняют друг друга, а следование им улучшает бизнес-процессы и повышает скорость разработки любого программного продукта.

Как вы относитесь к Agile? Придерживается ли ваша команда это1 философии в своей работе?

0
Комментарии
-3 комментариев
Раскрывать всегда