Want to know what happens backstage at Redpill Linpro?
Soon we can welcome you in!
Coming soon
Backstage
Sign up for our newsletter

API Ready modellen, steg 3 - DevOps

Thu, 05/19/2016 - 10:26 -- Fredrik Svensson
Vi lever i en stadig omskiftelig hverdag. Det gjør også våre APIer, og for å lykkes med disse må du følge med i timen. Ingen kan med sikkerhet si hva som blir det “neste store”, men vi kan med stor sikkerhet si at det som er “inn” i dag ikke nødvendigvis er det i morgen. Skal APIene dine overleve dette må de være designet for å være enkle å modifisere, utvide, vedlikeholde og produksjonssette. I tillegg må du ta høyde for det uforutsette, og sørge for å håndtere disse situasjonene uten brekasje. Defor lanserer vi tanken om at DevOps skal styre API utviklingen.

 DevOps konseptet er ikke noe nytt. Svært mange organisasjoner er fult klart over at DevOps effektiviserer samspillet mellom utvikling, forvaltning og drift, og at effektiv DevOps er en viktig suksessfaktor.

Målet er å bygge applikasjoner som er enklere å vedlikeholde og å drifte ved å fjerne skottene mellom avdelingene som er ansvarlig for dette. Noen organisasjoner har fjernet merkelappene “utvikling” og “drift” og refererer simpelthen til DevOps avdelingen eller funksjonen.

Jeg synes dette er en fornuftig utvikling som peker på essensen av DevOps - leveranse av en løsning framfor leveranse av et software komponent.  

Å spå om framtiden

 Utfordringene står i kø i det vi ønsker å introdusere nye APIer eller legger APIer inn i en framtidig API “butikk”. Vi må være rigget til å håndtere tilbakemelding fra våre brukere, stå klare til å endre eller legge til funksjonalitet, håndtere overforbruk/misbruk av APIene, ha planen for katastrofegjennoppretting klar i det en produksjonssetting feiler og en rekke andre hendelser som kommer som en følge av at vi publiserer APIet vårt. For å klare å håndtere dette må vi ha en plan for hvordan samarbeidet mellom utvikler og drifter/forvalter skal forløpe. De samme prinsippene bør også benyttes ved utforming og utvikling av APIene. 

Realiteten er at vi ofte jobber med svært knappe tidsfrister, og vi står ofte overfor situasjoner der tiden fra besluttingen er tatt til APIet er ment å skulle produksjonsettes er veldig kort. Det betyr at sjansen er stor for at du lanserer et API som ikke er gjennomtestet og kvalitetssikret. Dette er grunnen til at du trenger en strategi for raskt å produksjonsette nye iterasjoner av APIene dine. Effektiv bruk av DevOps er løsningen!

API Devops tankegang

  • APIene dine vil endre seg over tid
  • Du vil måtte ta høyde for dette i det du designer dine APIer
  • Du trenger en versjoneringstrategi for å synligjøre hvor APIene dine er
  • APIene dine skal levere en løsning, og ikke en løsrevet software bit
  • Dine utviklings, forvaltning og drifts-team må være samstemte og forente om strategien. Bruk DevOps!
  • Produksjonssett kode så raskt som mulig, og - ha en plan for å rulle tilbake når koden ikke virker.
  • Gjør du DevOps til hjørnesteinen i din API strategi er du klar for å håndtere alle krav om endringer!