Det är klokt att ha ett mål i sikte vid en stor förändring av arbetssätt och det gäller även för devops-satsningar för utveckling och drift av mjukvara. Devops är enkelt uttryckt ett arbetssätt som för samman de traditionellt åtskilda uppgifterna att utveckla och sköta drift av mjukvara. Det sker ofta genom att samma personer sköter de båda uppgifterna.

Ett sätt att definiera mål är att formulera nyckeltal, eller mätetal. Generellt är det smart att formulera ett fåtal lättbegripliga nyckeltal för att snabbt kunna visa utfallet av en förändring, förhoppningsvis att det blivit bättre. På sikt finns det plats för flera nyckeltal.

Nyckeltalen kan inte bara visa på ekonomiska vinster, samt effektivitets- och kvalitetsvinster, utan även bidra till förståelse för de kulturförändringar som ofta är nödvändiga under satsningar på devops.

Läs också: Svårt att hitta studenter till nischade it-utbildningar

Infoworld beskriver 15 nyckeltal för devops, indelade i fyra kategorier:

Nyckeltal för affären

Devops kan både påverka lönsamhet direkt och möjligheten att uppfylla mer strategiska affärsmål. Ett enkelt exempel är ett e-handelsföretag som har en långsam och instabil e-tjänst. En satsning på devops ger i bästa fall bättre möjligheter att förbättra tjänsten.

Det finns olika typer av affärsrelaterade nyckeltal, till exempel de följande:

  • Finansiella nyckeltal, alltså hur intäkter och kostnader påverkas,
  • Hur en tjänst eller applikation används.
  • Hur nöjda, eller missnöjda, användare är.

Om man mäter sådana här saker går det att se om en devops-satsning påverkar affärsmålen.
 

Nyckeltal för vidareutveckling

Utveckling av ny mjukvara i all ära, men det är möjligheterna att förändra och förbättra en mjukvara som finns i drift som avgör hur lyckad den är i det långa loppet. En vanlig anledning att satsa på devops är att kunna leverera nya versioner av mjukvaror oftare, med fler nya funktioner, färre fel och smidigare drift.

Det görs med hjälp av automatisering, även av tester, och genom byggandet av så kallade pipelines. En pipelines kan ses som en processbeskrivning för en mjukvaras hela livscykel, från kodning till drift, med inbyggt verktygsstöd.

En viktig aspekt är hur snabbt det går att få i gång de olika kompletterande mjukvaror som behövs, så väl under utveckling och test, som under drift. Exempel på sådana är databaser. En annan aspekt är tiden det tar att få ut mindre ändringar, så kallade patchar.

Här är olika typer av nyckeltal för vidareutveckling:
 
  • Tid för att genomföra en ändring, från begäran av ändringen till att den har satts i drift.
  • Antal funktioner som släpps varje kvartal (eller annan tidsperiod). Affärschefer tänker ofta i termer av kvartal, så de borde ha lätt att förstå ett nyckeltal som gäller per kvartal. Tänk på att formulera en vettig definition av ”funktion”. Vitsen med det här nyckeltalet är så klart att visa att utvecklarna får mer gjort.
  • Frekvens för driftsättning (deployment). Hur ofta sätts ny funktionalitet i drift? Varje kvartal, månad, vecka, dag eller timme? Tack vare den automatisering som ingår i devopskonceptet går det att öka frekvensen.
  • Automatisering av testfall. Man kan till exempel mäta antal testfall som formulerats, andelen av dem som är automatiserade och hur lång tid det tar att köra tester. Det går vidare att mäta hur stor andel av funktionaliteten som täcks av testfall och hur stora andel av ”körningsvägar” och gränssnitt för mjukvaror som det har definierats tester för. Ju mer snabb automatisering, desto fler kontinuerliga tester kan byggas in i en pipeline.
  • Antal upptäckta programfel under drift. Man kan mäta absoluta antal eller antal per driftsättning.
 
Läs också: Enorma skillnader på utvecklares produktivitet – så mycket snabbare är devops
 

Nyckeltal för drift


Det är inte så stor vits med devops om inte driften av mjukvarorna funkar. Här är nyckeltal för att mäta det:
 
  • Medeltid för återställning (fixa problem) och medeltid för att upptäcka problem. Alla företag som använder it-lösningar stöter på problem, det viktiga är hur snabbt problemen kan upptäckas och åtgärdas. Värdena kan förbättras med automatiska larm, automatisk loggning och fastställda processer för att hantera problem.
  • Nertid. Det kan vara svårt att definiera hur nertid ska mätas. Ett sätt är att mäta tiden som anställda, kunder och andra användare råkar ut för tekniska problem som försvårar för dem. Det kan innebära att man mäter både planerade och oplanerade driftsstopp, dåliga prestanda, förseningar i hantering och när arbetsflöden påverkas negativt.
  • Teknisk skuld, det vill säga att dåligt genomförda lösningar medför merarbete i framtiden. Det inträffar till exempel när man löser akuta problem temporärt och sedan inte ordnar en ordentlig lösning av problemet. Man kan till exempel mäta hur stor del av den tekniska skulden som åtgärdas. Med hjälp av automatisering bör den tekniska skulden kunna minskas.
  • Kostnadsbesparingar som kommer sig av devops. Ofta tack vare automatisering, till exempel för att ta ner mjukvara som inte används. Nyckelaktiviteter för att uppnå besparingar är att ha en effektiv övervakning av drift och att designa lämpliga arkitekturer och välja lämpliga infrastrukturlösningar.

Nyckeltal för kulturförändring

Går det att mäta hur väl en devopssatsning minskar gapet mellan utvecklare och driftspersonal? Absolut, men man får tänka till rejält. Här följer exempel på nyckeltal som kan underlätta:

  • Teamlycka. I team med dåliga vibbar lär man skylla på varandra när det uppstår problem, i stället för att fokusera på att lösa problemen. För att mäta hur det står till kan man till exempel använda enkäter.
  • Möteseffektivitet. Team som fungerar dåligt kräver ofta fler och längre möten för att komma överens och för att lösa konflikter.
  • Lärande. Ett tecken på ett väl funderande team är att dess medlemmar gillar, och får tillfälle, att lära sig nya saker. Ett sätt att få grepp om läget är att engagera teammedlemmar att dela med sig av nya kunskaper på olika sätt. Man kan mäta hur ofta det görs och hur deltagarna vid sådana tillfällen tycker att de har förkovrat sig.