Загрузил NProtsenko

agile

реклама
Agile— методология управления проектами. Она возникла в сфере IT и сначала
использовалась для разработки ПО. Сейчас Agile используют и в других отраслях —
поэтому, кроме проджектов, в методологии должны разбираться и другие менеджеры, а
также руководители компаний.
Термин Agile используют в двух значениях:
 - Это философия, система ценностей и принципов, по которым работает команда
проекта.
 - Это семейство методологий управления проектами, которые созданы на базе
философии Agile.
Agile-манифест (Agile Manifesto) — основной документ, в котором описаны ценности
и принципы гибкого управления проектами.
Четыре ценности гибкого управления проектами
 Люди и взаимодействие важнее процессов и инструментов.
 Работающий продукт важнее исчерпывающей документации.
 Сотрудничество с заказчиком важнее согласования условий контракта.
 Готовность к изменениям важнее следования первоначальному плану.
12 принципов Agile:
1. Приоритет команды проекта — удовлетворение потребностей заказчика
с помощью своевременной и регулярной поставки качественного продукта.
2. Изменение требований к продукту приветствуется даже на поздних стадиях
разработки. Agile-процессы позволяют обеспечить продукт конкурентными
преимуществами.
3. Промежуточный рабочий продукт нужно показывать заказчику как можно чаще —
с периодичностью от пары недель до пары месяцев.
4. Руководители и разработчики должны ежедневно работать вместе на протяжении
всего проекта.
5. Над проектом должны работать мотивированные специалисты. Нужно создать для
них необходимые условия и обеспечить им поддержку.
6. Личное общение — самый практичный и эффективный способ обмена
информацией в команде.
7. Работающий продукт — основной показатель прогресса.
8. Процессы в Agile должны быть настроены так, чтобы проект развивался устойчиво.
Заказчики, разработчики и пользователи должны быть готовы к тому, что изменения
будут вноситься равномерно.
9. Постоянное внимание к техническому совершенству продукта и качеству
проектирования повышает гибкость проекта.
10.
Не стоит переусложнять проект — лишние процессы нужно свести
к минимуму.
11.
Лучшие продукты рождаются у команд, которые умеют организовать себя
самостоятельно.
12.
Команда должна постоянно искать способы работать эффективнее
и корректировать свой стиль работы.
Agile церемонии (Планирование спринта, Ежедневный стенд-ап, Обзор спринта,
Ретроспектива спринта)– особенные компоненты Agile, созданные для достижения
максимального уровня прозрачности и коммуникации в течение итеративного
процесса разработки. Обычно такие церемонии отличаются четкой структурой и
целью, характеристиками, которые, как правило, организуют проектную
деятельность и привносят гармонию в любой рабочий процесс.
Scrum (скрам). Чаще всего эту методологию используют в разработке ПО. Проект
разбивают на итерации (спринты) — промежутки времени, в которые команда
разрабатывает продукт поэтапно. Обычно один спринт длится 2–4 недели. В конце
каждого спринта команда поставляет готовую часть продукта — его «неидеальную»
версию, которой уже можно пользоваться, — или дополнительные функции к ней. При
этом в начале проекта нет представления о том, как будет выглядеть продукт в самом
конце: требования могут меняться в ходе разработки.
Скрам — это фреймворк, в котором много специфических ролей, терминов
и мероприятий. Мы расскажем о нескольких основных — это поможет лучше понять
общую концепцию методологии.
Команда, или developers, — люди, которые создают продукт. Простыми словами —
разработчики. Состав команды формируют отдельно для каждого проекта.
Скрам-мастер — менеджер, который направляет команду и решает проблемы,
замедляющие рабочий процесс. Его задача — организовать работу так, чтобы каждый
участник команды понимал потребности клиента и мог предлагать свои идеи. Также
скрам-мастер организует общение клиента и команды на совместных мероприятиях.
Владелец продукта, или product owner, — человек, который отвечает за ценность
продукта и за бэклог. Обычно это представитель заказчика. Он передаёт команде новые
требования к продукту и следит, чтобы команда работала в нужном направлении.
Бэклог — список задач проекта, расположенных по приоритетности.
Scrum-митинг (дэйли или стендап) — ежедневный сбор команды примерно на 15 минут.
За это время каждый участник команды отвечает на три вопроса:



