Derfor gik det galt for EFI-systemet
Skats system til inddrivelse af danskernes gæld til det offentlige blev sat i drift i december 2013. I september 2015 blev systemet taget ud af drift, da det kom frem, at sagsbehandlingen i systemet i flere tilfælde overtrådte loven.
Hvordan kunne det gå så galt for et system, det havde kostet mere end én milliard kroner at udvikle?
Den korte forklaring er, at der ikke kan peges på én enkelt årsag til, at EFI-systemet ikke virker og nu sandsynligvis skal udskiftes. Men hvis man alligevel skal sætte fingeren ét sted i det otte år lange projektforløb, så opstod problemerne allerede inden, der var skrevet så meget som én linje kode i programmet.
En del af de mange problemer i EFI-systemet er afdækket i en omfattende rapport, 'Teknisk rapport fra Accenture', som konsulentfirmaet Accenture har udarbejdet for Skatteministeriet.
Rapporten skal danne grundlag for EFI-systemets videre skæbne og var medvirkende til, at flere chefer hos Skat med tilknytning til EFI-projektet blev suspenderet i september.
Den tekniske rapport peger flere steder på selve systemets overordnede arkitektur og den kravspecifikation, som leverandørerne fik at arbejde med. Om kompleksiteten af systemet og arkitekturen skriver Accenture blandt andet:
‘Omfanget af systemet, som det oprindeligt blev præsenteret, ville uden simplificering formentlig have krævet, at man udviklede ét af verdens mest komplekse systemer til offentlig gældsinddrivelse. […]
Fleksibilitet regnes normalt ikke for et systemarkitektonisk princip og er i strid med flere gængse principper som KISS og YAGNI (You Aren’t Going to Need It).«
Med andre ord bad Skat om et it-system, som skulle være komplekst og samtidig fleksibelt. Det var to hovedingredienser i den cocktail, der fik EFI-systemet til at løbe af sporet.
Ingen kravspecifikation
Rent teknisk er det imidlertid også gået galt i implementeringen af systemet. Det kan spores tilbage til kravspecifikationen, som ifølge Accentures vurdering er formuleret i alt for generelle vendinger.
Kravspecifikationen bestod af cirka 400 krav samt 700 siders beskrivelser af brugsscenarier. For et projekt af denne størrelse vil der normalt være cirka 5.000 krav, vurderer Accenture ud fra den behovsanalyse, der blev lavet.
Da der ikke var formuleret konkrete krav, var det ikke muligt at fastslå, om systemet gjorde det, det skulle.
»Der var ikke nogen kravspecifikation, så der var ikke noget at teste ud fra,« siger professor Søren Lauesen fra IT-Universitetet.
Det betød også, at det reelt ikke er muligt på noget tidspunkt at sige, om EFI er færdigt. Da systemet blev sat i drift, havde det desuden kun bestået cirka 80 procent af de test, der var defineret.
De ansvarlige for EFI-systemet blev ifølge Accenture-rapporten advaret om, at EFI ikke var gennemtestet i 2012 og 2013 forud for idriftsættelsen.
Der var ellers afsat mellem 30 og 40 millioner kroner til et testmiljø for systemet.
KMD var hovedleverandør på udviklingen af EFI-systemet, men Accenture-rapporten slår fast, at EFI er så afhængigt af et andet system hos Skat, Debitormotor (DMI), at de to reelt bør betragtes som ét system.
Det ene kan ikke fungere uden det andet. Skat valgte imidlertid at udvikle de to systemer hver for sig og efter en forskudt tidsplan.
Unormal arbejdsdeling
»Det er unormalt, at man fordeler et system mellem to leverandører. Skat troede, de kunne undgå at slås med ét monopol, men det er værre at være i kløerne på to monopoler end på ét,« siger Søren Lauesen.
CSC var leverandør på DMI, og KMD og CSC skulle således samarbejde om at få de to systemer til at arbejde sammen. Den proces viste sig at tage længere tid og kræve flere tilrettelser, end den første tidsplan tog hensyn til.
I stedet for at definere en grænseflade for kommunikation fra ét system til et andet blev de to systemer bundet sammen via en Serviceorienteret Arkitektur (SOA), men det er ifølge Søren Lauesen en anvendelse, som SOA er uegnet til.
Et af problemerne ved den uspecificerede grænseflade mellem de to dele af systemet var, at det var svært for henholdsvis CSC og KMD at teste, om deres implementering ville virke med den anden halvdel af systemet.
Derfor fik Skat kort sagt kun ulemperne og ingen af fordelene ved SOA ud af projektet.
Accenture-rapporten udpeger designfasen som dér, hvor problemerne begyndte for EFI. Ser man på selve de applikationer, der er kommet ud af det, så er kodekvaliteten generelt god.
Der er dog også steder i koden, som afspejler, at der var visse ting, udviklerne havde problemer med at få til at virke efter hensigten, hvilket kan ses i talrige ændringer og udkommenteringer.
Ingen test af data
Programkoden har også en lav kompleksitet, når man måler på den med gængse metoder til automatisk kodeanalyse. Men det kan ifølge Accenture skyldes, at der ikke var konkrete krav i kravspecifikationen, som kunne implementeres til eksempelvis validering af data i systemet.
Det viser sig også i praksis, hvor der efter import og senere input af data i systemet ikke har været validering af data. Derfor findes der nu data, som ikke stemmer overens, efter at EFI blev taget i brug i 2013. Systemet kan således også give problemer, når det får data ind.
Det skal kunne håndtere cirka 450 forskellige fordringstyper, som kan variere fra restskat til en regning for rude på en skole, der er baldret med en fodbold.
Derfor får EFI data fra mange forskellige myndigheder, og hvis data ikke er formateret korrekt, er det ikke sikkert, at systemet opdager fejlene.
Rapporten anviser ingen mirakelkur for Skat, der kan få EFI-systemet til at virke. Skat har måttet indstille brugen af systemet og overlade visse prioriterede inddrivelsesopgaver til manuel behandling, og det kan Skat blive nødt til at fortsætte med.
Accenture anbefaler nemlig, at Skat undlader at bruge de dele af EFI, hvor der er konstateret problemer. Som en kortsigtet løsning vil det være muligt at reparere dele af EFI, men på længere sigt bør EFI og DMI udskiftes med et helt nyt system.
Samtidig bør der ifølge Accenture ske en forenkling af reglerne på området for at reducere kompleksiteten af et nyt system, ligesom Skat bør gennemgå hele organisationens it-arkitektur
Dokumentation: Pressemeddelelse med links til Accenture-rapporter

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.
Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.
Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.
Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.