Hvordan fungerer MOX?
MOX bygger på rammearkitekturen og de fælles standarder, som i praksis betyder bygges en lille MOX-agent, som kan oversætte fra et systems eget proprietære format til standardens format.
En MOX-agent oversætter data fra formatet i system A til den fælles standard og lægger det i en besked. Beskeden leveres til en beskedfordeler sammen med metadata om beskeden. En beskedfordeler modtager beskeden som fordeles til abonnenter. Hvert abonnement har en kø i beskedfordeleren og fordelingen sker ud fra et filter, der evaluerer metadata. Et eller flere systemer eller MOX-agenter kan hente beskeden fra en abonnent kø. Det forudsætter at abonnenten har rettighed til at få adgang til køen.
MOX-agenten er knyttet til et og kun et system og vil anvende et ikke-standardiseret interface til dette system. Data, der udveksles via MOX, vil være i henhold til standarden – uanset om der oversættes fra proprietært format til standard eller omvendt.
For at respektere systemets rettigheder, må MOX-agenten arbejde på vegne af en af systemets brugere. Det arbejde agenten udfører, er:
- Tiltrækker (abonnerer) beskeder som den kan bruge eller gøre noget ved
- Modtager input-besked i standardformat og fortolker hvad den vil gøre
- Omsætter standardformat til systemets format
- Gør noget – fx kan en agent journalisere et dokument på basis af en dokumentbesked
- Danne en (output-)besked
- Oversætte besked fra proprietært format til standard format
- Afleverer output-besked til beskedfordeleren
Beskeder
MOX-processerne bindes sammen af beskeder. En besked vedrører en registrering på et objekt og udtrykker en tilstandsændring for objektet. F.eks. at et dokument er registreret i en dokumentservice, som typisk er realiseret fysisk i et fagsystem. Beskeder starter og afslutter MOX-processer, og en MOX-slutbesked i én proces kan være startbesked i en anden.
MOX-Agent
En MOX-agent er en tilføjelse til et eksisterende system og kan udføre en proces med beskeden som input. Når den har gennemført sin proces, giver den besked herom. Hvis den ikke kan gennemføre sin proces, giver den også besked. Beskedernes indhold og opbygning skal overholde fælles aftalte offentlige standarder og det fælles beskedformat. MOX-agenten udfører en række opgaver:
- Oversætter:
- Agenten udfører en mapping fra/til et it-systems ikke-standardiserede format og til/fra et givent standardformat.
- Udfører en lille del af en proces imod et it-systems snitflade:
- Agenten kan rumme en eller flere MOX-processer. Dermed kan MOX-agenten lade et it-system indgå i tværgående processer, selvom det egentlig ikke er bygget til det oprindelig.
- Kender snitfladerne:
- Til beskedfordeler: MOX-agenten skal kunne afsende beskeder igennem en beskedfordeler, og derfor skal den have snitflade til en beskedfordeler.
- Til et it-system: MOX-agenten kommunikerer med it-systemet igennem en snitflade.
En MOX-agent udviklet til én tværgående proces kan genbruges i andre tværgående processer, hvori de samme MOX-processer indgår.
Muligheder med MOX-agenter
MOX-konceptet kan bruges til at udvikle forskellige MOX-agenter, som bl.a. kan gøre det muligt at:
- Lave automatiske organisationsopdateringer
- Tømme fællespostkasse og gemme dokumentet i en fil, samt giver besked om det
- Håndtere indgående og udgående post (dokumenter) og tilføre metadata og udføre dokumentregistrering
- Overvåge KLE (KL Emnesystematik) og sende en klassifikationsbesked, når der er ændringer i KLE-online
- Tilføre et beskedinterface på KITOS, hvormed man kan udveksle beskeder efter rammearkitekturstandarderne
- Udveksle organisationsoplysninger med OIO standarden Organisation
- Håndtere mapning mellem rammearkitekturens objekttyper og forskellige it-systemer
Beskedfordeler
Nedenstående figur illustrerer, hvad der kan opnås, såfremt fagsystemer implementerer agenter, der tilfører dem MOX-processerne: De to systemprocesser i henholdsvis it-system 1 og it-system 2 (MOX Proces A og MOX Proces B) interagerer ved, at slutbesked fra A indgår som startbesked i B. A afleverer sin slutbesked til en beskedfordeler, og B skal have tegnet et abonnement for at få beskeden. Beskeden bliver ikke ændret fra A til B. Det er altså abonnementet, der udtrykker en sammenhæng mellem MOX-processerne.
Kommunale cases
Flere kommuner arbejder eller har arbejdet med MOX. Enten i selvstændige projekter, eller som en del af OS2-fællesskabets OS2MO, som bruges til at binde organisationsdata sammen.
Hjørring Kommune – MOX binder organisationen sammen
I Hjørring Kommune bruges MOX i flere sammenhænge, særligt i relation til det igangværende monopolbrud. Kommunen bruger MOX-agenter til at binde organisationsdata sammen med MOX-integrationer mellem Silkeborg Data (leverandør), OS2MO (fællesskab) og Active Directory mfl.
Spørgsmål til kommunens brug af MOX kan rettes til Peter Sebastian Hansen (psh@hjoerring.dk), udviklingskonsulent i Hjørring Kommune.
Horsens Kommune - beskedfordeling
I Horsens Kommune bruges MOX primært som message queingteknikker, til at fordele opdateringer fra kommunens OIO Organisation database. Her udstiller kommunen organisationsændringer i organisationen til andre applikationer og systemer, herunder OS2 Rollekatalog.