# Agile - методология

**Agile** - это не конкретная методология, это скорее образ мышления, описанный 4-мя ценностями и определенный 12-ю принципами. Но одних ценностей и принципов недостаточно, чтобы эффективно организовать работу команд. По этой причине существует огромное количество практик и инструментов, которые хорошо интегрируются с Agile подходом, такие как Scrum, Kanban, SAFE, LeSS и т.д.

### Главные идеи в основе Agile

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

**Идея 2:** Научиться вести проекты на основе эмпирических данных.

**Идея 3:** Следовательно, использовать итеративно-инкрементальный подход - делить работу на небольшие отрезки, в которые поставлять отдельные работающие части продукта.

**Идея 4:** Работать в команде и делать это максимально прозрачно.

**Идея 5:** Регулярно собирать обратную связь от заказчиков и пользователей.

### 4 ценности Agile

В Agile-манифесте были описаны главные ценности, которые звучат так:

> Мы постоянно открываем для себя более совершенные методы разработки программного обеспечения, занимаясь разработкой непосредственно и помогая в этом другим. Благодаря проделанной работе мы смогли осознать, что:
>
> 1. **Люди и взаимодействие** важнее процессов и инструментов.
> 2. **Работающий продукт** важнее исчерпывающей документации.
> 3. **Сотрудничество с заказчиком** важнее согласования условий контракта.
> 4. **Готовность к изменениям** важнее следования первоначальному плану

### 12 главных принципов Agile

1. Нашим наивысшим приоритетом является удовлетворение потребностей заказчика\
   за счет своевременной и непрерывной поставки программного обеспечения.
2. Приветствуйте меняющиеся требования, даже на поздних стадиях разработки. Agile-процессы используют изменения для конкурентного преимущества клиента.
3. Выпускайте работающий продукт как можно чаще, отдавая предпочтение более коротким временным рамкам: от пары недель до пары месяцев.
4. Представители бизнеса и разработчики должны ежедневно работать вместе на протяжении всего проекта.
5. Проекты должны создавать мотивированные специалисты. Обеспечьте им необходимые условия и поддержку, и доверьтесь им полностью.
6. Самый эффективный и результативный метод обмена информацией с командой разработчиков и внутри нее является личное общение друг с другом.
7. Основным показателем прогресса является работающий продукт.
8. Agile-процессы способствуют устойчивому развитию. Инвесторы, разработчики и пользователи должны иметь возможность поддерживать постоянный темп постоянно.
9. Постоянное внимание к техническому совершенству и качеству проектирования повышает гибкость продукта.
10. Простота — искусство минимизации лишней работы — имеет важное значение.
11. Лучшие технические и архитектурные решения создаются самоорганизующимися командами.
12. Через регулярные промежутки времени команда размышляет о том, как\
    стать более эффективной, а затем соответствующим образом настраивает и корректирует свое поведение.

### Agile - фреймворки

**Скрам (от англ. Scrum)** - фреймворк (или формат работы), который помогает людям, командам и организациям создавать ценность с помощью адаптивных решений комплексных проблем.&#x20;

Является самым популярным среди "гибких" подходов, объединяемых термином Agile.

{% hint style="info" %}
**Scrum прост для понимания,** так как содержит не так много обязательных элементов, таких как мероприятия, артефакты и зон ответственности, но **сложен для освоения в совершенстве**.
{% endhint %}

Методология Скрам делит людей на небольшие команды, которые могут без посторонней помощи разрабатывать продукт, а также самостоятельно решают как это делать.

Данный подход выгодно применять не для типовых проектов, а для новых сложных продуктов, требования к которым заранее не определены и быстро меняются под влиянием обратной связи с рынка.&#x20;

Скрам задает лишь основу для ваших процессов разработки, т.е. его можно дополнять, а его обязательные элементы реализовывать по-разному в разных ситуациях.

Очень подробно методику описали Кен Швабер и Джеф Сазерленд в своей книге по скраму. Ниже вы сможете найти ссылку на эту книгу и другие полезные материалы.

Часто скрам-команды применяют элементы Канбан-метода.

**Канбан (от англ. Kanban)** - метод, который появился как концепция в 1959 году в компании Toyota. Термин "Канбан" имеет дословный перевод: “Кан” значит видимый, визуальный, а “бан” значит карточка или доска

В IT-сфере метод Канбан как метод управления разработкой, реализует принцип "точно в срок" и способствует равномерному распределению нагрузки между сотрудниками. При данном подходе весь процесс разработки прозрачен для всех членов команды.

