Skip to main content
Caspian Almerud
SYSTEM OCH ARBETSFLÖDEN

Systemintegration: när två system bör kopplas ihop – och när de inte bör det

Caspian Almerud portrait
Caspian Almerud
Author · Stockholm, Sweden
8 min read·Published

Sju frågor som hjälper ett mindre team att avgöra när en systemintegration är motiverad, vilken nivå som räcker och vad som måste ägas när flödet går fel.

Två verksamhetssystem, ett gemensamt dataobjekt och ett beslut mellan integration och en enklare överlämning.

Två system innehåller samma kunduppgift. Någon kopierar den från det ena till det andra, ibland direkt och ibland på fredag eftermiddag. Det låter som ett självklart integrationsproblem. Ofta är det det. Men om systemen använder olika definitioner, ingen äger informationen eller processen fortfarande ändras varje vecka kan en automatisk koppling mest flytta problemet snabbare.

Systemintegration är därför inte bara frågan om två system kan kopplas ihop. Det är beslutet om vilken information som ska flyta, när den ska flyta, vilket system som bestämmer och vad som ska hända när överföringen misslyckas.

Den här guiden ger ett praktiskt beslutsunderlag före verktygsvalet. Om själva arbetsflödet fortfarande är otydligt är det bättre att börja med processkartläggning och automatiseringsberedskap.

Vad är systemintegration?

Systemintegration innebär att två eller flera system utbyter information eller startar handlingar hos varandra. Ett CRM kan till exempel skicka en godkänd affär till ett ekonomisystem. Ett formulär kan skapa eller uppdatera ett kundkort. Ett projektverktyg kan ta emot en uppgift när en order når en bestämd status.

Kopplingen kan vara en färdig integration från leverantören, ett arbetsflöde i en integrationsplattform, en schemalagd filöverföring eller anpassad kod mot systemens API:er. Metoden är sekundär. Först behöver verksamheten vara överens om flödet, informationen och ansvaret.

Diggs ramverk för digital samverkan är skrivet för offentlig sektor, men en grundprincip är användbar även i mindre verksamheter: berörda processer och den information som byts behöver dokumenteras, och ägarskap och ansvar behöver vara definierade. En teknisk koppling kan inte ensam skapa den samsynen.

Sju frågor före ni kopplar ihop systemen

1. Vilket konkret problem ska försvinna?

Beskriv dagens friktion utan att nämna en lösning: kunduppgifter registreras två gånger, lagersaldo blir inaktuellt, en handläggare väntar på en status eller rapporteringen kräver manuell sammanställning.

Sätt ett basvärde om det går. Hur ofta uppstår arbetet? Hur lång tid tar det? Vilka fel eller förseningar följer? Om problemet är sällsynt och konsekvensen liten kan en tydlig manuell rutin vara bättre än en integration som ska byggas, övervakas och underhållas.

2. Vilket system är källa för varje uppgift?

Bestäm var kundens namn, orderstatus, pris, projektägare och andra centrala fält får sin auktoritativa version. Två system kan visa samma uppgift, men båda bör inte få ändra den fritt utan en uttalad regel.

Skriv också vad som händer vid konflikt. Ska ekonomisystemets organisationsnummer alltid vinna? Får CRM-systemet uppdatera fakturaadressen? Om den frågan lämnas till själva flödet får ni en teknisk regel som ingen i verksamheten har beslutat om.

3. Vilken händelse ska starta överföringen?

"När en affär är klar" är inte tillräckligt exakt om olika personer tolkar klar på olika sätt. En användbar trigger är observerbar: status ändras till vunnen, betalning registreras eller ett godkännande sparas.

Bestäm sedan om mottagaren behöver informationen omedelbart. Microsofts arkitekturstöd skiljer mellan realtidsflöden via exempelvis API eller webhook och överföring i batch. Ett nattligt eller timvist flöde kan vara enklare och fullt tillräckligt. Realtid är ett krav, inte en kvalitetsstämpel.

4. Förstår systemen informationen på samma sätt?

Jämför fältnamn, format, obligatoriska värden, identifierare och tillåtna statusar. "Kund" kan betyda ett företag i ett system och en kontaktperson i ett annat. "Avslutad" kan betyda levererad, fakturerad eller betald.

Gör en liten datamappning före implementationen. Den ska visa källa, destination, format, omvandling och vad som händer när värdet saknas. Om mappningen blir full av specialregler har ni hittat ett verksamhetsproblem eller en integrationskostnad som behöver beslutas öppet.

5. Vad händer när något går fel?

Nätverk, behörigheter och externa tjänster kan tillfälligt fallera. En integration behöver därför kunna visa vad som lyckades, vad som misslyckades och vad en ansvarig ska göra. Automatiska återförsök kan hjälpa vid tillfälliga fel, men de behöver vara begränsade och säkra så att samma order eller faktura inte skapas flera gånger.

Definiera minst loggning, larm, ägare och ett manuellt reservförfarande. Om ett flöde är viktigt för intäkter, leverans eller rättigheter bör ni också prova felvägen före lansering. En grön linje i ett flödesschema är inte driftbevis.

6. Vilken åtkomst och data exponeras?

Ge integrationen minsta nödvändiga behörighet. Ett flöde som bara läser produktstatus behöver normalt inte kunna radera kunder. Dokumentera vilka personuppgifter eller andra känsliga uppgifter som lämnar ett system, varför de behövs och hur länge eventuella mellanlagringar finns kvar.

Undvik att bygga ett kritiskt företagsflöde kring en enskild medarbetares personliga inloggning. När personen byter roll eller slutar kan kopplingen annars sluta fungera utan att verksamheten förstått beroendet.

