Hur en halv miljard, av dina pengar, går upp i rök

Jag sitter och läser dokument, hundratals sidor, om hur migrering ifrån ett system till ett annat ska gå till. Den intellektuella utmaningen är att försöka ignorera det faktum att om man hade fattat ett annat grundbeslut hade alla dessa sidor varit helt onödiga. Man kan få huvudvärk för mindre. Projektet har nu fått ett eget liv, snöbollen i rullning är så tung att det inte går att rubba den. Det är som att se ett tåg på väg mot ett stup och försöka ropa till de ombord att de måste dra i nödbromsen för att stanna det och rädda sig själva, men ingen hör. Nu börjar allt fler sansade röster som har försökt styra och påverka projektet i mer rimlig riktning ge upp, överge skutan och kvar blir alltmer renodlad dårskap.

Det handlar om Ladok3.

I grunden fanns det tre olika vägar att gå för att skapa det nya systemet Ladok3. Utgå ifrån det system som redan finns, utgå ifrån något annat system som redan finns, eller göra ett helt nytt system ifrån scratch, själv. Det här är historien om hur man kom fram till att det sista alternativet är det bästa genom att systematiskt överdriva riskerna med alternativen samtidigt som man ignorerar riskerna med det alternativ någon uppenbart har velat välja ifrån början.

HISInOne

Svenska universitet behöver någonstans att lagra studieresultat. Dessa resultat behöver bla CSN för att göra sina bedömningar om utbetalningar om studiemedel. En rimlig fråga är om det här är unikt för Sverige, eller om det kanske kan vara så att någon annan har samma problem och gjort något för att hantera det? Häpnadsväckande nog visar det sig att så är fallet. Ett stort sådant projekt med en färdig produkt för studiedokumentation finns inte särskilt långt bort på andra sidan Östersjön, HISInOne. Projektet gör även mycket annat som svenska universitet förmodligen skulle ha nytta av.

Så det gjordes en analys av HISInOne för att bedöma förutsättningarna för att basera ett nytt Ladok på det. Inte helt förvånande visade det sig att universitet i Tyskland har ungefär samma behov som universitet i Sverige, med vissa undantag.

Gruppen har inte hittat något som skulle göra att HISinOne inte skulle kunna vara en rimlig grund för ett nytt Ladok. Det finns detaljer som saknas, men de är inte av sådan storlek att systemet inte skulle vara användbart med vissa mindre justeringar.

Ändå har man senare totalt utelämnat HISInOne-spåret ur all vidare analys. Varför är inte publicerat någonstans och man får gräva om man är intresserad av att veta. Det finns en liten vink i analysen.

Det vi däremot kan konstatera är att vi inte kan avfärda systemet i detta skede, eftersom allt än så länge ser lovande ut.

För att kunna svara på om HISinOne kan bli grunden för det nya Ladok 3 krävs en fördjupad studie, där man kan laborera med och testa HISinOne rent konkret.

Ordvalet säger en del, man har inte kunnat ”avfärda det”. ”I detta skede”. Men man kommer att lyckas. Det visar sig nämligen att det avsattes resurser för att göra en ”fördjupad” studie, resurser motsvarande några veckors arbete för en person för att analysera ett komplext system, men man stötte på problem och använde inte ens dessa i sammanhanget infinitsimala resurser. För när man skickade några knepiga frågor till tyskarna visade det sig chockerande nog att de inte stod på tårna och kastade sig över möjligheten att supportera den svenska miniutvärderingen. Ansträngningen avbröts omedelbart efter bara ett par veckor.

Den upplevda bristen på support i utvärderingen var tillräckligt för att omgående överge hela spåret. Det är bara det att den totala frånvaron av något motsvarande stöd inte har varit ett argument mot något annat alternativ.

HISInOne-spåret slängdes i papperskorgen utan vidare process för att ”verksamheten” såg en risk för att våra svenska särkrav inte skulle få önskad uppmärksamhet i Tyskland och att det skulle vara svårt att få gehör för de tillägg och förändringar man ifrån svenskt håll upplevde sig behöva göra. Trots att man redan har konstaterat att systemet är ”flexibelt” och byggt för att man ska kunna göra lokala anpassningar, att de ändringar som behövs är ”detaljer” och ”mindre justeringar”.

Och så var kommentarerna i källkoden på tyska. Krauts.

Refaktorering

HISInOne är inte det enda system som fyller en stor del av de behov svenska universitet har. Det finns ett annat med häpnadsväckande god täckning av de funktionella krav man ställer på Ladok3, nämligen Ladok2. Det råkar dessutom ha egenheten att det redan är implementerat och i drift på samtliga svenska universitet och högskolor. I princip skulle Ladok3 kunna peka på Ladok2 och lägga ner sig självt imorgon och åstadkomma en mycket god kravtäckning till en kostnad av noll kronor.

