Metakatalogen
Metakatalogen, så kallar vi den funktion i vår digitala infrastruktur som har som ansvar att vara en central punkt för organisationens grundläggande data. Den punkt som andra system och processer använder för att hämta grunddata som kopplar till organisation eller person. Det som ofta kallas för masterdata.
Metakatalogen är hjärtat i den digitala infrastrukturen, för vi vet ju att data är den kanske viktigaste ingrediensen i våra tjänster och processer. Teknik både kommer och går, verksamheter förändras över tid, men data består. Hur vi än organiserar eller bygger lösningar kommer det alltid finnas ett behov av grunddata med så hög kvalitet som möjligt.
Metakatalogen gick i produktion redan 2007 och i januari 2008 började första tjänsten konsumera data via dess API:er (intranätet). Med andra ord har vi använt och utvecklat vår Metakatalog i ca 15 år. På denna sida beskriver vi bakgrund, syfte, teknik och utvecklingsplaner.
Varför en metakatalog?
I Sundsvalls kommun har vår metakatalog fyra primära syften;
- Automatisering och effektivisering av IT-administration
Metakatalogen används för att förenkla och automatisera kring IT-administration, där vanliga repetitiva sysslor hos IT-avdelningen ersätts av Metakatalogens automatik. Exempelvis skapande och stängning av användarkonton baserat på medarbetares anställning. - Vidareutnyttjande av data
Metakatalogen samlar samt sammankopplar information och data om individer och organisation, detta innebär att Metakatalogen innehåller en unik samling av information. Detta möjliggör både att data som egentligen finns i flera källkor enkelt kan nås via en plats i Metakatalogen, men även att katalogens data kan användas som nycklar för att sammankoppla olika datamängder och system med varandra. - Ökad säkerhet
Automatiseringen och kontrollen i metakatalogen innebär även att säkerheten höjs, detta då behörigheter och tillgång till användarkonton sköts helt automatiskt utefter t ex en medarbetares anställning. Exempelvis när en medarbetares anställning avslutas i lönesystemet så stängs användarens användarkonto och åtkomst till IT-system samma tidpunkt. - Minska beroendet till IT-system i verksamheten
Genom att exponera viktigt masterdata från olika verksamhetssystem så minskar vi också beroendet mot respektive grundsystem som faktiskt innehållet masterdata. Om vi exempelvis väljer att byta lönesystem så behöver inte alla digiala tjänster som nyttjar data från lönesystemet förändras, utan Metakatalogen kan fortsätta tillhandahålla samma data via samma API även efter bytet.
Arkitektur och teknik för långsiktighet
Den grundläggande principen som vi värnar hårt om är långsiktighet. Av denna anledning har vi delat upp Metakatalogen i ett antal delar, så att vi inte ska vara beroende av exempelvis Microsofts roadmap för en viss produkt.
För oss är det strategiskt viktigt att det är Sundsvalls kommun som själv ska sitta vid ratten och styra utvecklingen utefter organisationens och invånarnas behov. Inte en viss leverantör.
De fyra grundläggande delarna i Mekatalogen är följande;
- ISDB
En Microsoft SQL databas, själva hållaren av data. Här lagras den masterdata som hämtas in från respektive källsystem. ISDB håller den datamodell som håller ihop allt data i form av nycklar m.m. - Microsoft MIM
MIM är en standardkomponent från Microsoft som används som verktyg när det kommer till att exempelvis skapa användarkonton, MIM lagrar inte data utan används enbart som verktyg i den tekniska kopplingen mot olika infrastrukturkomponenter från Microsoft. - SMeX
Ett egenutvecklat webservicegränssnitt innehållande ett antal API:er för att hämta ut, lämna och ändra data i ISDB. SMeX innehåller med andra ord API:er för att enbart läsa exempelvis organisationsträd, till API:er där källsystem kan skicka in aktuellt data till ISDB. Denna del är egenutvecklad i syfte att skapa kontroll över detta lager, att det inte är beroende av en viss leverantörs utvecklingsstrategi. - Microsoft SSIS
Likt MIM är detta ytterligare ett standardverktyg från Microsoft, SSIS används för att exempelvis generera filexporter till system som inte kan interagera med API:er i SMeX.
Utöver dessa delar finns det två egenutvecklade användargränssnitt, eller GUI, som förvaltas som delar av Metakatalogen;
- Meta admin
Ett gränssnitt som används av bl a IT-personal för att söka i katalogen samt kunna ändra på vissa delar så som att lägga till nya e-postadresser. Används även som gränssnitt för daglig administration av AD-grupper, när en användare ska läggas in i en AD-grupp manuellt sker det via Meta admin och inte direkt i Active Directory, i syfte att minska antalet personer med access direkt mot AD med de risker det innebär. - Sök person
Ett gränssnitt gentemot folkbokföringen, används för att t ex söka uppgifter på en person manuellt eller se relationer. Har ersatt andra liknande lösningar där leverantörer erbjuder en webbtjänst mot folkbokföringen, men där vi genom att ha mer data kan erbjuda en mer värdeskapande tjänst.
Ägarskap och förvaltning
Metakalogen ägs inom Kommunstyrelsen och förvaltas som ett koncerngemensamt objekt, så att samtliga förvaltningar och bolag inom organisationen kan dra gemensam nytta av funktionen. Det spelar ingen roll om du är ett bolag eller en förvaltning, grunddata hämtas från den gemensamma tjänsten i Metakatalogen. På detta sätt så kan vi också bedriva gemensam utveckling som därefter ger nytta i samtliga verksamheter.
API:er i Metakatalogen
Vår målbild är att samtliga integrationer mot Metakatalogen, oavsett om det rör ett källsystem som ska föda data till Metakatalogen eller en konsument som ska ta del av data från Metakatalogen, ska prata med Metakatalogens API:er i SMeX.
SMeX består idag både av en WCF webservice med ett antal anrop samt ett REST-API som tillika har ett antal anrop. WCF-webservicen har idag många fler anrop, men där majoriteten av utveckling sker i REST-API.
Utvecklingsplan för API:er
De senaste åren har Sundsvalls kommun byggt upp en moderniserad API-infrastruktur med högkvalitativ API-managering, samtliga API:er som idag utvecklas kopplat till Metakatalogen exponeras via denna API-manager så att vi kan säkerställa åtkomst på lika villkor till våra API:er för externa parter och oss själva.
Ett första exempel är hur API:et för att nå grunduppgifter om invånare är exponerat som CitizenData via API-gateway, där du kan läsa mer om detta under sidan för koncerngemensamma komponenter.
Utvecklingsplan för Metakatalogen
Under 2022-2023 pågår den största förändringen i Metakatalogen på flera år, där vi till slut adresserar en av de större utmaningarna vi har inom kommuner och det är kvalitet på grunddata. Trots att vi haft Metakatalogen i så många år så lider även vi av problem som härrör kvalitet kring grunddata rörande organisation och ekonomiskt data.
I detta initiativ berätter vi mer ingående om arbetet som pågår, men där den grundläggande frågan handlar om att vi i framtiden vill beskriva organisation och ansvar i Metakatalogen och därefter från löne- och ekonomisystem läsa det och förhålla sig till det.
Idag är det oerhört sällan så att löne- och ekonomisystem är synkade, där man har två olika typer av organisationer beskriva, en ur ett HR-perspektiv och en ur ett ekonomiskt perspektiv. Detta leder till att det blir omöjligt att göra helt automatiserade sammanställningar och analyster utifrån ett ekonomiskt perspektiv, då en verksamhet kan ha en viss struktur organisatoriskt medan man har en annan struktur ekonomiskt.
Genom att flytta över ansvaret för att beskriva organisation ur båda dessa perspektiv till Metakatalogen skapar vi en form av nyckel mellan dessa delar, som kommer att förenkla både ekonomisk uppföljning men också en massa olika former av ekonomiska beräkningar som idag sker till stor del manuellt. Ett arbete som driver mycket administration men som också blir personberoende.
Versionshantering
Nedan listas samtliga uppdateringar på sidan.
Version 1.0 (2022-XX-XX)
Publicerad av Jari Koponen, en vidarebearbetning av ursprunglig dokumentation som finns i filen Beskrivning av Metakatalog 1.2 Pdf, 412.3 kB, öppnas i nytt fönster..