Case

Forbedring af leveranceprocesser (CI/CD)

Sundhedsdatastyrelsen har i samarbejde med Arosii udviklet et Continuous Integration & Continuous Delivery setup for at forbedre Den Nationale Serviceplatforms leverancepipeline. Forbedringerne effektiviserer og smidiggør processen mellem udvikling, kvalitetssikring, test og udrulning af komponenterne.

SDS

Sundhedsdatastyrelsen skaber sammenhængende sundhedsdata og digitale løsninger til gavn for sundhedsvæsnet. Sundhedsdatastyrelsen fremmer sundheden ved at udstikke fælles strategier, it-arkitektoniske retninger og koordinere den overordnede digitalisering af sundhedsvæsenet. De arbejder med digitale sundhedsplatforme såsom Fælles Medicinkort (FMK) og Den Nationale Serviceplatform (NSP).

Branche

Sundhed

Kunde siden

År 2006

Løsning

Continuous Integration & Continuous Delivery setup

Det er essentielt for Sundhedsdatastyrelsen at støtte deres leverandører i udviklingen af Den Nationale Serviceplatform for at sikre stabil drift af deres leverancer. Arosii har i mange år håndteret og højnet overgangen fra arkitektur ←→ udvikling ←→ drift ved at tilbyde leverandørerne sparring og løbende kvalitetssikring på leverancerne. Dermed sikres leverandørerne den rette indsigt i arkitekturen og hvordan de skal integrere til platformen.

Som led i at sikre en gnidningsfri leverancepipeline påbegyndte Sundhedsdatastyrelsen og Arosii arbejdet med et Continuous Integration & Continuous Delivery (CI/CD) setup i 2017. Der var et ønske om at smidiggøre overgangene og sikre højere hitrate mellem udvikling ←→ kvalitetssikring ←→ drift. Initiativet havde bl.a. som formål at forvandle arbejdet omkring leverancerne ved at give leverandørerne værktøjerne til selv at finde fejl og mangler tidligt i udviklingsforløbet.

Et tillidsfuldt samarbejde

Sundhedsdatastyrelsen har været kunde hos Arosii siden 2006. Vi havde derfor stor indsigt i styrelsens strategier, organisationsstruktur og udviklingspotentiale, da de kom til os med et ønske om at forbedre udrulningen af komponenter på NSP. Værktøjerne og processerne på NSP skulle optimeres, så de blev mere involverende og lettere for interessenterne, heri leverandørerne til NSP, at bruge i hverdagen. Det var vores opgave at identificere udfordringen, udvikle en løsning samt implementere den således at CI/CD aktivt blev brugt på tværs af NSP-organisationen.

Udfordring
  • Monolitiske NSP releases med flere komponentopdateringer medførte ofte at releases blev udskudt pga. enkelte komponenter, planlagte komponenter blev taget ud og der var større risiko for fejl og forsinkelser ved deployment.
  • Komponentleverandørerne fik ikke tilstrækkeligt eller hurtigt nok feedback fra kvalitetssikring og idriftsættelse i NSP miljøer inden komponenten kom i produktion.
  • En manuel proces med mange interessenter skabte problemer med planlægning og forudsigelighed.
Analyse
  • Behovs- og adfærdsanalyse hos komponentleverandørerne ved at identificere vejen fra løsningsdesign, udvikling til kvalitetssikring og idriftsættelse.
  • I samarbejde har Sundhedsdatastyrelsen og Arosii defineret rammer og mål for CI/CD.
  • Via workshops har Arosii involveret alle interne NSP interessenter i SDS’s målbillede, udviklingen af løsningsdesign samt implementering af CI/CD.
Løsning
  • Et CI/CD koncept, som kan fungere på NSP med alle dets interessenter.
  • Etablering af byggepipelines på Jenkins på samtlige NSP komponenter, således alle komponentleverandørerne får øjeblikkelig feedback på deres egne byg.
  • Ny release-proces med fokus på release i korte intervaller (micro-releases).
  • Åbne op for at komponentleverandørerne selv kan definere samt overvåge byg af egne komponenter.
  • En gnidningsfri overlevering fra leverandørerne og hele vejen til drift. Leverandørerne har mulighed for at definere deployment-tekniske dele af egne komponenter. Yderligere har leverandører mulighed for nemt at hente (egne såvel som andre leverandørers) komponenter og afvikle disse i testsammenhæng.
  • En pakketering af komponenter som fylder “mindre” og er hurtigere at deploy. Indholdet af den pakke er leverandørerne med til at bestemme.
  • Anvenderne kan selv teste og afprøve deres løsninger.
  • Stille byggeopskrifter, vejledning, sparring og rådgivning til rådighed hos komponentleverandørerne.
  • Gennem workshops med samtlige NSP-leverandører har vi rådgivet og assisteret dem i brugen af CI/CD, således de kom hurtigt og korrekt i gang.
Resultat
  • Væsentlig lettere planlægning af releases pga. minimerede afhængigheder.
  • Hurtig ekspedition for at få mindre bugfix deployet, hvilket giver bedre kundetilfredshed.
  • Hurtig fejlrettelse i leverancer da leverandørerne stadig har løsningen i hukommelsen.
  • Bedre fremdrift og agilitet på NSP.
  • Højere succesrate ved deployments.

I tæt samarbejde med komponentleverandørerne, driftsleverandøren, operatøren og Sundhedsdatastyrelsen har det været muligt at udvikle en CI/CD løsning til den nationale serviceplatform som øjeblikkeligt har skabt værdi for leverandører og interessenter.

CI/CD-løsningen tillader at driftsleverandørens setup udvikler sig evolutionært uden at kompromittere stabilitet af NSP drift, hvilket har været muligt da Arosii har et indgående kendskab og samarbejde med driftsleverandøren. CI/CD løsningen er tilsvarende designet til at skalere, så testafvikling og deployment kan automatiseres yderligere, og dermed øge effektivitet samt minimere manuelle fejlkilder i processen, afhængig af SDS’s prioriteter.

Det er et setup som er under løbende udvikling, hvor Sundhedsdatastyrelsen og Arosii hele tiden overvejer hvordan setuppet skal forbedres. Det vil vi gøre ved at fortsætte den åbne og gode dialog med alle projektets interessenter.