Slik kommer du deg ut av legacy-systemet

Av Weapp · Oppdatert

Bytt ut et legacy-system trinnvis i stedet for i én stor omlegging. Med strangler fig-mønsteret erstatter du én funksjon om gangen mens det gamle systemet lever videre, noe som holder risikoen lav og driften i gang. Kartlegg skjulte avhengigheter og taus kunnskap først, og beskytt forretningskontinuiteten gjennom hele overgangen.

Et legacy-system er sjelden ødelagt, og det er nettopp derfor det fortsatt er der. Det fungerer, virksomheten stoler på det, og ingen tør egentlig røre det. Men gammel teknologi blir dyrere å vedlikeholde, vanskeligere å bemanne og til slutt en brems for alt nytt dere ønsker å gjøre. Spørsmålet er ikke om dere skal ut av det, men hvordan dere gjør det uten å stoppe virksomheten underveis.

Hvorfor trinnvis nesten alltid slår big bang

Den fristende planen er en ren omlegging: Bygg det nye systemet ferdig, velg en helg, flytt over alt og slå av det gamle. På papiret er det raskt og enkelt. I virkeligheten er det noe av det mest risikable en organisasjon kan gjøre.

Problemet er at en big bang-migrering ikke kan prøves i reell drift før i det øyeblikket alt skal fungere. Ett eneste oversett spesialtilfelle kan da stoppe fakturering, ordre eller produksjon, uten noen enkel vei tilbake. Trinnvis migrering snur regnestykket: Du flytter litt om gangen, verifiserer i faktisk bruk og har alltid det gamle igjen som sikkerhetsnett.

Strangler fig-mønsteret: erstatt bit for bit

Den velprøvde metoden for dette kalles strangler fig-mønsteret. Ideen er at det nye systemet vokser rundt det gamle og tar over én funksjon om gangen, helt til det gamle systemet ikke gjør noe lenger og kan slås av.

I praksis går det slik for seg:

  1. Sett en trafikkdirigent foran. Et lag som sender hvert kall enten til det gamle eller til det nye systemet.
  2. Flytt en avgrenset funksjon. Velg noe med tydelige grenser, for eksempel en rapport eller en arbeidsflyt, og bygg det på nytt.
  3. Omdiriger trafikken. La dirigenten sende akkurat den funksjonen til det nye systemet, og kjør den i produksjon.
  4. Verifiser og gå videre. Fungerer det, tar du neste funksjon. Går noe galt, peker du tilbake til det gamle.
  5. Slå av det gamle. Når ingenting lenger peker dit, kan legacy-systemet avvikles i ro og mak.

Hvert trinn er lite nok til å forstå, teste og om nødvendig rulle tilbake. Risikoen spres over tid i stedet for å konsentreres til én skjebnesvanger natt.

Kartlegg skjulte avhengigheter og taus kunnskap

Den største faren med gamle systemer er ikke koden du ser, men den du ikke vet finnes. Etter mange år har det ofte vokst frem integrasjoner, nattlige jobber, eksportfiler og unntak som aldri er blitt dokumentert.

Hva du leter etterHvor det ofte skjuler seg
Integrasjoner mot andre systemerPlanlagte jobber, filoverføringer, gamle API-er
Forretningsregler og spesialtilfellerI koden, og i hodet på erfarne brukere
Rapporter og eksporterManuelle rutiner som kjøres ved månedsskifter
Tilganger og unntakUdokumenterte løsninger for enkeltavdelinger

Teknisk analyse finner noe, men langt fra alt. Mye av logikken lever som taus kunnskap hos noen få personer. Sett deg ned med dem som bruker systemet hver dag, og spør hva det gjør som ingen har skrevet ned. Den timen sparer uker med feilsøking senere.

Hold virksomheten i gang hele veien

