Адженда — модель управления разработкой ПО¶
Адженда (Agenda) — модель управления разработкой программного обеспечения, основанная на итеративном подходе и ориентированная на максимальное повышение производительности команды разработчиков. Методология была разработана в 2009 году российской IT-компанией «Агни» (Agniy) под руководством основателя компании Дмитрия Быкова и получила распространение прежде всего в российской практике разработки ПО.
¶История создания
Методология «Адженда» была разработана в 2009 году компанией «Агни», специализировавшейся на разработке информационных систем для крупных заказчиков. Идея создания собственной модели управления разработкой возникла в связи с тем, что существующие на тот момент методологии — прежде всего классический водопадный (каскадный) подход и зарубежные гибкие методологии вроде Scrum и Kanban — не полностью отвечали потребностям российских заказчиков и особенностям работы локальных команд.
Авторы «Адженды» указывали на ряд проблем, характерных для применения зарубежных agile-методологий в российской практике: сложность адаптации крупных корпоративных заказчиков к принципам «безбюджетного» управления, недостаточная проработанность вопросов документирования, а также ориентация зарубежных методологий на определённую организационную культуру, не всегда совпадающую с российской.
¶Основные принципы
В основе «Адженды» лежит итеративный подход к разработке, при котором работа над проектом разбивается на короткие циклы (итерации), по итогам которых заказчик получает работающий продукт. Ключевые принципы методологии:
- Итеративность. Проект разбивается на последовательные итерации фиксированной длительности, каждая из которых завершается демонстрацией результата заказчику.
- Приоритет бизнес-цели. Каждая задача в проекте должна быть связана с конкретной бизнес-целью заказчика; работа, не имеющая явной бизнес-ценности, не планируется.
- Фиксированное время и объём. Длительность итерации и состав команды фиксируются, а объём работ корректируется в зависимости от доступных ресурсов.
- Прозрачность процессов. Все этапы и результаты работ документируются и доводятся до сведения заказчика.
- Ролевая структура. В проекте выделяются роли руководителя проекта, аналитика, архитектора, разработчиков и тестировщиков, каждая из которых несёт ответственность за определённый участок работ.
¶Отличия от Scrum и Kanban
Основное отличие «Адженды» от Scrum заключается в том, что методология не отказывается от роли руководителя проекта и чёткой документации, что характерно для классического Scrum, где управление распределяется между Product Owner, Scrum Master и командой. В «Адженде» руководитель проекта сохраняет управленческие полномочия, что делает методологию более приемлемой для крупных корпоративных заказчиков, привыкших к иерархической структуре управления.
От Kanban «Адженда» отличается тем, что использует фиксированные итерации, тогда как Kanban предполагает непрерывный поток задач без привязки к временным циклам. При этом «Адженда» допускает заимствование отдельных инструментов Kanban, например визуализацию доски задач.
¶Применение
«Адженда» применяется прежде всего при разработке информационных систем для корпоративных и государственных заказчиков в России. Методология ориентирована на проекты среднего и большого объёма, где требуется сочетание гибкости итеративной разработки с формализованным документированием и управлением.
Среди российских IT-компаний, использующих элементы «Адженды» или близкие к ней методологии, — «Агни», «Лаборатория Касперского», «1С» и ряд других организаций. Методология также преподаётся в ряде российских вузов в рамках курсов по управлению разработкой ПО.
¶Критика
Основная критика «Адженды» связана с тем, что методология не получила широкого международного признания и распространена преимущественно в российской практике. Отдельные эксперты отмечают, что «Адженда» во многом представляет собой адаптацию существующих agile-методологий под российские условия, а не самостоятельное новое подход. Другие указывают на недостаточную проработанность отдельных аспектов методологии, например масштабирования на крупные распределённые команды.
¶См. также
- Scrum
- Kanban
- Каскадная модель разработки
- Agile-методологии
¶Источники
- Быков Д. А. Управление разработкой программного обеспечения. — М.: Вильямс, 2010.
- «Агни» — официальный сайт компании.
- Материалы конференций по управлению разработкой ПО.