En rimlig frågeställning är om det går att utgå ifrån Ladok2 och bygga om det till att tillfredsställa de ytterligare krav i Ladok3 som Ladok2 inte uppfyller? Dvs successivt refaktorera systemet, ett fundamentalt arbetssätt inom agila metoder.

Det har gjorts en utredning och svaret är, naturligtvis, ja, det går utmärkt. Förutom att man påstår att det inte går alls.

Myt 1: Det går inte att åstadkomma en nationell databas med refaktorering.

Det är lite oklart var kravet på nationell databas egentligen kommer ifrån och varför det blev så viktigt. En populär uppfattning är att det man egentligen vill uppnå, men inte törs säga, är att man vill lägga ner två av landets tre driftcentraler för Ladok för att samordna och spara pengar. Det är naturligtvis möjligt att uppnå detta utan att ändra Ladok alls, stoppa alla maskiner på samma ställe så är det klart. Ett annat sätt att uppnå samma sak utan att behöva säga det rent ut är att påstå att det finns stora funktionsvinster av andra slag, lite oklart vilka, som man bara kan uppnå genom en gemensam databas. En enda databas är förstås i sig en kostnads- och komplexitetsdrivare av rang, förutom att det innebär en kolossal risk. Uttrycket att samla alla ägg i samma korg kanske är bekant. Men strunt i det.

Ett av kraven är dock av särskilt stort intresse, nämligen DES-01-02 rörande kravet om nationell installation. Den stora begränsningen för refaktoreringsspåret är som tidigare påpekats lokala databaser för respektive högskola. Detta är dock inte samma sak som kravet på nationellt installation. Tittar man på Ladok så finns det idag tre driftcentraler, men det skulle lika gärna kunna vara ett driftställe.

Nu råkar det inte alls vara omöjligt att åstadkomma en nationell databas med refaktorering. I det helikopterperspektiv de här utredningarna är gjorda är det i själva verket trivialt. Det är bara att lägga till lärosäte i alla nycklar och konkatenera ihop tabellerna så är det klart. I verkligheten är det förstås inte riktigt så enkelt, men det är inte heller särskilt långt ifrån.

Att förändra dagens Ladok till att ha en gemensam databas för alla högskolor skulle förmodligen vara mycket arbetsamt. Ett stort problem skulle vara att migrera data från existerande lokala installationer till det nya nationella systemet. Detta är förstås ett stort problem som även ett nybygge skulle behöva hantera, men en av huvudpoängerna med en refaktorering är just att minska riskerna genom att gå försiktigt fram och därför antas systemet även fortsättningsvis vara lokalt för denna lösning.

Svårigheterna har alltså inget särskilt att göra med refaktorering. Att åstadkomma en nationell databas är svårt och riskfyllt, oavsett metod. Ändå lyckas man på något sätt landa i denna lösryckta olyckliga formulering som allt sedan utgått ifrån.

Ett nationellt system är svårt att uppnå via refaktorering.

Eh, ja? Eller alltså. Ett nationellt system är svårt att uppnå. Punkt. Det har inte ett skvatt med refaktorering att göra.

Myt 2: refaktorering innebär större risker för Ladok3 än att skriva om systemet ifrån scratch.

Här börjar det bli så absurt att det är riktigt, riktigt svårt att förstå vad som pågår. Påståendet är helt befängt, naturligtvis är det precis tvärtom. Hur blev det så här?

Lite efterforskningar visar att man inte har tyckt att den analys som har gjorts hittills riktigt har pekat på det någon egentligen vill, dvs att man ska göra om systemet ifrån scratch. Därför har man gått tillbaka till analytikerna, men nu med den uttryckliga uppgiften att rekommendera ett alternativ utan att ta hänsyn till risk.

Sug på den. I ett projekt som redan i det här läget bedöms kosta i storleksordningen en halv miljard offentliga medel, minst, och som rör ett system som påverkar själva kärnverksamheten och är kritiskt för en lång rad myndigheter, är risk en faktor man inte ska bry sig om när man författar de rekommendationer som det sedan ska beslutas om.

Men det är inte nog med det, för i själva verket struntar man inte alls i risk. Man struntar bara i riskerna med att göra ett nytt system. De små risker som finns med att refaktorera bryr man sig fortfarande om i allra högsta grad. Riskerna med det tyska spåret har redan tidigare diskvalificerat det så att det inte ens får vara med i jämförelsen.