7. Vem äger flödet efter leverans?

Utse en verksamhetsägare för resultatet och en teknisk ägare för drift och förändringar. Skriv ner hur integrationen testas när något av systemen ändrar fält, API-version eller behörighetsmodell. Bestäm också var fel syns och vem som agerar.

En integration utan ägare är bara ett framtida mysterium med autentiseringsuppgifter.

När systemen inte bör kopplas ihop ännu

Vänta eller välj en enklare lösning när:

  • processen saknar tydlig start, slut eller ansvarig
  • samma begrepp betyder olika saker och ingen har mandat att besluta
  • behovet är tillfälligt eller volymen så låg att underhållet blir större än nyttan
  • källsystemet saknar en stabil export, webhook eller dokumenterat API
  • flödet skulle ge ett system mer data eller behörighet än uppgiften kräver
  • fel inte kan upptäckas, rättas eller spelas om på ett kontrollerat sätt
  • verksamheten vill synkronisera allt, men inte kan säga vilket beslut synkroniseringen ska förbättra

Alternativet behöver inte vara handskrivna lappar. En standardiserad export, en validerad importfil, en gemensam vy eller en tydlig uppgift vid rätt tidpunkt kan lösa behovet med mindre koppling. En sådan lösning kan också fungera som test innan en mer permanent integration byggs.

Välj minsta hållbara integrationsnivå

Utgå från problemet och välj den enklaste nivå som uppfyller kraven:

  1. Tydlig manuell överlämning: låg volym, hög bedömning och liten konsekvens vid väntan.
  2. Export och import i batch: data behöver flyttas regelbundet men inte i realtid.
  3. Färdig leverantörsintegration: standardflödet motsvarar behovet och ansvarsfördelningen är begriplig.
  4. Integrationsplattform: flera regler, transformationer eller system behöver samordnas och flödet kan förvaltas där.
  5. Anpassad API-integration: krav på kontroll, skala eller verksamhetslogik motiverar egen utveckling och löpande tekniskt ägarskap.

Verktyg som Zapier, n8n eller andra integrationsplattformar kan sänka tröskeln för implementation. De tar däremot inte bort behovet av datadefinitioner, behörigheter, övervakning och en utsedd ägare.

Ett litet exempel: vunnen affär till startklart projekt

Anta att säljaren markerar en affär som vunnen i CRM-systemet. Projektledaren behöver kund, omfattning, ansvarig och startdatum i projektverktyget. I dag skickas informationen i ett meddelande och projektledaren skapar projektet manuellt.

Före integrationen enas teamet om att "vunnen" betyder signerad offert, att CRM-systemet äger kund- och offertuppgifterna och att projektledaren kompletterar bemanning i projektverktyget. De bestämmer vilka fyra fält som krävs, vad som ska hända om startdatum saknas och vem som får ett larm om projektet inte kan skapas.

Först då väljer de teknik. Kanske räcker en färdig koppling. Kanske behövs ett arbetsflöde som validerar uppgifterna. Kanske är volymen fem projekt per år och en checklista fortfarande mest hållbar. Beslutet kommer från processen, inte från att ett verktyg råkar ha en färdig anslutning.

Ett beslutsunderlag som går att använda

Innan implementationen bör ni kunna visa:

  • problemet och ett före-mått
  • avgränsad start, trigger och önskat resultat
  • källa för varje uppgift och regler vid konflikt
  • datamappning och nödvändiga behörigheter
  • förväntad volym och krav på svarstid
  • felhantering, loggning och manuellt reservförfarande
  • verksamhetsägare, teknisk ägare och plan för förändringar
  • vald nivå samt varför ett enklare alternativ inte räcker

Det räcker för att göra en första uppskattning och bygga ett begränsat test. Mät samma friktion efter testet och kontrollera även nya fel, extra administration och beroenden. Om integrationen sparar klick men skapar daglig felsökning har den inte effektiviserat särskilt mycket.

Källor

Vanliga frågor

Vad kostar en systemintegration?

Kostnaden beror på antalet system och flöden, API:ernas kvalitet, datamappning, säkerhetskrav, felhantering, testning och förvaltning. Börja med ett avgränsat beslutsunderlag och ett kritiskt flöde i stället för en total uppskattning för "alla system".

Måste en integration fungera i realtid?

Nej. Realtid behövs när väntan skapar ett faktiskt verksamhetsproblem. För rapportering, synkronisering eller större datamängder kan schemalagd batch vara enklare och mer robust.

Är en no-code- eller low-code-koppling en riktig systemintegration?

Ja, om den överför information eller startar handlingar mellan system. Samma frågor om källa, behörighet, fel, övervakning och ägarskap gäller oavsett hur mycket kod som skrivs.

Vem ska äga integrationen?

En person i verksamheten bör äga resultatet och prioriteringarna. En teknisk ägare bör ansvara för drift, behörigheter, fel och förändringar. Roller kan innehas av samma person i ett litet team, men båda ansvarsområdena behöver vara uttalade.

Nästa steg

Välj en återkommande överlämning mellan två system och besvara de sju frågorna innan ni begär en lösning. Om problemet börjar tidigare i processen, använd processkartläggningsverktyget. Om ni behöver hjälp att avgränsa ett första integrations- eller automatiseringsflöde kan ni läsa hur jag arbetar med praktisk AI och verksamhetsutveckling eller mejla Caspian Almerud.

References

  1. Digg – Verksamhetsperspektivet i digital samverkan
  2. Microsoft Azure Architecture Center – Architectural approaches for integration and data access
  3. Microsoft Azure Architecture Center – Retry pattern

Related writing