ITU-forsker: Overfokus på nye platforme og sprog giver os skrøbelige systemer
»Inden for softwarefeltet har man ikke tendens til at se fortiden som værdifuld – og hvorfor skulle man også kode på samme måde, som man gjorde i 90’erne? Sammen med presset for konstant at levere nyudviklinger betyder det, at man glemmer, hvordan man vedligeholder legacy-systemer, altså it-systemer, der blev kodet for lang tid siden.«
Den kritik kommer fra adjunkt Marisa Cohn, ITU, der har studeret fænomenet gamle systemer ud fra et kulturelt og organisatorisk perspektiv, frem for et teknisk, ved at udnytte etnografiske metoder, hvor hun udfører feltarbejde ude i tekniske teams, tilbringer tid i software-faglige netværk og udføre kvalitative interviews med ingeniører om deres arbejde.
En negativ konsekvens af det konstante fokus på nyt, er, at systemerne bliver mindre robuste, fordi opmærksomheden eller hypen omkring en bestemt teknologi har det med at forsvinde hurtigt igen.
Kompetencerne til at holde systemerne i luften fader ud:
»Og det er derfor for eksempel ikke ønskværdigt, at et it-system på et hospital kører på det nyeste sprog eller platform,« siger hun.
Men mange unge programmører er mere interesserede i at arbejde med de nyeste platforme og programmeringssprog, og de bliver ikke samme sted særligt længde, siger hun og forklarer hvorfor:
»Det er hårdt arbejde at trawle igennem gammel software. Men hvis softwaren altid skal være helt ny, ender man med at skære historien og relationen til brugerne fra,« siger hun.
Presset på at arbejde på den seneste platform eller programmeringssprog er udbredt inden for alle grene af softwareudvikling og er mindre bundet til krav fra bestemte domæner.
Undersøgelser, bl.a. fra midten af 90'erne, har vist, at tendensen kom med dot-com-boomet, hvor et nyt paradigme indebar, at softwareprogrammører i høj grad bliver iværksættere, der investerer i egen individuel arbejdskraftudvikling og dermed nogle gange på bekostning af de ressourcer, der er til rådighed i teknologivirksomheder.
Socioteknisk hukommelsestab kan være dyrt
Ud over at nye systemer kan ende som døgnfluer, så kan nyhedsfokusset betyde, at man glemmer, hvordan man vedligeholder legacy-systemerne, og det er et problem.
»Man forsømmer betydningen af ældre systemer, og vi undervurderer de færdigheder, der er nødvendige for at vedligeholde og sikre et generationsskifte, da it-systemer udvikler sig over lang tid,« siger Marisa Cohn.
Der sker altså ikke nødvendigvis en egentlig forsømmelse af systemerne i sig selv. Det handle mere om, at nogle af de færdigheder, der skal til for at opretholde ældre systemer, kan blive glemt. Situationen betyder bl.a., at man er nødt til at indkalde pensionerede programmører til at vedligeholde legacy-systemer.
»Det er ikke for at sige, at vi skal være nostalgiske om eksisterende systemer, der ikke fungerer eller opfylder nutidens behov, men at vi bør være på vagt over for et socioteknisk hukommelsestab - for at glemme den organisatoriske og kulturelle viden, der er viklet ind med ældre systemer,« siger hun.
I nogle tilfælde skal man selvfølgelig implementere et nyt system, men ældre systemer kan stadig være rumme værdifulde historiske oplysninger.
»Jeg har set i forskellige sammenhænge, at nye it-systemer er ved at blive indført, hvor der er mere opmærksomhed på de funktioner, der vil blive tilføjet, og mindre opmærksomhed på dem, der vil blive tabt,« lyder det fra ITU-adjunkten.
Med andre ord kan ændringer i kode gribe forstyrrende ind i organisationskulturer og struktur.
Det betyder, at vi skal være mere interesserede i at arbejdet med software-vedligehold. Men kvalifikationer og viden herfra er også uvurderlig for implementeringen af nyere systemer.
Det gælder f.eks. inden for rumforskning, hvor software ofte er nedarvet fra generation til generation, fordi sattellitterne bruges i mange år til at studere naturfænomener.
Lær af rumforskningens it-teams
Eksempelvis flyver Orbiter-robotter rundt i det ydre rum i over et årti, og de kører på nogle af de ældste programmeringssprog.
»Men kunne lære meget af deres vedligeholdsteam og deres evne til forsigtigt at tune og opdatere gamle systemer,« lyder det fra Marisa Cohn.
Andre sektorer, som adskiller sig fra tendensen, og hvor man sætter større pris på legacy-software, er eksempelvis i det offentlige, på hospitaler, i banker og i skoler.
Militæret er også et eksempel - det amerikanske atomprogram kører f.eks. stadig på floppy-disketter.
»Jeg tror, vi først bliver opmærksomme på legacy-systemer nu, fordi den første generation af udviklere er ved at gå på pension,« siger hun.
Blandt andet skal man holde op med at bruge legacy som et skældsord.
For vi kan lære meget fra specialister, der arbejder med at bevare ældre systemer, siger hun.
»Jeg ser det som et kollektivt ansvar at sikre, at vi implementerer og vedligeholder systemer med en lang levetid. Selv den nyeste mode i softwaremanagement bliver ældre. Så ud over at skabe mere vedligeholdelsesvenlig og evolverbare softwaresystemer bør vi også værdsætte det arbejde, som er nødvendig for at opretholde den organisatoriske og kulturelle viden, der er en del af it-systemer på lang sigt.«