En övning i logik

Så nu väger man för- och nackdelar mellan ett konkret, befintligt system, med kända brister och en detaljerad, välutredd väg med kända problem mot Ladok3, mot en ren idealiserad fantasiprodukt som det inte finns någon plan för hur man ska realisera. Och kommer fram till att fantasiprodukten är den bästa, billigaste och säkraste vägen att nå målet. För att man inte vet någonting om det alternativet.

Snabbaste väg till mål som erbjuder bäst flexibilitet. Större tekniska valmöjligheter.

Vi har ingen aning om hur vi ska göra, alltså har vi större tekniska valmöjligheter. Vi har ingen aning om hur produkten kommer att bli, alltså fyller den alla krav. Vi har ingen aning om hur mycket det kommer att kosta, alltså är det billigare. Vi har ingen aning om hur lång tid det kommer att ta, alltså går det fortare.

Det är inget annat än bisarrt. För de som törs och är beredda att riskera hjärnblödning är det bara att läsa några sidor total intellektuell härdsmälta.

Att skriva om systemet ifrån scratch är, naturligtvis, kolossalt riskfyllt och en – dålig – idé –  –  – många – sätt – som – andra – redan – skrivit – om, och det finns exakt ingenting som säger att det vare sig ger billigare, snabbare eller bättre resultat. Men nu är det så att om fem, sex, sju år eller så och en halv till en miljard senare kommer vi kanske att ha ett nytt system. Som är ungefär likadant som det vi redan har, fast annorlunda.

Det finns många andra egendomligheter i det här projektet som jag kanske återkommer till. Jag kan ha fel. Allting kanske går jättebra. Men jag vet vilken häst jag satsar pengar på.

Mina egna pengar.

 

Jag skrev detta i första person av en anledning.
Det är dock i sak i linje med det KTH länge har uttryckt både formellt och informellt.
De mer frivola och tillspetsade formuleringarna får jag däremot stå för själv.

/Fredrik

Profilbild
Jag arbetar som chef över IT-arkitekturgruppen på IT-avdelningen på KTH.

12 reaktioner till “Hur en halv miljard, av dina pengar, går upp i rök”

  1. Jag har egentligen bara en fråga. Hur mycket tjänar de som gjort rekommendationen på att man utvecklar ett helt nytt system?

    Eventuella andra frågor om lobotomi lämnar jag därhän.

  2. Jag är ju inte insatt i LADOK, men dina argument går ju inte att soppa under mattan. Det låter ju verkligen som det behövs en stor genomlysning av projektet. Bra och modigt skrivet!

  3. Den här kritiken och annan har vädrats öppet förut utan effekt, även om jag kanske spetsar till det lite. Den som lever får se. Nu råkar projektet vara riggat så att Ladok3 kommer att skylla på universiteten när (ok, om) det går dåligt vilket jag kanske återkommer till, så tyvärr tror jag inte att det hjälper att man ”håller ögonen på dem”. Räddningsplankan för de ansvariga är redan på plats.

  4. Sorry Fredrik, din kommentar hade fastnat i spam-kontrollen här. Självklart finns det ett antal intressenter bakom detta. Dels personer som gagnas direkt, dels i form av resurser till de som ska utföra arbetet.

    Men det finns andra, mjukare, aspekter i det här som att det är ett område som är eftersatt sedan en tid, och det finns en känsla av att vi måste satsa ordentligt på det här och äntligen gör man något.

    Det finns också en stor trötthet i diskussionen som sådan. Det är polsk riksdag med ganska många inblandade myndigheter och ganska många har vi det här laget nått läget där man struntar i vad man gör, bara man gör något, vad som helst.

    Så det finns en stor pott pengar, några som vill sätta sprätt på dem och trötta människor som inte orkar tjafsa emot. En bra kombination. Jag hade inte haft någonting emot det alls om pengarna hade kommit ifrån någon av de inblandade.

  5. Själv ägnade jag en del tid åt att presentera LADOK3-folket för Kulai-projektet när det begav sig. Min uppfattning är att man avfärdade Kuali eftersom dom inte var i18n redan – som om 180MSEK inte skulle kunna betala för ganska mycket i18n…

  6. Eller hur? Jag har en känsla av att om man viftat med ett par hundra miljoner framför tyskarna hade de nog också visat ett visst intresse.

  7. > och en – dålig – idé – på – så – många – sätt – som – andra – redan – skrivit – om,

    Så många döda länkar på samma ställe var det ett tag sedan man såg.

  8. Nu finns ladok 3 och det visade sig att Fredrik Jönsson hade helt rätt!

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *