bog bog

Boganmeldelse: The DevOps Handbook

Juni 2017
Af Christian F. Nissen, Publikationsudvalget


Titel: The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations
Forfattere: Gene Kim, Jez Humble, Patrick Debois, John Willis
Målgruppe: Læsere, der ønsker en grundig indføring i DevOps
ISBN: 9781942788003
Udgiver: IT Revolution Press
Årstal: December, 2016
Sideantal: 250
Forudsætninger: Kendskab til it-udvikling og it-drift

DevOps har de seneste år vundet stor udbredelse. DevOps er et opgør med idéen om, at det er muligt og hensigtsmæssigt at tegne hele huset i detaljer, førend vi begynder at bygge det. I stedet bygger vi det lidt ad gangen og tager det i brug, efterhånden som de enkelte dele bliver klar. På den måde kan vi blive klogere undervejs og undgå at knække halsen på projekter, der kan vokse sig over hovedet på os. DevOps kræver til gengæld, at der er et solidt fundament at bygge på, og at vi evner at bygge, teste og ibrugtage små selvstændigt levedygtige elementer kontinuerligt.

Som begreb opstod DevOps i 2008 i kølvandet på den agile udviklingsbølge i 00’erne. Fem år senere satte Gene Kim m.fl. for alvor skub i DevOps bølgen med romanen fra 2013 ”The Phoenix Project” (se min anmeldelse her)

Populært sagt er DevOps opstået i krydsfeltet mellem agile udviklingsmetoder, it service management, lean og automatiseret test, idriftsættelse og konfiguration. Det betyder, at rigtig mange har en holdning til, hvad DevOps egentlig er. Det gælder blandt andet organisationer som IT Revolution, DevOps Agile Skills Association (DASA), EXIN og Axelos, der hver for sig forsøger at tage patent på DevOps.

Derfor har ”The DevOps Handbook” været længe ventet, da de fire forfattere (sammen med bl.a. John Allspaw) er anerkendt for at have defineret og drevet DevOps bølgen frem, blandt andet gennem DevOps Days og DevOps Enterprise Summits. Mine forventninger til bogen var derfor tårnhøje.

Som det fremgår af titlen er det en håndbog, men der er ikke tale om en egentlig trin-for-trin vejledning.

Jeg havde egentlig forventet, at bogen ville følge den struktur, som tidligere beskrivelser af DevOps typisk har fulgt, nemlig Culture, Automation, Lean, Measurement, and Sharing (CALMS). I stedet er bogen opbygget omkring de tre grundlæggende principper, som blev introduceret i ”The Phoenix Project”: Flow, feedback og løbende forbedring. Det er et godt valg, da man som læser aldrig mister overblikket undervejs, hvilket er noget af en bedrift med så bredt et emne.

Bogen er disponeret i seks sektioner:
I: Kortfattet historie bag DevOps samt introduktion til den bagvedliggende teori og terminologi.
II: Hvor starter man - herunder værdistrømme, organisatoriske designprincipper, organisatoriske tilpasningsmønstre og case studier.
III: Princip 1: Hvordan accelererer man flow ved at etablere den basale leverancepipeline - herunder automatiseret test, løbende integration, løbende leverance og idriftsættelse.
IV: Princip 2: Hvordan forstærker og accelerer man feedback - herunder metrikker, som forfatterne kalder telemetry, integration af test i det daglige arbejde samt review- og koordinationsprocesser.
V: Princip 3: Hvordan accelererer man læring og løbende forbedring - herunder kultur, omsætning af lokale opdagelser til globale forbedringer og allokering af tid til organisatorisk læring og forbedring
VI: Hvordan integrerer man sikkerhed og compliance i det daglige arbejde - herunder integration af sikkerhedskontroller i shared source code repositories, integration af sikkerhed i idriftsættelse, udbygning af telemetri så den bedre opdager, genetablerer og beskytter leveranceapparatet, og hvordan man lever op til kravene til change management.

Bogen bruger indledningsvist en del sider på at introducere DevOps, hvilket måske kan virke lidt irriterende, hvis man har læst ”The Phoenix Project”. Modsat betyder det, at nye læsere kan springe direkte på ”The DevOps Handbook” uden at læse ”The Phoenix Project” først. Forfatterne bruger også i indledningen en del kræfter på at begrunde DevOps - men her prædiker de til de omvendte. Vi har forstået problemet - nu glæder vi os bare til løsningerne.

Spækket med information og eksempler
Bogen er ikke svær at læse, men den er ikke letlæst, da den er spækket med information og praksisser. Selv om den kun fylder 250 tætskrevne sider, har det alligevel taget mig en rum tid at komme igennem den. Der er rigtig mange gode eksempler fra virkeligheden, og forfatterne er generøse med undersøgelsesresultater og rapporter, der understøtter de praksisser og synspunkter, som bogen præsenterer. Til gengæld savner jeg flere illustrationer, ligesom jeg godt kunne have brugt nogle skabeloner og værktøjer.

Bogen er absolut læseværdig og har potentialet til at blive grundbogen blandt de mange udgivelser om DevOps, som myldrer frem for tiden. Hvis du vil vide, hvad DevOps er, skal du læse ”The DevOps Handbook”.

Kritik af DevOps som koncept
Hvis man skal komme med en kritik, er det derfor ikke af bogen, men af DevOps som koncept. Der er ingen tvivl om, at DevOps er en nødvendig videreudvikling i forhold til den måde, vi hidtil har fremstillet teknologi på. Men svagheden ved DevOps er netop, at det handler om at skabe et samlebånd for uafbrudt fremstilling, test og idriftsættelse af applikationer. Dermed er der en risiko for, at serviceaspektet drukner, mens vi prøver at få styr på it-fabrikken. Operationen lykkes, men patienten dør.

Fremstilling af applikationer og platforme kan aldrig blive andet end en bagvedliggende forudsætning for service, og de it-afdelinger, der blindt fokuserer på at udvikle, vedligeholde og drifte applikationer og platforme, vil blive reduceret til interne underleverandører frem for egentlige aktører i virksomhedens værdiskabelse. Forfatterne skriver selv, at fordi værdien af en service først skabes i drift, skal it-afdelingen sikre, at idriftsættelse sker uden kaos, afbrydelser og serviceforringelser. Men de frakobler sig fra den daglige samskabelse mellem it og forretning og fraskriver sig indirekte ansvaret for brugernes værdiskabelse.

Ny bølge
Dev og Ops smelter sammen, men vi har stadig til gode at se, at de også smelter sammen med Service. Det kommer forhåbentlig til at ske i de kommende år, så den næste bølge kan blive SerDevOps ☺ For at blive i billedet med huset, er det ikke nok at vi bliver effektive til at opføre, udbygge og vedligeholde boliger på samlebånd. Vores hovedopgave er nemlig ikke først og fremmest at bygge velegnede boliger i samspil med beboerne, men at drive hotel. Vi er hotelværter, der skal sikre, at vores gæster får det optimale ud af opholdet – hver dag!