Рубрики
Uncategorized

Как использовать инженерные метрики DORA для улучшения вашей команды DEV

Объективные данные для измерения разработки программного обеспечения здесь, и оно здесь, чтобы остаться. В течение долгого времени … с меткой DevOps, GIT, мониторинг, управления.

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

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

Ну, я бы продолжал утверждать, что это невозможно сделать. Но, поскольку рост инструментов, таких как GIT, JIRA и другие инструменты управления проектами, стало ясно, что данные должны позволить нам получить более близкий, более управляемый данными, что происходит внутри проектов разработки программного обеспечения. Эти данные просто должны были быть раскрыты.

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

Четыре инженерных показателя DORA:

  1. Частота развертывания

  2. Среднее время выполнения изменений

  3. Среднее время для восстановления (MTTR)

  4. Изменить частоту отказов

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

Эти четыре инженерные показатели DORA предназначены для того, чтобы позволить разработчикам программного обеспечения согласовать свою работу против целей бизнеса. Они стали стандартным способом для CTO и VPS Engineering, чтобы получить обзор высокого уровня того, как работают их организации. Следив за метриками DORA и организуя их работу по улучшению их улучшения, команды разработчиков могут гарантировать, что они делают правильные вещи, чтобы перемещать свои проекты, и, что более важно, их бизнес, вперед.

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

Итак, давайте посмотрим на эти четыре ключевых мер.

Частота развертывания

Что это?

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

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

Почему это важно

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

Как это рассчитывается?

Он подходит для общего количества развертываний, которые организация делает за один день. Как уже отмечалось, определение «развертывания» может варьироваться между организациями. Этот показатель может быть автоматизирован, если команда имеет инструмент непрерывной интеграции/непрерывной доставки (CI/CD), который обеспечивает API в свою деятельность.

Как это улучшить?

Если вы хотите улучшить частоту развертывания, вы должны инвестировать в:

  • Улучшение автоматического тестового покрытия

  • Интеграция с инструментами CI/CD

  • Автоматизация фазы проверки выпуска и процесса выпуска

  • Сокращение времени восстановления ошибок при производстве

Среднее время выполнения изменений

Что это?

Среднее время выполнения изменений — это среднее время, которое он требует от кода, предназначенного для этого кода, выпущенного в производство.

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

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

Почему это важно

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

Как это рассчитывается?

Каждый проект измеряется от начала до конца, и в среднем рассчитывается среднее время.

Как это улучшить?

Этот показатель можно улучшить:

  • Добавление автоматизации в процесс развертывания

  • Обеспечение того, чтобы процесс CI/CD был максимально эффективным

  • Разбить проекты на более мелкие и более управляемые куски

  • Создать эффективный процесс проверки кода

Среднее время для восстановления (MTTR)

Что это?

Этот показатель измеряет среднее время, необходимое команде для восстановления после сбоя в системе.

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

Почему это важно

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

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

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

Как это рассчитывается?

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

Как это улучшить?

MTTR может быть улучшен:

  • Создание системы CI/CD, которая быстро сообщает об отказе

  • Убедитесь, что существует процесс для немедленных действий по сбоям

  • Приоритет восстановлению от неудачи по всем другим задачам

  • Улучшить время развертывания

Изменить частоту отказов

Что это?

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

Почему это важно

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

Как это рассчитывается?

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

Как это улучшить?

Изменение скорости отказов улучшается, когда вы:

  • Убедитесь, что весь новый код покрывается автоматическими модульными тестами

  • Улучшить автоматическое тестирование как часть вашего процесса непрерывной интеграции

  • Сделайте тщательные и полные обзоры кода, чтобы помочь предотвратить введенные проблемы в производство

Преимущества отслеживания метрик DORA

Принятие решения

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

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

Поставка стоимости

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

Добродетельный цикл

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

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

LineArb помогает измерять и улучшать инженерные метрики DORA

Метрики DORA важны, и LineArb позволяет легко отслеживать. Мы даем вам метрики Dora прямо из коробки, которую можно легко отобразить и отслеживать.

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

В дополнение к самим показателям DORA LineArb может отслеживать другие показатели, которые могут помочь повысить производительность вашей организации.

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

Отслеживайте Dora Engineering Metrics в вашем собственном хранилище кода. Нажмите здесь, чтобы начать бесплатно И посмотрите, как ваше велосипедное время падает!

Выходить за рамки

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

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

Время цикла делится на четыре подраздела:

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

  2. Время получения запроса — Это время между запросом на притяжение, и когда начинается обзор этого запроса на привлечение

  3. Время просмотра запроса вытягивания — время между началом проверки запроса на вытягивание и объединенным кодом

  4. Развернуть время — Время развертывания — это продолжительность между слиянием кода и тем, что код фактически развернут в производстве.

Улучшение времени цикла имеет ряд преимуществ:

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

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

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

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

Рабочий улучшает метрики DORA

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

Рабочий является функцией, предоставленной LineArb, которая может оказывать радикальное, положительное влияние на сокращение времени простоя и, таким образом, улучшить ваши метрики DORA. Уведомляя членов вашей команды о событиях репозитория, это гарантирует, что команда сразу узнает о компонентах времени цикла (например, время выбора запроса и время обзора запроса) и позволяет им реагировать более своевременно.

Клиенты LineArb обычно сообщают больше о том, что на 50% сокращение Cycletime за первые четыре месяца использования рабочих.

Мера для успеха

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

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

Зарегистрируйтесь на Linearb бесплатно Cегодня.

Если вы еще не слышали, Dev Treamted Hosting Взаимодействовать : Интерактивная, управляемая сообществом цифровую конференцию, которая проходит 30 сентября. Разработанный инженерными лидерами, для инженерных лидеров, Interact будет включать 10 докладчиков, 100 -х инженеров и инженерных лидеров, а также совершенно бесплатный.

Если вы еще не присоединились к лучшему разборчику разработчика, Wyd?

Слушай, я знаю, мы много говорим об этом Но мы любим наше сообщество Discord Discord. С более чем 1500 членами, DEV прервало сообщество Discord, является лучшим местом для инженерных лидеров, чтобы вести ежедневные разговоры. Продавцы не допускаются. Присоединяйтесь к сообществу >>

Первоначально опубликовано в https://linearb.io 17 июня 2021 года.

Оригинал: «https://dev.to/linearb/how-to-use-dora-engineering-metrics-to-improve-your-dev-team-1hkc»