что он сделал с прошлой встречи;
что планирует делать сегодня;
что этому мешает.
Kanban («Канбан»). Эту методологию разработали в Японии и изначально использовали
в производстве автомобилей. Слово kanban на японском означает «вывеска».
Задачи проекта расставляют в виде карточек на доске, разлинованной на колонки. Эти
колонки отражают этапы выполнения проекта. Участник команды берёт задачу,
перемещает карточку по доске от одной колонки к другой, и вся команда видит
актуальный статус этой задачи.
Идея в том, чтобы работа над проектом шла по принципу конвейера. То есть чтобы
разработчики не задумывались над планированием задач и их приоритизацией,
а приходили к доске, брали задачу и шли её выполнять.
Обычно на канбан-досках минимум три колонки: «Выполнить», «В работе»
и «Выполнено». Чаще всего к ним добавляют колонки для промежуточных этапов:
«Бэклог», «На согласовании», «Тестирование» и так далее.
Традиционно канбан-доски представляли собой физические доски — например,
магнитные или пробковые, — на которых крепили бумажные карточки. Позже появились
онлайн-доски. Самые популярные из них — Trello, Jira, Asana.
В отличие от других методов проектного управления, канбан-команда работает без
жёстких временных ограничений — даже несмотря на то, что на онлайн-досках задачам
можно назначать срок выполнения.
Вместо этого работа над проектом организована как непрерывный поток задач. Когда
участник команды заканчивает одну задачу, он идёт за другой, потом за следующей и так
далее.
Как мы говорили выше, в Scrum работа делится на спринты. Каждый спринт — короткий
период, в течение которого команда работает над несколькими задачами: анализирует их,
выполняет, тестирует, обсуждает с заказчиком и при необходимости дорабатывает.
Рассмотрим, как это проходит, поэтапно.
Планирование. На этом этапе определяют основную идею проекта, обсуждают
требования заказчика и формируют перечень задач. По-другому такой перечень называют
бэклогом. Дальше задачи приоритизируют — самые важные и срочные размещают
в верхней части бэклога.
Анализ. Из верхней части бэклога команда выбирает задачи для одной итерации. Затем
определяет, какие ресурсы понадобятся для выполнения этих задач, и распределяет
их между собой.
На этом же этапе формируют критерии успешного завершения каждой задачи: по каким
параметрам будет понятно, что задача выполнена хорошо. Благодаря такому подходу
у всей команды формируются одинаковые ожидания относительно результатов итерации.
Выполнение. Участники команды работают над своими задачами. Каждый день они
встречаются, чтобы обсудить текущий прогресс: что они сейчас делают, какие проблемы
у них возникают, что они планируют делать дальше. Это важно для того, чтобы работа
над проектом была прозрачной и все участники команды владели ситуацией.
Тестирование. На этом этапе проверяют работоспособность проекта — например,
запускается ли программа, выполняет ли она свои функции корректно и так далее. Этап
тестирования проходит параллельно с этапом выполнения. Это нужно, чтобы быстро
реагировать на обнаруженные проблемы и вносить изменения вовремя.
Релиз. В конце спринта команда показывает заказчику результаты своей работы —
например, готовую программу или часть её функций. Заказчик даёт обратную связь —
объясняет, что его устраивает, а что нет. Если есть замечания, команда обсуждает, как
будет дорабатывать проект, и возвращается к предыдущим этапам.
Если замечаний нет, команда переходит к следующей итерации. Такой цикл повторяется
до завершения всего проекта — например, до стадии, когда программу отдают заказчику
полностью готовой.
Таким образом, методология Scrum позволяет команде быстро реагировать на изменения,
постоянно взаимодействовать с заказчиком, учитывать новые требования и создавать
актуальный продукт.
Скачать