Что такое agile? | Atlassian
Прагматичное руководство Atlassian по agile-разработке
Просмотр тем
Что такое agile?
Agile — это итеративный подход к управлению проектами и разработке программного обеспечения, который помогает командам быстрее и с меньшими проблемами поставлять ценность клиентам. Вместо того чтобы выпускать весь продукт целиком, команда, следующая принципам Agile, выполняет работу в рамках небольших, но удобных инкрементов. Требования, планы и результаты оцениваются непрерывно, благодаря чему команды могут быстро реагировать на изменения.
ЧИТАЙТЕ НИЖЕ
Темы, связанные с agile
Обучающие руководства
[ПРОДОЛЖЕНИЕ]
При использовании традиционного каскадного подхода к разработке один специалист заканчивает работу над проектом и передает эстафету следующему, самоустраняясь от участия в дальнейшем процессе. В отличие от этой модели, agile предполагает активное взаимодействие между участниками многофункциональных команд. В основе agile лежат открытое общение, совместная работа, адаптация и доверительные отношения между участниками команды. Хотя обычно за расстановку приоритетов между поставляемыми функциями отвечает руководитель проекта или владелец продукта, то, как будет выполняться работа, решает команда. Она самостоятельно выбирает, какие части работы выполнить и как разделить обязанности между участниками.
Agile не сводится к ряду собраний и конкретных приемов разработки. Agile — это группа методологий, в каждой из которых прослеживается стремление к безостановочному выполнению циклов обратной связи и непрерывному совершенствованию.
В первой версии Манифеста agile не были закреплены двухнедельные итерации или оптимальный размер команды. В нем просто были перечислены основные ценности, в центре которых были люди. Вы сами решаете, насколько строго нужно придерживаться этих ценностей вам и вашей команде. Неважно, практикуете ли вы Scrum строго по инструкции или сочетаете в работе Kanban и XP.
В чем преимущества agile?
Команды переходят на agile, чтобы быстро реагировать на изменения на рынке или отзывы клиентов и не нарушать планы, составленные на год вперед. Команда, которая осуществляет планирование по принципу достаточности и поставляет продукт часто и небольшими «порциями», может получить отзывы об изменениях и учесть их при составлении будущих планов без лишних затрат.
Дело не только в показателях. Главное — это люди. Согласно Манифесту Agile, естественное человеческое отношение при взаимодействии важнее неукоснительного следования инструкциям. Сотрудничество с клиентами и коллегами важнее стандартных договоренностей. А решение проблемы клиента важнее проработанной до мелочей документации.
Agile-команда имеет общую цель и достигает ее наиболее эффективным, по ее мнению, способом. Каждая команда устанавливает свои критерии качества, удобства пользования и готовности работы. По ним можно оценить скорость выполнения работы команды. Поначалу руководителей компаний может пугать мысль о том, чтобы доверить agile-команде такую ответственность. Однако со временем они обнаруживают, что это доверие только усиливает чувство ответственности и команда прилагает все усилия, чтобы оправдать (или превзойти) ожидания руководства.
Agile вчера, сегодня и завтра
Методология agile появилась в 2001 году, когда был издан Манифест Agile. С тех пор появилось множество agile-платформ, таких как Scrum, Kanban, бережливое производство и экстремальное программирование (XP). В основе каждой из этих платформ лежат главные принципы методологии agile: работа частыми итерациями, непрерывное обучение и обеспечение высокого качества. Scrum и XP пользуются популярностью среди команд разработчиков, а Kanban предпочитают команды, ориентированные на оказание услуг, например ИТ-отделы или отделы кадров.
Сегодня многие команды, следующие принципам agile, сочетают приемы из различных платформ, дополняя их собственными практиками. Одни команды внедряют ритуалы agile (например, регулярные стендапы, ретроспективы, ведение бэклога и т. п.), другие, например маркетинговые agile-команды, следующие принципам Манифеста Agile для маркетинга, создают новые практики agile.
В будущем для agile-команд собственная эффективность будет цениться выше, чем верность догмам. Открытость, доверие и автономия постепенно становятся ценными культурными ресурсами для компаний, которые хотят привлечь лучшие кадры и задействовать их с максимальной пользой. Опыт таких компаний подтверждает, что команды могут использовать разные подходы к agile, если они следуют фундаментальным принципам этой методологии.
Agile в компании Atlassian
Применение agile на практике должно учитывать уникальные потребности и культуру команды. В компании Atlassian нет двух команд, которые применяли бы agile одинаково.
Хотя многие наши команды работают спринтами, оценивают сложность работы в очках за истории и расставляют приоритеты в бэклогах, нас нельзя назвать фанатичными адептами Scrum, Kanban или любой другой зарегистрированной методологии. Каждая наша команда сама выбирает практики, которые могут помочь ей добиться наилучших результатов. Рекомендуем предоставить такую же свободу выбора и вашим командам.
Например, если ваша команда обрабатывает запросы на обслуживание по мере поступления, как ИТ-отдел, Kanban будет для вас идеальным решением. Но вы можете дополнить эту платформу несколькими собраниями Scrum, например сеансами демонстрации результатов для заинтересованных лиц или регулярными ретроспективами.
Чтобы правильно применять agile, нужно настроиться на непрерывное совершенствование. Экспериментируйте, пробуйте различные практики и обсуждайте их в команде. Продолжайте использовать те подходы, которые оказались полезны, и отказывайтесь от неэффективных.
Принципы использования этого сайта
Мы считаем, что каждая команда должна сама определять, как внедрять agile в свою деятельность, поэтому на этом сайте вы не найдете готовых рецептов. Здесь приведено прагматичное руководство по итеративному подходу к работе, обеспечению ценности для клиентов и реализации концепции непрерывного совершенствования. Ознакомьтесь с этим руководством, обсудите его со своей командой и внесите в рабочий процесс изменения, которые покажутся вам целесообразными.
Кроме того, на сайте есть обучающие руководства по применению этих практик в сочетании с Jira Software — нашим инструментом управления проектами для agile-команд разработчиков. Хотите создать и настроить доску Kanban? Нужно получить аналитические данные по скорости работы команды? Всю необходимую информацию вы найдете в наших обучающих материалах.
Вы на правильном пути. Вперед, к вершинам!
Что такое Agile простыми словами?
Agile — одна из наиболее активно используемых методологий разработки программного обеспечения. Методика позволяет проектным группам адаптироваться к изменениям быстрее и проще. Ответить на вопрос «что такое Agile?» простыми словами можно так: это пошаговый подход как к разработке софта, так и к управлению проектами.
Характеристики, основные принципы
Философию Agile можно описать как набор принципов, поощряющих гибкость, адаптируемость, коммуникацию. Основные характеристики лаконично отражены в так называемом манифесте из четырех постулатов.
1. Люди, взаимодействие между ними, важнее процессов.
Именно команда удовлетворяет запросы заказчика, управляет процессами. Поэтому Agile ценит коммуникации выше, чем рабочие процессы. Как только регламенты, схемы, инструкции занимают первое место, персонал начинает уделять больше времени следованию документации, а не удовлетворению потребностей тех, кто оплачивает работу.
2. Рабочее программное обеспечение важнее документации.
Аналоги Agile предусматривают большое количество документов, сопровождающих проектную деятельность. Иногда основные задержки связаны именно с необходимостью задокументировать каждый шаг. Agile-подход не избавляет от необходимости оформления бумаг. Но методика подразумевает создание понятных инструкций, по которым каждый работник сможет быстро узнать над чем ему нужно работать. Если созданию документов уделяется столько же времени, сколько работе над предметом договора, необходимо пересмотреть документооборот.
3. Постоянное взаимодействие с клиентами вместо переговоров до заключения контракта.
Большинство методов управления проектами предусматривает активное взаимодействие с контрагентом, составление технического задания до заключения договора. Затем команда работает и возвращается к конечному пользователю с уже готовым продуктом.
Agile использует другой метод, включающий сотрудничество с клиентами в процессе работы. Это упрощает внесение любых изменений, сокращает общие сроки реализации задачи.
4. Внесение изменений вместо строгого следования плану.
Традиционные подходы к разработке программного обеспечения считали изменения потерей, которую стоит избегать любой ценой. Разработчики уделяли много времени составлению подробного технического задания, инструкций, следуя которым можно было достичь желаемого итога. Любые изменения нивелировали затраченные усилия. Аджайл же переносит внимание персонала с теории. Команда изначально готовится работать в условиях постоянных изменений.
Стоит рассматривать Agile ценности как философию, средство для достижения цели, набор правил, которым нужно следовать.
Нюансы внедрения
Главная идея Agile заключается в итеративном, пошаговом прогрессе. Лучший способ внедрить методологию во всей организации: поэкспериментировать над одной небольшой задачей, собрать замечания, обратную связь от участников. Хорошо если владельцем продукта будет сама компания, а не внешний клиент. После исправления ошибок можно масштабировать подход. Также необходимо подобрать подходящие инструменты управления проектами. Чаще всего специалисты используют scrum, канбан доски. Главное строго следовать принципам Agile, не пытаться отступать от принятого направления даже при возникновении проблем.
Ключевым требованием внедрения является ретроспектива. Участникам команды придется постоянно возвращаться к уже завершенным стадиям, понять какие инструменты сработали, какие — нет, а затем вносить улучшения. Главное, чтобы в обсуждении участвовали все сотрудники. Менеджер-владелец продукта же должен принимать окончательное решение.
Какие вопросы решает методика?
Agile практики в своей работе руководствуются двенадцатью принципами гибкого подхода к разработке софта. Специалист, который знает и активно их применяет, может решить все возникшие проблемы, устранить потенциальные риски.
- Удовлетворять запросы рынка за счет своевременной, непрерывной работы над продуктом.
- Не сопротивляться постоянным изменениям.
- Концентрироваться на процессе разработки программного обеспечения, его качестве, а не планировании.
- Активно взаимодействовать с получателем продукта должны не только руководители, но и рядовые программисты.
- Обеспечивать надлежащую рабочую среду, моральную поддержку команде разработчиков, работать над системой мотивации.
- Если у продукта только один автор, то он должен делиться опытом.
- Отслеживать уровень прогресса выполнения задач необходимо по измеряемым критериям.
- Постоянно развиваться. Даже если члены команды прошли базовый курс обучения, нужно периодически обновлять знания в сфере проектного менеджмента.
- Тратить ресурсы не только на техническое совершенство, но и уделять время дизайну.
- Упрощать структуру внутрипроектных коммуникаций, если это возможно.
- Поощрять самоконтроль, самоорганизацию исполнителей.
- Обеспечивать устойчивое многоуровневое развитие.
Agile-система — это возможность вывести работу организации на новый уровень.
Плюсы и минусы использования гибкой методологии
После изучения информации, может показаться, что Agile-методы идеально подходят для разных задач. Действительно у системы есть множество преимуществ:
- заказчики, руководители разных уровней, имеют представление о ходе выполнения задачи на всех стадиях;
- можно рассчитывать, что плательщик получит работающую программу или приложение, которое будет полностью соответствовать его ожиданиям;
- разработчики позитивно принимают постоянно меняющиеся требования;
- нет необходимости полностью переделывать всю работу «с нуля»;
- постоянное, доверительное общение с заказчиком, позволяет быстро получать ответы на возникшие вопросы.
Но у метода есть определенные недостатки. Хороший руководитель всегда должен выбирать оптимальный подход под каждую задачу. Иногда Agile-ценности мешают делу. Например, избегание подробного документирования процессов может закончиться тем, что члены команды начнут использовать разные инструменты, не будут знать, «окупятся» ли затраченные усилия до завершения текущего цикла развития проекта.
Подай заявку на обучение
Я даю согласие на обработку персональных данных, согласен на получение информационных рассылок от Университета «Синергия» и соглашаюсь c политикой конфиденциальности.
Как определить Agile в самых простых терминах
Agile — это простая и гениальная концепция, основанная на постоянном постепенном улучшении посредством небольших и частых выпусков. Вы видите Agile в работе каждый день, и Мануэль Палачук знакомит вас с одним хорошо известным примером, когда он начинает объяснять его ценность для ИТ-обслуживания и поддержки.
к Мануэль Палачук
10 мая 2021 г.
В ближайшие недели мы собираемся изучить, как принципы Agile можно применить к ИТ-сервису. В этой первой статье мы дадим базовый обзор самой концепции Agile, особенно потому, что эта простая концепция часто усложняется теми, кто ее придерживается.
Общие принципы Agile доступны для интерпретации любым и применимы к каждому. Проще говоря, Agile просто означает постоянное постепенное улучшение посредством небольших и частых выпусков.
Термин Agile чаще всего ассоциируется с разработкой программного обеспечения как с методологией управления проектами. Чтобы было предельно ясно, я собираюсь использовать пример Agile в действии при разработке смартфона.
Вот как это работает:
Кому-то приходит в голову идея нового телефона, и он решает поставить в это новое устройство здоровенный компьютерный чип. Им нужна операционная система, поэтому начинается проект по созданию нового программного обеспечения. Команда перечисляет все основы, необходимые для того, чтобы эта штука заработала; попутно они собирают множество идей для крутых фич, и формально они называются задачами.
Затем команда проводит так называемое совещание по планированию спринта. При планировании спринта они сортируют и расставляют приоритеты по всем этим вопросам. Проблемы сгруппированы в так называемые спринты (короткие прогоны), которые сосредоточены на определенной группе задач.
Один спринт содержит все задачи, которые необходимо выполнить только для того, чтобы этот новый телефон мог совершать и принимать вызовы. Другой содержит все интересные функции, которые заставят потенциальных клиентов захотеть приобрести один из этих телефонов. И еще один спринт содержит функции, которые будет немного сложнее реализовать, но, безусловно, они должны быть включены в ближайшее время. Первоначальное планирование спринта дает первые несколько спринтов, которые, когда они будут завершены, позволят выпустить работающий телефон с новыми интересными функциями, которые заставят пользователей захотеть иметь его.
После того, как порядок спринта установлен, команда начинает работу над первым журналом спринта, в котором есть все, что необходимо для работы этого телефона. У них есть разумный крайний срок, и они проводят ежедневные или еженедельные встречи по схватке, чтобы убедиться, что они выполняют задачу и вовремя. Надеюсь, в установленный срок или около него они выпустят версию Cool Phone 0.9. Да — Бета!
Теперь они начинают работать над бэклогом следующего спринта, в котором будут добавлены все те классные функции, которые заставят потенциальных клиентов захотеть приобрести один из этих телефонов. Наша героическая команда работает над отставанием спринта, чтобы завершить список функций к установленному сроку, и теперь они представляют версию Cool Phone 1.0. Ууууу! Мы выводим эту вещь на рынок!
Покупатель, ставший общедоступным, покупает Cool Phone версии 1.0, потому что он должен быть у него сейчас! Они включают Cool Phone и начинают им пользоваться. Все хорошо, пока они не обнаруживают проблему с тем, как телефон автоматически набирает случайных людей, когда они кладут его в карман. Таким образом, клиент заходит на веб-сайт производителя (или использует функцию «Сообщить об ошибке» на телефоне) и сообщает об ошибке, связанной с неправильным поведением этого телефона.
Команда проекта добавляет эту новую проблему (ошибку) в журнал невыполненных работ и оценивает ее как важную. Во время планирования следующего спринта команда решает, что для конечного пользователя (и репутации производителя) будет полезно убедиться, что эта проблема (ошибка) будет устранена в ближайшее время, поэтому они помещают ее в бэклог предстоящего спринта.
Весь жизненный цикл Agile-проекта повторяется по мере того, как команда переходит к работе над новым запланированным спринтом. Когда новый спринт завершен, выпускается последняя версия Cool Phone Version 1.1. Клиент получает сообщение на свой телефон: «На ваш телефон установлено обновление. Он добавит эти интересные функции и исправит эти ошибки. Нажмите здесь, чтобы обновить сейчас». Клиент нажимает, чтобы получить обновление, новая версия устанавливается, телефон перезагружается, и в телефоне больше нет проблем с карманным набором номера. Со временем таким же образом создается и выпускается больше обновлений.
Вкратце это Agile.
Самое замечательное в Agile то, что с момента его зарождения он находил новые способы помочь людям разрабатывать и выпускать не только программное обеспечение, но и сами продукты, услуги, связанные с этими продуктами, и даже бизнес-стратегию.
В следующей статье я объясню, как Agile ускоряет предоставление услуг, и мы рассмотрим некоторые ключевые концепции и компоненты, благодаря которым все это работает.
Мануэль Палачук является автором книги «Переход на следующий уровень: план, как вывести вас и ваш бизнес на вершину», и он работает над своей следующей книгой «Предоставление услуг по гибкой технологии — окончательный секрет работы». Поток. Он имеет более чем 30-летний опыт работы в сфере бизнеса, управления и обучения в компьютерной и электронной отраслях. Он владел несколькими успешными предприятиями, руководил несколькими успешными компаниями, предоставляющими услуги в области ИТ и MSP, а также тренировал или наставлял многих других по всему миру. Мануэль является идейным лидером в области Agile применительно к бизнес-стратегии и процессам предоставления услуг. Мануэль является известным автором, докладчиком и тренером по этим темам на отраслевых конференциях и в сообществе ИТ-консультантов для малого и среднего бизнеса. Он имеет ученые степени в области технологии электротехники и технологии автоматизированного производства.
Теги: supportworld, культура, agile
- Понимание зрелости бизнеса
- Как Agile Metrics может ускорить предоставление услуг и удовлетворенность клиентов
Комментарии:
Что такое Agile с точки зрения непрофессионала?
Перейти к основному содержанию
Иша.
Иша.
КАЭ@Амазонка | автоматизация API | Питон | PyTest | Линукс | SQL | АМС | Кипарис | Javascript
Опубликовано 1 марта 2017 г.
+ Подписаться
Привет, ребята,
Я являюсь частью методологии Agile уже 6 месяцев, поэтому я хотел бы поделиться своим опытом и терминами, связанными с Agile:
Итак, первый вопрос:
Что такое Agile?
Agile — это ограниченный по времени итеративный подход, при котором внесение изменений в требования легко и может быть выполнено в середине жизненного цикла разработки программного обеспечения. Здесь функции разбиты на небольшие пользовательские истории. На основе их приоритетов они берутся в определенный спринт. Итак, следующий термин в Agile — это Sprint.
Что такое спринт?
Выпуск продукта разбит на спринты. Например: если релиз рассчитан на 2 месяца, то он имеет 3-4 спринта. 1 спринт обычно длится 15 дней.
Первый спринт обычно занимает мало времени, поэтому в нем рассматриваются небольшие истории. Затем можно рассмотреть больше историй в зависимости от приоритетов и времени спринта. В спринтах также будут уровни тестирования, так как есть «n» спринтов, поэтому первые «n-1» спринты будут частью фазы интеграции, а «n-й» спринт будет частью фазы тестирования системной интеграции.
Следующая часть Agile — кто все члены Agile-команды:
- Scrum Master (SM): Облегчает Agile-процесс и ведет все встречи. Следит за тем, чтобы между членами команды не было пробелов в общении. И устранить препятствия, если таковые имеются.
- Владелец продукта (PO): Тот, кто обладает знаниями и опытом работы с продуктом в целом, назначается PO. Он / она выясняет любые сомнения, связанные с требованием, с бизнесом и передает это команде.
- Разработчики : Все остальные члены команды, независимо от того, являются ли они тестировщиками, бизнес-аналитиками или разработчиками, назначаются разработчиками. Они работают сообща и выполняют требования.
Еще одна важная часть Agile — встречи и обсуждения.
Проводится много встреч, чтобы не возникало сомнений в требовании и сохранялась прозрачность между клиентом и командой. Встречи, такие как:
- Уточнение невыполненной работы: Обсуждение историй, которые будут взяты в следующем спринте, и требуется ли какой-либо вклад от клиента.
- Собрание стендап : Ежедневное собрание продолжительностью 15 минут, на котором каждый член команды сообщает свой статус, в том числе о том, что происходит в настоящее время, что произошло вчера, что мы планируем сделать, а также о любых препятствиях или проблемах.
- Обзор спринта : Здесь представлены демонстрации всех требований, и если заказ на поставку одобряет демонстрацию, она помечается как выполненная.
- Ретроспектива спринта : Здесь мы обсуждаем, что получилось хорошо, что пошло не так, области улучшения.