Et konkret eksempel: Et selskap skulle erstatte det gamle ordresystemet sitt. I stedet for å bytte alt på én gang flyttet de først bare ordreregistreringen, mens lager og fakturering ble liggende i det gamle. Da den delen hadde bevist seg i produksjon i noen uker, tok de neste. Virksomheten gikk som normalt gjennom hele prosessen, og da det gamle systemet til slutt ble slått av, var det en ikke-hendelse.

Det er slik du vil at en migrering skal føles: udramatisk. Legg overgangene til roligere perioder, ha alltid en vei tilbake og kommuniser tydelig med dem som berøres.

Hvorfor gamle systemer får leve for lenge

Et rimelig spørsmål er hvorfor man ikke bare bytter i tide. Svaret er at et legacy-system sjelden forårsaker en tydelig krise; det forfaller langsomt. Kostnaden ved å vedlikeholde det stiger gradvis, kompetansen til å drifte det blir stadig vanskeligere å finne, og hver ny idé tar lengre tid å gjennomføre fordi det gamle fundamentet står i veien. Ingen enkelt dag føles akutt nok til å rettferdiggjøre et bytte, og så blir det utsatt år etter år.

Nettopp derfor er det verdt å ta beslutningen før dere blir tvunget til det. En planlagt, trinnvis migrering er alltid tryggere enn en nødevakuering når det gamle systemet til slutt bryter sammen eller den siste personen som forstår det, slutter. Å begynne mens systemet fortsatt fungerer, gir deg roen til å flytte i ditt eget tempo.

Ta et lite steg først

Den beste måten å komme seg ut av beslutningslammelsen på er å gjøre migreringen liten og konkret. Velg ut én enkelt avgrenset funksjon, flytt den etter strangler fig-mønsteret og lær underveis. Det første steget beviser at metoden fungerer i akkurat deres miljø. Det avdekker de skjulte avhengighetene dere overså, og det bygger tillit til at resten kan gjøres på samme måte.

Trenger dere hjelp til å kartlegge et gammelt system og legge en migreringsplan som holder virksomheten i gang, gjør vi i Weapp gjerne en teknisk gjennomgang og kan deretter drive migreringen i kontrollerte trinn.

Ofte stilte spørsmål

Hva er strangler fig-mønsteret?

Det er en migreringsstrategi der du bygger det nye systemet rundt det gamle og flytter over én funksjon om gangen. Trafikken omdirigeres gradvis til det gamle systemet ikke lenger brukes og kan slås av. Navnet kommer fra kvelerfiken (strangler fig), fikenarter som vokser rundt vertstreet sitt til de har tatt det helt over.

Hvorfor er en big bang-migrering så risikabel?

Fordi alt byttes på én gang, kan det ikke testes i produksjon før hele systemet skal tas i bruk. Én eneste uventet feil kan stoppe hele virksomheten, og det finnes ingen enkel vei tilbake. Trinnvis migrering begrenser hver risiko til en liten del og har alltid en fungerende reserveløsning (fallback).

Hvordan finner vi skjulte avhengigheter i det gamle systemet?

Kombiner teknisk kartlegging med intervjuer. Gamle systemer har ofte integrasjoner, planlagte jobber og spesialtilfeller som ingen har dokumentert. Snakk med dem som bruker systemet daglig. Mye av logikken lever som taus kunnskap hos noen få personer snarere enn i noen dokumentasjon.

Kan virksomheten fortsette som normalt under migreringen?

Ja, det er hele poenget med en trinnvis tilnærming. Fordi det gamle systemet lever videre til hver del er erstattet og verifisert, merker brukerne sjelden byttet. Legg overgangene til roligere perioder, og ha alltid en vei tilbake hvis ett av trinnene ikke fungerer som forventet.

Hvor lang tid tar en legacy-migrering?

Det avhenger helt av systemets størrelse og hvor floket logikken er, men trinnvis migrering tar bevisst lengre kalendertid enn big bang. Til gjengjeld er risikoen lavere, og virksomheten kan bruke systemet hele veien. Se det som en kontrollert utfasing over måneder snarere enn én enkelt helg.