{% hint style="info" %}
**Разница между Канбан и SCRUM:**\
— В Канбан нет таймбоксов.\
— В Канбан задачи "больше"  в объеме, но "меньше" в количестве.\
— В Канбан оценки сроков на задачу опциональные или их нет.\
— В Канбан считается только среднее время на полную реализацию задачи, а не "скорость работы команды".&#x20;
{% endhint %}

**Основные практики Канбан-метода:**

1. Визуализируйте (канбан-доска).
2. Ограничивайте незавершенную работу.
3. Управляйте потоком работы.
4. Используйте явные правила.
5. Вводите петли обратной связи.
6. Улучшайте и эволюционируйте.

Книгку по Канбан-методу вы можете скачать в "Полезных материалах" ниже.

**SAFe (Scaled Agile Framework)** - фреймворк Agile, разработанный компанией Scaled Agile Inc. Представляет собой набор шаблонов организации и рабочих процессов, предназначенных для того, чтобы помочь предприятиям масштабировать методы бережливого и гибкого производства в больших командах.

Подробнее о данном методе можно почитать на [сайте компании](https://www.scaledagileframework.com/about/), создавшей данный agile-фреймворк.

{% hint style="success" %}
**Скрам (Scrum)** - метод предназначен для решений комплексных проблем с высоким уровнем неопределенности. Позволяет создавать решение быстро за счет коротких циклов обратной связи, а также обеспечивает высокое качество продукта в этих условиях .

**Канбан (Kanban)** - метод для управления интеллектуальной работой, для повышения эффективности связанных с этим процессов.

**SAFe** - фреймворк масштабирования, помогающий большим командам и корпорациям за счет гибких методик создавать инновационные продукты.
{% endhint %}

### Примеры внедрения Agile в компаниях:

* [Кейс от телекома: как запустить ИТ-трансформацию и не испортить карму](https://expertsouth.ru/news/keys-ot-telekoma-kak-zapustit-ittransformatsiyu-i-ne-isportit-karmu/).
* [Ускоряя «Северсталь»: суровый металлургический Agile](https://cio.osp.ru/articles/081118-Uskoryaya-Severstal-surovyy-metallurgicheskiy-Agile)
* [Гибкая эффективность: итоги Agile-трансформации Сбера](https://youtu.be/dfiZFxCsheM)
* [Ирина Андреева. Масштабирование изменений в крупной организации: как быстро набрать скорость.](https://youtu.be/tHQO_B7OyQo)
* [Agile-трансформация в банковской группе ING](https://hr-digital.ru/2017/12/28/agile-transformatsiya-v-bankovskoj-gruppe-ing/)
* Также можете глянуть Agile-трансформацию [Lego](https://agile.live/ru/lego-agile-ru/), [Microsoft](https://big-i.ru/management/korporativnyy-opyt/795946/) и [Tesla](https://www.agile-academy.com/en/organizational-development/agile-entwicklung-tesla-joe-justice/)

<details>

<summary>Дополнительный материал</summary>

* [Пять главных изменений в области ИТ для полномасштабного внедрения Agile](https://www.mckinsey.com/ru/our-insights/five-major-changes-in-it-for-full-scale-implementation-of-agile)
* [Как объяснить бабушке, что такое Agile за 15 минут с картинками](https://habr.com/ru/company/edison/blog/313410/)
* [Четыре ценности и 12 принципов Agile-управления проектами](https://www.wrike.com/ru/blog/chetyre-tsennosti-i-12-printsipov-agile-upravleniya-proektami/)
* [СОВНЕТ: руководство по компетентности профессионалов в управлении проектами классическими и гибкими методами в российских условиях](https://www.sovnet.ru/media/Main/Publication/2020-11-17/%D0%A1%D0%9E%D0%92%D0%9D%D0%95%D0%A2_Agile.pdf)
* [Кен Швабер и Джефф Сазерленд. Руководство по Scrum (книга)](https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Russian.pdf)
* [Официальное руководство по Канбан-методу (книга)](https://kanban.university/wp-content/uploads/2021/11/The-Official-Kanban-Guide_Russian_A4.pdf)
* [Agile Alliance - глобальная некоммерческая организация](https://www.agilealliance.org/)
* [Руководство тестировщика по Agile тестированию](https://telegra.ph/Rukovodstvo-testirovshchika-po-Agile-testirovaniyu-03-01)

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://qabook.gitbook.io/start/teoriya-testirovaniya/razrabotka-i-testirovanie-po-sdlc-i-stlc/agile-metodologiya.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
