En brandbomb i serverhallen
Samhälle Reportage
Svensk offentlig förvaltning har det uttalade målet att vara världens mest digitaliserade. Ändå följer skandal på skandal när det offentliga ska upphandla de nödvändiga IT-systemen. I den första delen av Smedjans granskning av den offentliga sektorns digitalisering skriver Joakim Broman om IT-plattformen som kostat som en resa till Mars – men som flera år efter lanseringen fortfarande dras med allvarliga brister.
”När jag pratar med IT-chefer säger de att deras drömläge är att slänga in en brandbomb i serverhallen på IT-avdelningen så att allting försvann och de fick bygga upp allt från början igen”, säger Johan Magnusson som forskar om digitalisering vid Göteborgs universitet till Sveriges Radio. Han har granskat över 70 organisationer inom offentlig sektor och deras digitala strategier, och pekar på att många av dem dras med enormt föråldrade system.
Studien är en målande sammanfattning av läget i det offentliga Sveriges digitala miljöer, och står i skarp kontrast till de politiska ambitionerna. Enligt regeringens digitaliseringsstrategi ska Sverige vara ”bäst i världen på att använda digitaliseringens möjligheter”.
När man betraktar hur det ser ut ute i regionerna, kommunerna och på myndigheter framstår det mest som vackra ord till högtidstalen. IT-chefer sliter sina frisyrer över system som levt kvar sedan 1970-talet. Försök att byta ut dem leder till enormt dyra, försenade och svårhanterliga projekt som i värsta fall påverkar hela verksamheten. Ett av de senaste exemplen är Stockholms stad skolplattform, ett projekt som sköt drygt en kvarts miljard kronor (minst) över budgeten och som haft allvarliga användar- och säkerhetsproblem alltsedan lanseringen 2018. Jag ska strax återkomma till fallet.
Buggar & krascher
I nyhetsrapporteringen framstår det som att sådana exempel är regel snarare än undantag. År efter år kan man läsa om misslyckade projekt. Inte bara i nyheterna, förresten: 2017 konstaterade regeringen att IT-projekt som bedrivs inom offentlig sektor ofta är ”dyra, saknar resultatfokus och drar ut på tiden”.
Trots den gängse bilden av att Sverige är ett tekniskt föregångsland ligger digitaliseringen av offentlig sektor efter samhället i stort. Merparten av statens IT-kostnader går i dag åt till att underhålla föråldrad digital infrastruktur som byggdes upp mellan 1970- och 90-talen. Det är inga småsummor det handlar om: svenska myndigheters IT-kostnader på cirka 30 miljarder kronor varje år motsvarar sex domstolsväsenden, tre bostadstillägg till pensionärer, en och en halv polismyndighet, hela barnbidraget eller all beräknad statsskuldsränta 2020.
Förlegade IT-system frustrerar viktiga yrkesgrupper som lärare och läkare i deras arbete, och ökar dessutom riskerna för till exempel överbelastningsattacker eller för att personuppgifter röjs. Det senare hände också i ett av de senaste årens mest uppmärksammade exemplen på offentliga IT-haverier: Stockholms stads skolplattform. Tanken var att skapa ett sammanhållet system för alla skolformer i staden, och att sammanföra funktioner som betygsättning, schemaläggning och kommunikation med föräldrar.
Plattformen hade tagit fem år att utveckla och hade en budget på 695 miljoner kronor. Men snart efter lanseringen i augusti 2018 började förhållandevis grundläggande problem att uppdagas. Systemet var segt och kraschade, dokument som laddats upp buggade eller försvann.
”Tanken är bra, att allt ska skötas och finnas samlat på samma sida. Men nu när det har lanserats har det varit helt värdelöst och inget har fungerat. Lärarna får skicka mejl istället med viktig information, precis som det var innan”, sa föräldern Helena Kämpfe Fredén till DN.
Bland annat upptäckte Jonasson att han kunde få ut namn och personnummer på alla lärare och elever i Stockholms stad.
”Intrimningsproblem”, svarade biträdande IT-direktören Christer Forsberg Philip på Stadsledningskontoret, som lovade att problemen snart skulle vara lösta, och att budgeten skulle hållas. Det skulle inte dröja länge innan han fick fel. Redan i början av 2019 uppskattades kostnaden ha stigit till över en miljard kronor.
Ett år efter lanseringen, i augusti 2019, rapporterar DN att personuppgifter och elevdokumentation varit öppet tillgängliga genom en säkerhetslucka. De upptäcktes av författaren och IT-strategen Måns Jonasson, som under en kväll skulle göra en genomgång av Skolplattformens problem, men under tiden upptäckte allvarliga säkerhetsbrister. Bland annat berättade Jonasson på twitter hur han lyckats hitta ett sätt få ut namn och personnummer på alla lärare och elever i Stockholms stad.
Avslöjandena ledde till att delar av Skolplattformen stängdes ner under en dryg månads tid. Dåvarande skolborgarrådet Lotta Edholm (L) kallade läckan för ”droppen som fick bägaren att rinna över” och krävde en fullständig genomlysning av hela projektet.
Att blanda äpplen och päron
Hur är det möjligt att projektet gått så snett? Kanske finns en ledtråd i DN-intervjun från september 2018, där biträdande IT-direktören Christer Forsberg Philip lite i förbifarten berättar hur processen för att bygga plattformen sett ut. Det visar sig att Skolplattformen inte byggts av en ensam extern leverantör, utan består av ”lösa” komponenter och produkter som stadsledningskontoret med hjälp av konsulter pusslat ihop.
”Vissa delar är rena standardprodukter som andra företag har utvecklat, som till exempel Novaschems schemaläggningsverktyg och Office 365 av Microsoft. Sedan har vi Barn- och elevregistret där Tieto har vidareutvecklat på en standardprodukt”, berättar Forsberg Philip.
Det borde utlösa en stor varningsklocka hos vem som helst med erfarenheter av IT-projekt, stora som små. I upphandlingssammanhang pratar man ofta om att ”upphandla funktionen” snarare än en viss lösning eller ett visst system. Tanken är att försöka beskriva vad man vill få ut av lösningen snarare än att i detalj beskriva beståndsdelarna som producerar det resultat du vill ha, eftersom detta leder till flera möjliga problem. Dels kanske du som upphandlare inte känner till alla lösningar på marknaden, det vill säga alla möjliga sätt att producera resultatet du vill ha. Dels kanske du begår ett misstag i beskrivningen av beståndsdelarna i lösningen, vilket kan snedvrida upphandlingen till förmån för en sämre lösning, eller beskriver lösningen på ett sådant sätt att den producerar ett annat resultat än det du eftersträvar.
Dessa risker blir förstås ännu större när man, som Stockholms stad, har att göra med flera olika system och lösningar. Om det inte finns färdiga kopplingar mellan systemen och programvarorna som ska länkas samman kommer det sannolikt att krävas mycket utveckling för att åstadkomma dem. Olika programspråk har olika fördelar och nackdelar, löser problem eller hanterar filer på olika sätt. Systemen kan vara utvecklade vid helt olika tidpunkter eller sammanhang, och därmed anpassade till helt olika IT-miljöer. I vissa fall kräver detta så mycket anpassning att det är jämförbart med att ta fram ett helt nytt system till att börja med.
Det är förstås möjligt att Stockholms stad i något slags grundläggande mening försökt upphandla funktionerna i Skolplattformen. Men ansatsen måste i så fall ha bestått i att upphandla funktionerna en och en, vilket tyder på att man kraftigt underskattat svårigheten i att gifta ihop dem.
Om den inte fungerar i det större systemet är det någon annans problem eller fel.
Ett än större misstag var däremot att inte upphandla en leverantör med huvudansvar för den uppgiften, eller för den delen med huvudansvar för slutleveransen av en fungerande skolplattform. Om man hade genomfört en sådan upphandling är det mycket möjligt, kanske till och med troligt, att ingen velat ta på sig uppdraget eftersom det hade inneburit att man också tar på sig ansvaret för system eller kopplingar till system som man inte själv har något inflytande över. Eller åtminstone att den leverantör som tagit på sig ett sådant ansvar också ställt tydliga krav på de andra leverantörerna kring så kallade API:er eller standarder, som möjliggör kopplingar mellan olika system.
Genom att stadsledningskontoret själva tog på sig ansvaret för att “sy ihop” lösningen utifrån de enskilda komponenterna tycks man i stället ha öppnat Pandoras ask. De enskilda system- eller komponentleverantörerna är i en sådan situation oförmögna att ta ansvar för något annat än att den funktion de levererar fungerar i ett isolerat sammanhang. Om den inte fungerar i det större systemet är det någon annans problem eller fel.
Schemaläggningsleverantören har ett fungerande schemaprogram som skickar ut sina schemafiler. Att Skolplattformen eller en annan funktion i systemet inte förmår att ta emot och behandla filerna får stadsledningskontoret lösa. Problembeskrivningen bekräftas exempelvis av att programmerare som arbetat med Skolplattformen har lagt in kommentarer i programkoden som illustrerar bristen på helhetssyn, vilket Jonasson lade märke till.
Vissa utvecklare har tydligen ledsnat under utvecklingsprocessen. Här är en kommentar från en JS-fil som tyder på uppgivenhet. pic.twitter.com/tzLsMbJiYB
— Måns Jonasson (@mansj) August 21, 2019
”Jag har ingen aning om var i leran den här biten passar”, löd kommentaren i en programfil.
”Helt olika budgetar”
Ann Hellenius, IT-chef på utbildningsförvaltningen och ansvarig för de fem upphandlingar som låg till grund för Skolplattformen, beskrev redan 2013 i en intervju med Upphandling24 hur staden resonerade: ”Moduluppbyggnad gör att vi kan byta ut delar i systemet när ny teknik blir tillgänglig. Det ger större frihet och vi får ett flexibelt system.”
Det låter kanske inte som en orimlig tanke, särskilt med tanke på uppgifterna om att offentliga aktörer ofta dras med gamla system som är dyra att underhålla och ställer till problem i hela IT-miljön. Men det besvarar ändå inte frågan om varför man valde att inte utveckla ett helt nytt system. Även detta nya system kunde ju utvecklats i olika, var för sig utbytbara moduler, om nu det önskemålet fanns. Skillnaden hade varit att samma aktör hade kunnat ta ansvar för kopplingarna och flödena mellan alla moduler, i stället för att fem helt fristående system skulle föras samman.
Att utvecklingen och driftsättningen av Skolplattformen drog kraftigt över budget riskerar att skymma det faktum att kostnaden var mycket hög till att börja med: 695 miljoner kronor. Som insändarskribenten och programmeraren Peter Hedenskog konstaterade i DN motsvarar det 282 års heltidsarbete för en programmerare som tjänar 1 200 kronor i timmen. Omräknat innebär det att Stockholms stad hade kunnat anställa eller hyra in nästan 300 programmerare som arbetade på heltid i ett år med att bygga ett helt nytt system. Det är svårt att föreställa sig att de resurserna inte skulle räcka för att skapa de relativt sett grundläggande funktioner som Skolplattformen ska erbjuda. Eller att det för den delen inte skulle ha gått att göra ännu billigare.
Det är förstås en bekväm syn, att ett antal hundra miljoner kronor på skattebetalarnas räkning inte skulle påverka verksamheten.
Det ska sägas att det i budgeten på 695 miljoner kronor även – enligt Stockholms stad – togs upp kostnader för utbildning av användare och drift av vissa äldre system under utvecklingstiden. Allt är således inte rena utvecklingskostnader. Kanske är 250 programmerare på heltid i ett år en mer rättvis jämförelse för vad Stockholms stad hade kunnat få för pengarna. Men som redan konstaterats räckte inte heller budgeten på 700 miljoner. Problemen som uppdagades efter lanseringen tvingade staden att föra till stora summor pengar till Skolplattformens driftbudget. Den totala budgeten för hela projektet är därmed gott och väl över en miljard. Som IT-utvecklaren Peter Hedenskog konstaterade kunde man för de pengarna ha spelat in en ny slutsäsong av HBO:s Game of Thrones eller skickat en egen satellit till Mars.
Under ”Frågor och svar om Skolplattformen” resonerar Stockholms stad kring kostnaderna. ”Kan skolplattformen orsaka underskott i skolornas budgetar? Nej, det finns inget samband eftersom det är helt olika budgetar. Det finns inte några generella besparingskrav på skolorna med anledning av skolplattformen.”
”Det finns inte några generella besparingskrav på skolorna med anledning av skolplattformen”
Det är förstås en bekväm syn, att ett antal hundra miljoner kronor på skattebetalarnas räkning inte skulle påverka verksamheten. Det går inte att veta att pengarna, om Skolplattformen inte hade existerat, verkligen hade gått till skolorna. Men om du frågar skattebetalarna om de hellre sett en förstärkning av skolornas budget med en miljard kronor – cirka en tjugondel av utbildningsbudgeten i Stockholm – än ett nytt IT-system är det ingen vild gissning att de hade valt det första.
Skolplattformen är ett stort misslyckande med många intressanta och i vissa fall komplexa beståndsdelar. Som vi ska se i nästa artikel bleknar dock både komplexiteten och storleken på misslyckandet i jämförelse med de otaliga haverier som under många år präglat en annan del av välfärden: vårdens IT-system.
Läs också:
Del två: ”Bygg inte skeppet Vasa en gång till”
Del tre: 70-talets bästa IT-system