Integrationsmønstre for applikationer i det virtuelle jobcenter

I det virtuelle jobcenter er det ønsket i højere grad at muliggøre 3. parts leverandøre at udvikle applikationer både til borgere og sagsbehandlere. Ønsket er at dette kan gøres på en fleksibel måde, hvor de nye applikationer og funktionaliteter spiller sømløst sammen med det eksisterende, her i særdeleshed DFDG og Jobnet.

A) Link mellem separate applikationer

B) Indlejrede applikationsdele

C) UI plugin. Sammensat applikation med flere serviceleverandører

D) Fuld plugin model. Dataudvidelse i DFDG og præsentation i Jobnet

Når nye applikationer skal udvikles kan disse integreres med DFDG og Jobnet på mange forskellige måder. Dette er på ovenstående tegning illustreret ved fire hoved-integrationsmønstre, sorteret efter kompleksiteten og dermed omkostning til etablering, men samtidig også efter de muligheder der åbnes op for. 

A) Link mellem separate applikationer

Dette simple integrationsmønster anvendes allerede i dag. Det er også det integrationsmønster der hyppigst anvendes på Virk.dk og Borger.dk og de applikationer der er placeret her.

Den mest gennemførte implementering i STAR regi er mellem job.jobnet.dk og info.jobnet.dk. Det første website indeholder Jobnet applikationen med CV og Jobs, det andet indeholder vejledningstekster til borgeren, og er i hovedsagen et CMS (Content Management System). Begge applikationer anvender samme grafisk udtryk (CSS). Det betyder at brugeren skal kigge meget nøje efter for at se opdage at der skiftes mellem to separate applikationer.

Link-mønstret anvendes også ved dybe link til fra Jobnet til A-kassernes hjemmesider. Disse skift er dog hæmmet af at brugeren ikke tilbydes SSO og at det grafisk udtryk skifter markant, så det reelt fremstår som et link mellem to forskellige applikationer.

Applikationer udviklet ved dette mønster vil være meget opdelte og vil ikke have begrænset indbyrdes interaktion.

For at anvende dette mønster skal følgende etableres:

  1. Fælles grafisk udtryk (CSS) som anvendes af alle applikationer
  2. Fælles login (Single Sign-On SSO) så bruger automatisk er logger på alle applikationer
  3. Alle applikationer skal bygges responsivt så de virker på forskellige klienttyper
  4. Jobnet skal opdeles på en måde så skifte mellem applikationer virker naturligt og usynligt
  5. Det kan overvejes at der åbnes op for interfaces til Jobnet applikationsdele så eksterne applikationer kan integrere til disse.

B) Indlejrede applikationsdele i Jobnet

Denne model anvendes også på Virk.dk og Borger.dk, og kendes normalt som en iFrame løsning, men kan i dag implementeres mere raffineret.

Her vil områder (rektangulære felter) på Jobnet blive åbnet op for eksternt indhold. Det betyder at forskellige typer indhold, applikationsdele, får et forud aftale og muligvis dynamisk område stillet til rådighed på Jobnet.

Det betyder samtidig at den enkelte applikationsdel skal kunne fungere sammen med den omkringliggende Jobnet applikationsramme.

Modellen tilbyder normalt bedre integration en de rene links tilbyder, men det vil stadig være lidt ufleksibelt i forhold til placering og udformning af applikationsdele.

For at anvende dette mønster skal følgende etableres:

  1. Fælles grafisk udtryk (CSS) som anvendes af alle applikationer og applikationsdele
  2. Fælles login (Single Sign-On SSO) så bruger automatisk er logger på alle applikationer
  3. Alle applikationer skal bygges responsivt så de virker på forskellige klienttyper
  4. Jobnet skal på udvalgte områder tilbyde områder hvor eksterne kan levere applikationsdele.
  5. Der bør åbnes op for interfaces til Jobnet applikationsrammen så de enkelte eksterne applikationsdele kan integrere til denne.

C) UI Plugins. Sammensat applikation med flere serviceleverandører

Denne model tilbyder at eksterne kan udvikle egentlige applikationer der kører i regi af Jobnets brugergrænseflade. Det kan være hele applikationer, enkelte sider eller mindre brugergrænsefladeelementer.

Applikationer kan trække på forretningsservices og data fra både DFDG og eksterne kilder.

Det er således kun præsentationslogikken der være være tilgængelig på Jobnet, services med underliggende forretningslogik og data vil være implementeret i de bagvedliggende forretningsservices. STAR vil fortsat være eneste leverandør af DFDG forretningsservices. Andre forretningsservices vil køre i regi af de leverandører der står for disse.

Eksternes applikationer kan f.eks. udvikles som en blanding af HTML5 og JavaScript. Det vil gøre det rimeligt enkelt at køre disse i regi at Jobnets brugergrænseflade.

Denne løsning kan være ret fleksibel, da præsentationselementer vil have mulighed for at manipulere med den eksisterende Jobnet brugergrænseflade.

For at anvende dette mønster skal følgende etableres:

  1. Fælles grafisk udtryk (CSS) som anvendes af alle applikationer og applikationsdele
  2. Alle applikationer skal bygges responsivt så de virker på forskellige klienttyper
  3. Jobnet skal tilbyde eksterne at levere applikationsdele i form af HTML5 og JavaScript
  4. Jobnets brugergrænseflade skal indeholde en snitflade som kan tilgås fra eksternes brugergrænsefladeelementer.
  5. Jobnets brugergrænseflade skal betragtes som en rammeværk som andre applikationsdele kan manipulere og interagere med.
  6. Det bør udvikles en JSON webservices snitflade mod udvalgte DFDG webservices så disse simpelt kan aftales fra JavaScript brugergrænsefladeelementer.
  7. Der bør åbnes op for interfaces til Jobnet applikationsrammen så de enkelte eksterne applikationsdele kan integrere til denne.

D) Plug-in model. Dataudvidelse i DFDG og præsentation i Jobnet

Den model ligner den klassiske model som vi pt. følger når vi udvikler Jobnet, hvor vi udvider DFDG’s datamodel løbende med nye data og services og Jobnet med nye præsentationsdele.

I denne model kommer udvidelserne dog ikke fra STAR men fra eksterne leverandører. Her skal der aftales et fælles format så alle eksterne kan levere ikke blot Jobnet præsentationslogik, men også DFDG services, forretningslogik og datamodel.

Denne model vil være meget kræve at etablere, til gengæld vil eksterne kunne levere applikationsdele næsten på lige fod med STAR, med tilsvarende tyngde.

For at anvende dette mønster skal følgende etableres:

  1. Fælles grafisk udtryk (CSS) som anvendes af alle applikationer og applikationsdele
  2. Alle applikationer skal bygges responsivt så de virker på forskellige klienttyper
  3. Jobnet skal tilbyde eksterne at levere applikationsdele i form af HTML5 og JavaScript
  4. Jobnets brugergrænseflade skal indeholde en snitflade som kan tilgås fra eksternes brugergrænsefladeelementer.
  5. Der bør åbnes op for interfaces til Jobnet applikationsrammen så de enkelte eksterne applikationsdele kan integrere til denne.
  6. Jobnets brugergrænseflade skal betragtes som en rammeværk som andre applikationsdele kan manipulere og interagere med.
  7. DFDG skal åbnet op for en plug-in arkitektur hvor eksterne kan levere programlogik der både tilbyder webservices, forretningslog og data.
  8. DFDG sikkerhedsmodel, logning og øvrige applikationsramme skal gøres tilgængelig for eksterne applikationsleverandører.