Stefan Zetterberg: ”Jäklar vad kul det är att göra skillnad”

LearningWells proffsiga Nivå-2-team på SSAB fick ta till en gammal hederlig metod för att lösa en ohållbar situation. Vår seniora utvecklare Stefan Zetterberg berättar om en ”vanlig” dag på jobbet.

I vårt digitaliseringsprojekt på SSAB ska ett större nivå-3 system bytas ut. Vårt team ansvarar för ett antal nivå-2 system som kommunicerar med just det här nivå-3 systemet. Den stora utmaningen är dock att det nya nivå-3 systemet ska köras parallellt med det gamla under en viss tid. Under den här perioden ska de båda nivå-3 systemen jämföras för att få koll på vilken information de två systemen sänder ut och får skickat till sig.

Det nya nivå-3 systemet kommunicerar med andra system på ett helt nytt sätt, rent tekniskt, jämfört med det gamla nivå-3 systemet. Det innebar att vi helt har gjort om kommunikationen mot nivå-3 i våra system. Grundtanken var att ha våra system i två versioner gående samtidigt – det gamla som enbart kommunicerar med det gamla nivå-3 systemet, samt det nya som enbart kommunicerar med det nya nivå-3 systemet.

Risk att fel data skulle matas in

Problemet var bara att det i så fall skulle krävas att operatörerna som använder våra system gör exakt samma manövrar i båda systemen, samtidigt som de använder de två olika nivå-3 systemen. Det är dessutom viktigt att operatörerna inte gör dessa manövrar i våra system med för långa mellanrum, samt att de matar in exakt samma uppgifter.

Vi kände att detta inte är hållbart. Operatörerna kommer ha mer än fullt upp och risken för att fel data matas in i våra dubblerade system är uppenbar.

Frågan var då hur vi skulle kunna underlätta för operatörerna på bästa sätt. Efter lite skissande på en whiteboard kom följande bild fram.

Vi gjorde det alltså möjligt för våra ”gamla” system att sättas i replikerings-mode. I det läget kommer systemet enbart att sköta kommunikationen mot sitt ”gamla” nivå-3 system och lägga dessa meddelanden i en transaktionsdatabas.

I den nya versionen av våra system skrevs ett nytt program som läser i transaktionsdatabasen i det ”gamla” systemet och detekterar när ett nytt meddelande kommer in. När detta sker läses meddelandet, konverteras till det nya formatet som nya nivå-3 kommunicerar med och skickas till sig själv som om det kom från det nya nivå-3 systemet. Samtidigt så tittar det nya programmet på transaktionsdatabasen i det nya systemet och detekterar när våra nya system skickar meddelanden till det nya nivå-3 systemet.

Vill du också lösa problem?

Just nu har vi lediga jobb på alla våra kontor. Bland annat söker vi en erfaren systemutvecklare för medverkan i grön omställning .

När detta sker läses det meddelandet från transaktionsdatabasen, konverteras till det gamla kommunikationsprotokollet och skickas till det gamla systemet.
I det gamla systemet skrevs också ett nytt program som enbart lyssnar på kommunikation från det nya systemet och vidarebefordrar de meddelande som ska skickas till det gamla systemet.

På detta sätt har vi gjort minst fyra vinster

– Vi kan driftsätta våra system tidigare än tänkt och få mer ”milages” på dem i ett tidigt skede.

– De operatörer som använder våra system kommer slippa extra jobb med våra system under testperioden

– Vi kan i det nya systemet se både transaktioner från det nya och det gamla nivå-3 systemet i samma databas och kan på så sätt enkelt jämföra de meddelanden som skickas och enkelt se eventuella skillnader/avvikelser

– När det stora skiftet till det nya nivå-3 systemet sker är har vi redan gjort vårt skifte. Vi behöver bara stänga av vårt nya replikeringsprogram samt stänga av vårt gamla system

Ibland är det alltså bra att återgå till gamla hederliga metoder som whiteboard – och jäklar vad kul det är att jobba med kollegor som verkligen vill göra skillnad för våra kunder och underlätta så mycket som möjligt för dem.

/Stefan Zetterberg