Agile Manifesto

Эта статья входит в число готовых статей
Эта статья прошла проверку экспертом
Материал из «Знание.Вики»

Манифест гибкой разработки программного обеспечения (англ. Agile Manifesto) — основной документ, содержащий описание ценностей и принципов гибкой разработки программного обеспечения[1].

Текст манифеста доступен на более чем 50 языках (в том числе на русском), и включает в себя 4 ценности[2] и 12 принципов[3].

Визуализация модели гибкой разработки программного обеспечения (Agile)

История

Agile-манифест был опубликован 13 февраля 2001 года, став результатом встречи 11-13 февраля на горнолыжном курорте в штате Юта[4].

Он был 17-ю независимыми практиками различных методик и подходов к организации процессов разработки программного обеспечения, именующих себя «Agile Alliance»[5]. Каждый практиковал какую-либо альтернативу тяжеловесным (традиционным) процессам, основанным на культе документации и бюрократизации. «Agile Alliance» принял решение объединить в общий Манифест те особенности и аспекты практикуемых ими методик и подходов (обозначенных lightweight (легковесными)), которые приносили наибольший практический положительный эффект[6].

Среди авторов, подписавших Манифест, были: Кент Бек, Майк Бидл, Ари ван Беннекум, Алистер Кокберн, Уорд Каннингем, Мартин Фаулер, Джеймс Греннинг, Джим Хайсмит, Эндрю Хант, Рон Джеффрис, Джон Керн, Брайан Марик, Роберт С. Мартин, Стив Меллор, Кен Швабер, Джефф Сазерленд и Дэйв Томас[7].

Ценности

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

Таким образом, не отрицая важности того, что справа, мы всё-таки больше ценим то, что слева.

Agile Alliance

Основные принципы

Наивысшим приоритетом для нас является удовлетворение потребностей заказчика, благодаря регулярной и ранней поставке ценного программного обеспечения.

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

Работающий продукт следует выпускать как можно чаще, с периодичностью от пары недель до пары месяцев.

На протяжении всего проекта разработчики и представители бизнеса должны ежедневно работать вместе.

Над проектом должны работать мотивированные профессионалы. Чтобы работа была сделана, создайте условия, обеспечьте поддержку и полностью доверьтесь им.

Непосредственное общение является наиболее практичным и эффективным способом обмена информацией как с самой командой, так и внутри команды.

Работающий продукт — основной показатель прогресса.

Инвесторы, разработчики и пользователи должны иметь возможность поддерживать текущий темп бесконечно. Agile помогает наладить такой устойчивый процесс разработки.

Постоянное внимание к техническому совершенству и качеству проектирования повышает гибкость проекта.

Простота — искусство минимизации лишней работы — крайне необходима.

Самые лучшие требования, архитектурные и технические решения рождаются у самоорганизующихся команд.

Команда должна систематически анализировать возможные способы улучшения эффективности и соответственно корректировать стиль своей работы.

Примечания

Литература

Ссылки