Skip to main content

Hvad er kodemigration?

Kodemigration er bevægelsen af programmeringskode fra et system til et andet.Der er tre forskellige niveauer af kodemigration med stigende kompleksitet, omkostninger og risiko.Enkel migration involverer bevægelsen fra sprog til en nyere version.Et andet, mere kompliceret migrationsniveau involverer at flytte til et andet programmeringssprog.Migrering til en helt ny platform eller operativsystem er den mest komplekse type migration.

Den første type kodemigration er en simpel bevægelse fra en version af et sprog til en nyere, men syntaktisk anden version.Dette er de nemmeste af kodemigrationsruter, da den grundlæggende struktur og meget af programmeringskonstruktionerne normalt ikke ændres.I mange tilfælde ville den gamle kode faktisk fungere, men nye og forbedrede rutiner eller modularisering kan forbedres ved at genindlæse koden for at passe til arten af det nye sprog.Derfor ville migrere koden føre til mere effektivitet i udførelsen.

Det andet niveau af kodemigration ville være at migrere til et helt andet programmeringssprog.Dette kan være forårsaget af porting til et nyt softwaresystem eller implementering af et andet relationel databasestyringssystem (RDMS).Denne type kodemigration kræver ofte, at programmerere lærer et helt nyt sprog, eller nye programmerere bringes ind for at hjælpe med migrationen.I dette tilfælde skal hele programmet omskrives fra bunden af.Selvom de fleste af konstruktionerne sandsynligvis eksisterer på begge sprog, er den nøjagtige syntaks normalt helt anderledes.

Det mest komplekse eksempel på kodemigration migrerer til en helt ny platform og/eller operativsystem (OS).Dette ændrer ikke kun programmeringssproget, men også maskinkoden bag sproget.Mens de fleste moderne programmeringssprog beskytter programmereren mod denne kode på lavt niveau, viden om OS og hvordan det fungerer er vigtigt for at producere kode, der er effektiv og udføres som forventet.

Uanset hvilken type kodemigration, skal fremgangsmåden væresamme.Migrationsteamet eller programmøren skal bryde hvert modul, funktion og underrutiner i dets formål og flowdiagram programmet.Dette er en omvendt konstruktion af den originale softwareudviklingslivscyklus (SDLC).Når disse moduler og funktioner er kortlagt til deres formål på højt niveau, kan de omskrives og testes på en rummål på det nye sprog.Som ethvert avanceret computerprogrammeringsprojekt er korrekt planlægning og dokumentation nøglen til en vellykket kodemigration.