Преодоление сложностей разработки продукта с помощью Agile

Опубликовано: 2020-10-01

Последнее обновление: 12 марта 2021 г.

Резкая разница между признанием незаменимости agile и непризнанием ее заключается во вспышке пандемии. Поток новых изменений, вызванных COVID-19, необратимо разрушил существующие системы и привлек внимание к способности компаний (или ее отсутствию) ориентироваться в новой реальности.

«Однако в этом сложном мире неопределенность неотделима от реальности, и, чтобы сделать события случайными, поиск козла отпущения за плохую работу — это не только бесполезное упражнение, но и безрассудство».

Кризис Covid-19, хотя и огромный, является еще одной из многих неопределенностей, с которыми бизнес должен справиться.

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

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

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

Лидеры должны распознавать изменения и быть первыми, кто сигнализирует об изменениях, применяя гибкие методы работы и телеграфируя то же самое через свое развитое общественное поведение.

«Хорошие лидеры ведут, проворные лидеры ведут с намерением служить».

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

Самые эффективные agile-лидеры — это те, кто моделирует свое новое поведение, отражающее agile-способы работы; в принятии решений, ежедневном общении и стратегиях развития. Таким образом, гибкие команды разработчиков программного обеспечения и компании проходят долгий путь, оказывая эффективные услуги своим уважаемым клиентам.

Замена вакуума в операциях совместной гибкой разработкой

Работа в силосах; щелканье за ​​партами, выполнение заранее определенных задач в одиночестве делает человека туннельным провидцем. Отмечая переход от информационных хранилищ, гибкая разработка продуктов фокусируется на сплоченном сотрудничестве путем создания кросс-функциональных команд.

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

Характеристика этих команд заложена в необходимости для сотрудников нести ответственность за свою работу и нести совместную ответственность, а не быть связанными жестко определенными рабочими ролями и фрагментарной информацией.

Ловкость-1

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

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

Выделите бесплатное общение, удовлетворенность клиентов и совместную работу за рамками процесса и настаивайте на спринтах, скрамах и тайм-боксах. Гибкость позволяет командам приносить пользу.

Квантовый скачок с DevOps: шаг вперед с Agile-методами

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

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

Конституционные изменения в контроле и управлении, бизнес-подразделениях и операционных моделях являются предпосылками для начала и продвижения DevOps.

В парадигме DevOps нерелевантные элементы управления программным обеспечением, которые когда-то служили цели компании, но теперь устарели и замедляют операции, корректируются с учетом изменчивости потребностей бизнеса.

Чтобы DevOps нашел свой ритм, должна быть симфония одновременно работающих режимов разработки программного обеспечения, корректировок управления и совместимости между различными отделами. Он должен быть направлен на простую цель сократить расстояние между планированием программного обеспечения и его выпуском, не принимая во внимание какие-либо проблемы с надежностью или качеством.

Чтобы компании могли извлечь максимальную выгоду из DevOps, они должны принять и внедрить автоматизацию, чтобы обеспечить здоровую непрерывную поставку, что приводит к быстрым выпускам программного обеспечения и итеративным улучшениям.

«Успех перехода Amazon на Agile DevOps в 2010 году значительно сократил количество простоев, что привело к экономии миллионов долларов. Он уловил преимущества процесса непрерывного развертывания, управляемого их внутренней системой под названием Apollo, которая позволила их разработчикам развертывать коды на любом из серверов в любое время. В течение года Amazon развертывала новое программное обеспечение на рабочих серверах в среднем каждые 11,6 секунды».

Качественный скачок с DevOps — это организованный постепенный процесс, который начинается с поэтапного внедрения в существующие системы. Создание цифровой адаптации с помощью пилотного проекта и последующее внедрение методов DevOps помогает принять решение и принять набор инструментов и технических механизмов.

К ярко выраженным преимуществам относятся:

  • Максимальный охват тестированием
  • Надежная и быстрая доставка программного обеспечения в любом масштабе
  • Улучшенное сотрудничество
  • Снижение затрат на доработку приводит к умножению доходов

Рано или поздно организациям придется адаптироваться к эталонным показателям, установленным их конкурентами, использующими методы DevOps.

Стандартные включения в практику гибкой разработки продуктов

Ловкость — это вечное стремление. Лучший тест на правильность аджилити — это постоянное следование его самым важным принципам:

1. Итеративный:

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

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

2. Обеспечение ценности:

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

Укрепление способности организации быстро двигаться, получить представление о результатах проекта и соответствующим образом скорректировать курс — это лишь некоторые из преимуществ, которые дает гибкая практика. Очень похоже на сборку игрушки из лего, каждый блок добавляет ценность, связанную с согласованной целью.

3. Инкрементальный:

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

4. Межфункциональные команды:

Гибкость требует межфункциональных команд, состоящих из мотивированных людей, работающих в экосистеме, которая способствует сотрудничеству, беседам лицом к лицу, доверию, коллективной ответственности и общему видению. Одно не может происходить без другого. Члены, представляющие несколько дисциплин, не могут целенаправленно работать над критически важной деятельностью, если среда не поддерживает участие. Точно так же благоприятная среда может сделать так много только в отсутствие представления различных точек зрения и опыта из междисциплинарных областей.

5. Клиенты в первую очередь:

Для предприятий крайне важно идентифицировать своих клиентов, ставить их на первое место, решать их проблемы и быть движущей силой цифровых технологий. Между переводами теряется слишком много понимания; от неудовлетворенных потребностей клиента до человека, занимающегося кодированием. Agile фокусируется на том, чтобы быть представителем клиента и на каждом маленьком этапе процесса принятия решения расставляет приоритеты в их потребностях, перспективах, мотивах и проблемах.


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

Практика, которой не следует следовать

Ловкость-3

Agility — это система практик и принципов, которые должны выполняться в унисон. Для нескольких компаний, переходящих на agile-путешествия, практически нет результатов из-за следующих факторов:

1. Сбор вишни:

Большинство компаний ищут agile, но в конечном итоге выбирают элементы, которые им удобно реализовать. Гибкость поначалу неудобна, потому что это означает выход из иерархии, разрозненности, безответственности, к которым привыкли профессионалы.

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

2. Скопируйте и вставьте Agile:

Подобно последствиям «сбора вишен», это копирование и вставка agile. Для многих компаний «Agile» — всего лишь модное словечко, и, наблюдая, как другие следуют Agile и извлекают из него выгоду, они тоже следуют за толпой. Принципы Agile те же, однако не очевидно, что то, что сработало для Spotify, сработает и для кого-то еще.

Объединять свои команды в отряды, племена и отделения без понимания автономного аспекта или его направления — проигрышное предприятие. Внедряйте Agile, но настраивайте его в соответствии с потребностями, структурой и масштабом предприятия.

3. На бумаге:

Компании, позиционирующие себя как гибкие, но не желающие вносить какие-либо фундаментальные изменения, элементарные в принципы гибкой разработки, допустили ошибку, приняв agile «на бумаге». Эти компании ненавидят основные потребности и культуру.

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

Вождение и затмение неподготовленных, неопределенность и ее переменные являются нормой. Участие в процессе гибкой разработки или партнерство с теми, у кого практики глубоко укоренились в их повседневной работе, — это единственный способ двигаться вперед, преодолевая непосредственность и последствия этих переменных.