Измерване на успеха на DevOps в предприятието с DORA Metrics
Дата: 16.10.2023
Съдържание:
Цифровата трансформация превърна почти всички бизнеси в софтуерни предприятия, като им даде възможност да предоставят най-съвременни решения, за да отговорят на променящите се пазарни нужди. Разработването на софтуер обаче е сложен процес, включващ множество DevOps екипи, които работят в различни силози по голям проект. Тези екипи могат да бъдат разпръснати по целия свят, поради което е трудно да се проследи кой какво прави и кога, какво забавя процеса, къде са блокиращите фактори и други ключови показатели.
Измерването на напредъка на DevOps екипите е от съществено значение, за да се разбере как се справят те и колко ефективно могат да доставят приложения. В края на краищата, без оценка на изпълнението не можете да разберете къде да обърнете внимание и какво да итерирате, за да осигурите ефективно обслужване на клиентите.
Именно тук влизат в действие метриките DORA за DevOps, които осигуряват цялостна рамка за измерване на успеха на DevOps в предприятията. Като използват тези метрики, организациите могат да получат представа за своите силни и слаби страни, да модернизират операциите си и непрекъснато да подобряват своите DevOps практики.
Превъртете надолу, за да разберете какво представляват DORA (DevOps Research and Assessment) метриките и как те помагат на компаниите да постигнат своята DevOps философия за бързина и стабилност.
DORA метрики за DevOps: кратък преглед
Използвайки данните от над 32 000 професионалисти и прозренията на 7-годишни изследвания, отделът за DevOps изследвания на Google Cloud Platform, екипът на DORA, публикува доклад, който описва петте DORA метрики за DevOps. Тези метрики помагат да се идентифицират най-ефективните начини за предоставяне на софтуер и да се измери ефективността на CI/CD тръбопроводите. С помощта на DORA метриките за измерване на успеха на DevOps организациите могат да идентифицират елитни, високо, средно и ниско ефективни екипи и съответно да модифицират операциите, за да увеличат производителността и резултатите от услугите. Нека се потопим във всяка метрика, за да открием какво могат да разкрият за DevOps екипа и защо са полезни при управлението на потока на стойността.
Честота на внедряване
Честотата на внедряване (DF) определя колко често промените в кода се внедряват в продукцията в зависимост от законовите ограничения или необходимостта от актуализации. Честотата на разгръщане на кода може да варира от няколко пъти на ден до веднъж годишно. Например мобилните приложения, изискващи от потребителите да актуализират последната версия, обикновено пускат 4-6 актуализации годишно, докато решението SaaS може да внедрява промени няколко пъти на ден.
Въпрос, на който отговаря | Елитен DevOps екип | Висок DevOps екип | Среден DevOps екип | Нисък DevOps екип |
Колко често бизнесът ви изисква промени? | При поискване (няколко пъти на ден) | От веднъж на ден до веднъж на седмица | От веднъж на седмица до веднъж на месец | От веднъж на месец до понякога на година. |
Време за промяна
Времето за изпълнение на промените (LTFC) измерва скоростта на доставка на софтуер, като определя времето, необходимо за пускане на актуализация след внедряването на кода в производството. Колкото по-ниско е времето за LTC за промени, толкова по-ефективно вашите DevOps специалисти могат да разгърнат кода в производството. LTC не само измерва времето, необходимо за внедряване на промените, но също така определя колко отзивчив е DevOps екипът, за да отговори на постоянно променящите се изисквания на потребителите.
Въпрос, на който отговаря | Елитен DevOps екип | Висок DevOps екип | Среден DevOps екип | Нисък DevOps екип |
Колко време е необходимо, за да се премине от ангажирането с кода до внедряването му в производството? | По-малко от един ден | От един ден до една седмица | От една седмица до един месец | От един месец до шест месеца |
Средно време за възстановяване
Средното време за възстановяване (MTTR) е една от най-ефективните метрики на софтуера DORA, която определя средния период от време между докладването на грешка и момента, в който грешката е отстранена. Тази метрика дава възможност на организациите да оценяват стабилността на софтуера и гъвкавостта на екипа в условията на предизвикателство. В днешния забързан свят тази DORA метрика за DevOps е от съществено значение за предприятията, тъй като те не могат да си позволят тежки грешки в производството за по-дълъг период от време.
Въпрос, на който отговаря | Елитен DevOps екип | Висок DevOps екип | Среден DevOps екип | Нисък DevOps екип |
Колко време отнема възстановяването на услугата или отстраняването на проблеми при възникване на смущения, като например прекъсване? | По-малко от час | От няколко часа до един ден | От един ден до една седмица | От една седмица до един месец |
Промяна на процента на неуспешните опити
Процентът на неуспешни промени (CFR) е ценна метрика, която отчита процента на внедряванията в производството, които водят до сериозни грешки, отпадане или друг вид производствен неуспех, който изисква незабавно внимание. Когато се проследява във времето, тази метрика на DORA предлага чудесна представа за това колко време се изразходва за разрешаване на грешки и предоставяне на нов код, което помага за ефективното разпределение на ресурсите.
Въпрос, на който отговаря | Елитен DevOps екип | Висок DevOps екип | Среден DevOps екип | Нисък DevOps екип |
Какъв процент от внедряването води до неуспех в производството? | 0-15% | 16-30% | 30-45% | 46-60% |
Надеждност
През 2021 г. екипът на DORA добави нова метрика – „Надеждност“ към списъка, която помага на екипа на DevOps да постигне целите за надеждност на софтуера, с който работи. В по-широк смисъл тази метрика измерва доколко можете да отговорите на очакванията на потребителите, като например наличност, латентност, мащабируемост и производителност.
Надеждността десн няма дефинирани ниски, средни, високи или елитни клъстери. Начинът, по който DevOps екипът може да използва тази метрика, варира значително в зависимост от показателите за ниво на обслужване или целите на ниво обслужване (SLI/SLO).
Използвайте тези DORA метрики за DevOps, за да анализирате ефективността на вашата разработка на софтуер, конвейерите за доставка и работата на вашия DevOps екип, разпределен по целия свят.
Значение на DORA метриките за DevOps екипите
DORA метриките за DevOps предлагат редица предимства на организациите, като съгласуват техните цели за разработка с бизнес целите. За продуктовите мениджъри тези метрики помагат да получат представа за това как и кога DevOps екипът може да отговори на нуждите на клиентите. За инженерите и ръководителите внедряването на DORA метрики рационализира процесите на разработване и доставка на софтуер, като ги прави по-видими и осезаеми.
Нека се потопим по-дълбоко, за да разберем най-значителните ползи от DORA метриките.
Повишена стойност
Управлението на потока на стойността е неразделна част от разработването на софтуер. А DORA софтуерните метрики помагат на компаниите да използват принципите на управление на потока на стойността, за да преодолеят пропастта между усилията за разработка и бизнес целите. По този начин, след като предприятията използват DORA метрики за DevOps, те изпитват повишена бизнес стойност с течение на времето.
Непрекъснато подобрение
Компаниите, които използват петте основни DORA метрики за DevOps, изпитват повишена скорост и ефективност в процесите на доставка на софтуер. Тези метрики дават възможност на DevOps екипите да проследяват своето представяне, да наблюдават постиженията си, да определят текущата си позиция и да определят основните мерки за достигане на по-високи нива.
Подобрено вземане на решения
Измерването на ефективността на DevOps с помощта на DORA метриките позволява на лидерите да откроят основните аспекти, да предложат подобрения, да повишат ефективността и да вземат информирани решения. Освен това то помага да се идентифицират тесните места, които влошават представянето на екипа, и да се фокусира върху подобренията, за да се внесат положителни промени в процеса. Компаниите, които рационализират своя процес на разработване и доставка на софтуер, обикновено са по-успешни в дългосрочен план.
Метрики на DORA за DevOps: предизвикателства и съображения
Въпреки че DORA метриките в DevOps на предприятието са отличен подход за измерване и подобряване на ефективността, самата практика има редица предизвикателства. Ето някои съществени предизвикателства и съображения на DORA метриките в DevOps, които трябва да се вземат предвид:
Разпръснати данни
Данните са разпръснати в различни източници в ИТ ландшафта, което прави подхода към DORA метриките плашещ. За да се визуализират ясно данните, DORA метриките трябва да се съберат на едно място.
Събиране на данни
Друго предизвикателство при внедряването на DORA метрики е събирането и маркирането на данни по такъв начин, че екипът ви да има лесен достъп до тях. DORA обаче побира изключително само данни в суров формат.
Трансформиране на данни
Трансформирането на данни е свързано с комбиниране и прехвърляне на данни в измерими единици. Неправилното събиране на данни е основен фактор за успешното внедряване на метриките на DORA. Екипът на DevOps трябва да събира и проследява данните ефективно, за да гарантира, че DORA метриките дават точни резултати.
Скорост и стабилност
Резултатът, генериран от всяка метрика, трябва да бъде контекстуализиран. Обмислете значението, което стои зад всяка метрика, и оценете начините за подобряване на тяхната ефективност. Например, CFR може да показва неадекватен контрол на качеството, докато DF не подсказва нищо за качеството на продукта. Това е така, защото CFR е метрика за качество, а DF е метрика за скорост. Следователно оценката на всички аспекти – качество и скорост – е наложителна при вземането на решение.
Как да подобрите показателите си за DORA: Най-добри практики
В сложната сфера на разработката на софтуер и операциите, изпитването на предизвикателства е обичайна практика, а измерването на ефективността на DevOps с помощта на DORA метрики не е изключение. Добрата новина е, че за всяко възникнало предизвикателство има решение. Преодоляването на предизвикателствата, свързани с DORA метриките за DevOps, силно зависи от процеса на разработване на софтуер и бизнес контекста.
Ето една таблица, демонстрираща техниките, които можете да предприемете, за да разгърнете пълния потенциал на DORA метриките, за да насърчите културата на непрекъснато усъвършенстване и да издигнете принципите на DevOps до безпрецедентни висоти.
DORA DevOps метрики | Най-добра практика 1 | Най-добра практика 2 |
Подобряване на честотата на разгръщане | Намаляване на размера на партидите от промени | Внедряване на автоматизиран конвейер за непрекъсната доставка |
Подобряване на времето за изпълнение на промените | Премахване на силозите и приемане на междуфункционални екипи | Разделяне на проектите на по-малки и по-автономни области |
Подобряване на средното време за възстановяване | Въвличане на разработчиците в производствените промени | Подобряване на стратегията за автоматизирано тестване и осигуряване на качеството |
Подобряване на процента на неуспешни промени | Подобряване на покритието на автоматизираните тестове | Маркиране на функции |
Често задавани въпроси
Q. Какво представляват DORA метриките?
A. DORA метриките са една от най-популярните практики, използвани от организациите, за да измерват представянето на своите DevOps екипи и да разберат дали те са „ниско представящи се“, „средно представящи се“, „високо представящи се“ или „елитни представящи се“. Петте най-значими DORA метрики са: честота на внедряване (DF), време за изпълнение на промените (LT), средно време за възстановяване (MTTR), честота на неуспешни промени (CFR) и надеждност.
Q. Как се измерват показателите DORA?
A. За да измерват DORA метриките за DevOps, организациите трябва да следват изброените по-долу стъпки:
Да събират данни за всичките пет метрики – честота на внедряване, време за изпълнение на промените, средно време за възстановяване и честота на неуспешни промени.
- Използвайте събраните данни, за да изчислите всяка метрика.
- Оценявайте всяка метрика, за да измерите ефективността на DevOps и да идентифицирате областите за подобрение.
- Въведете промени във вашите DevOps процеси.
- Непрекъснато наблюдавайте и оценявайте своите DORA метрики, за да проследявате напредъка.
- Актуализирайте стратегиите, когато и както е необходимо.