40
Fra tjenesteorientert til dataorientert integrasjon Stian Danenbarger / 54°25′52″S 3°17′52″E [email protected] @stidan no.linkedin.com/in/stian Sømløs, automatisk oppdatert tilstands- informasjo n Sømløse, automatise rte prosesser

Fra tjenesteorientert til dataorientert integrasjon

Embed Size (px)

Citation preview

Page 1: Fra tjenesteorientert til dataorientert integrasjon

Fra tjenesteorientert til dataorientert integrasjonStian Danenbarger / 54°25′52″S 3°17′52″[email protected] @stidan no.linkedin.com/in/stian

Sømløs, automatisk oppdatert tilstands-

informasjon

Sømløse, automatiserte prosesser

Page 2: Fra tjenesteorientert til dataorientert integrasjon
Page 3: Fra tjenesteorientert til dataorientert integrasjon

«Integrasjonsbuss»Businesscase:

Reduserer endringskost fra N² → 2N

...eller..?

Page 4: Fra tjenesteorientert til dataorientert integrasjon

«Integrasjonsbuss»N² → 2N forutsetter to systemkvaliteter

• Endringsevne• Samhandlingsevne (interoperabilitet)

som må eksternaliseres (delegeres) til bussen

Page 5: Fra tjenesteorientert til dataorientert integrasjon

Systemkvalitet: Endringsevne

«Modifiability is about change, and our

interest in it centers on the cost and risk of

making changes»Ref.: Bass et al, 2012

Page 6: Fra tjenesteorientert til dataorientert integrasjon

ENDRINGSKOST ved håndkoding:

antall integrasjoner

*endringskost ved

håndkoding

ENDRINGSKOST ved

automatisering:

(antall integrasjoner

*endringskost ved automatisering)

+implementasjonsk

ost ved automatisering

Ref.: Bass et al, 2012

Systemkvalitet: Endringsevne

Compile or build time

Deploy time

Startup or initializatio

n time

Runtime

Automation(dynamic)

Hand coding

Page 7: Fra tjenesteorientert til dataorientert integrasjon

«Integrasjonsbuss»N² → 2N forutsetter at bussen tar ansvar for

runtime (dynamisk) binding av alle avhengigheter til de N andre integrerte

systemene – dvs. alle håndkodede bindinger må kun være mot selve bussen…

Page 8: Fra tjenesteorientert til dataorientert integrasjon

Systemkvalitet: Samhandlingsevne

«Interoperability is about the degree to which two or more systems can usefully

exchange meaningful information via interfaces in

a particular context» Ref.: Bass et al, 2012

Page 9: Fra tjenesteorientert til dataorientert integrasjon

Ref.: Bass et al, 2012

Systemkvalitet: Samhandlingsevne

Compile or build time

Deploy time

Startup or initializatio

n time

Runtime

Automation(dynamic)

Hand coding

Page 10: Fra tjenesteorientert til dataorientert integrasjon

«Integrasjonsbuss»

Page 11: Fra tjenesteorientert til dataorientert integrasjon

Composability

Conceptual interoperability

Dynamic interoperability

Interoperability

Pragmatic interoperability

Semantic interoperability

Integretability

Syntactic interoperability

Technical interoperability

Compile or build time

Deploy time

Startup or initializatio

n time

Runtime

Realiteten? Om samhandlingsevnen i en typisk «integrasjonsbuss» i 2016…

Hand coding

Automation(dynamic)

Turnitsa et al: “Levels of

Conceptual Interoperability Model – LCIM”

(2005)

Page 12: Fra tjenesteorientert til dataorientert integrasjon

Syntaktisk interoperabilitet?

Page 13: Fra tjenesteorientert til dataorientert integrasjon

Composability

Conceptual interoperability

Dynamic interoperability

Interoperability

Pragmatic interoperability

Semantic interoperability

Integretability

Syntactic interoperability

Technical interoperability

Compile or build time

Deploy time

Startup or initializatio

n time

Runtime

Realiteten? Mer ambisiøse «integrasjonsbuss»-implementasjoner i 2016…

Hand coding

Automation(dynamic)

Page 14: Fra tjenesteorientert til dataorientert integrasjon

Felles datamodell…

Page 15: Fra tjenesteorientert til dataorientert integrasjon

IFS

360

Turnus

SharePointOppgaver

Tidlig binding mot felles datamodell

Page 16: Fra tjenesteorientert til dataorientert integrasjon
Page 17: Fra tjenesteorientert til dataorientert integrasjon

Composability

Conceptual interoperability

Dynamic interoperability

Interoperability

Pragmatic interoperability

Semantic interoperability

Integretability

Syntactic interoperability

Technical interoperability

Compile or build time

Deploy time

Startup or initializatio

n time

Runtime

FORBI samhandlingsevnen til mer ambisiøse «integrasjonsbusser» i 2016…

Automation(dynamic)

Page 18: Fra tjenesteorientert til dataorientert integrasjon

Arkiv

HR Regnskap

Composability: Hva om vi kunne kople data og datamodeller dynamisk etter behov?

DuplikaterKontakt=Kontakt

Location= Avdnr Empnr=ID1

Avdnr=Depnr

Page 19: Fra tjenesteorientert til dataorientert integrasjon

Arkiv

HR

Turnus

Regnskap

Lønn

Forutsetter konseptuell interoperabilitet: Behold datamodellene fra kildene – kopier dataene inn i en felles «space»

Page 20: Fra tjenesteorientert til dataorientert integrasjon

IFS

360

Super-office

SharePointOppgaver

Sen binding av datamodell

Outlook

Page 21: Fra tjenesteorientert til dataorientert integrasjon

Arkiv

HR

Turnus

Regnskap

Lønn

Dynamisk interoperabilitet: Integrasjon via «nav» med løse koplinger og standardisert protokoll

Nav

Page 22: Fra tjenesteorientert til dataorientert integrasjon

Anbefalte database-typer for formålet…Grafdatabaser

Trippel-databaser (spesialiserte grafdatabaser)

Ref.: http://db-engines.com/en/ranking/graph+dbmsRef.: http://db-engines.com/en/ranking/rdf+store

Page 23: Fra tjenesteorientert til dataorientert integrasjon

女性

Semantisk integrasjon

源氏

男性

夕顔との出会い

夕顔

出来事

参加 参加

Typer

subtypesubtype

type-instancetype-instance

Fictional characte

r

Prince

Genji

type-instance

sameAs

Fictional work

The Tale of

Genji

type-instance

appears-in

Page 24: Fra tjenesteorientert til dataorientert integrasjon

Identifisering av duplikaterLeverand

ør

Kunde

Selskap

Kunde

CRM

Kunde

Billing

Triple Store Duke

Field Record 1 Record 2 Probability

Name acme inc acme inc 0.9Assoc no 17747770

70.5

Zip code 9161 9161 0.6Country norway norway 0.51Address 1

mb 113 mailbox 113

0.49

Address 2

0.5

Page 25: Fra tjenesteorientert til dataorientert integrasjon

Produkt

navn

pris beskrivelse

Fysisk Produk

t

bilde

vekt

Tjeneste

kompetansekrav

Page 26: Fra tjenesteorientert til dataorientert integrasjon

Arkiv

HR

Turnus

Regnskap

Lønn

Dataorientert integrasjon!

Nav

Ansatt

L/T-arter

AnsattAnsattAnsatt

L/T-arter

Page 27: Fra tjenesteorientert til dataorientert integrasjon

Composability

Conceptual interoperability

Dynamic interoperability

Interoperability

Pragmatic interoperability

Semantic interoperability

Integretability

Syntactic interoperability

Technical interoperability

Compile or build time

Deploy time

Startup or initializatio

n time

Runtime

Dataorientert integrasjon: FORBI samhandlingsevnen til ambisiøse

«integrasjonsbusser» i 2016…

Automation(dynamic)

Page 28: Fra tjenesteorientert til dataorientert integrasjon

Dataorientert integrasjon i Norge – noen eksempler• Hafslund – Integrasjon, Arkiv, Søk• Hafslund Nett – Integrasjon• Statnett – Integrasjon, Arkiv, Søk• Oslo kommune – Arkiv• DNV-GL – Integrasjon, Søk• Riksantikvaren – Integrasjon, Arkiv, Søk• Høyre – Integrasjon• Riksarkivet – Integrasjon, Arkiv• Jernbaneverket – Integrasjon• DIFI – Arkiv, Integrasjon

Page 29: Fra tjenesteorientert til dataorientert integrasjon

«Integrasjonsbuss»Businesscase:

Reduserer endringskost fra N² → 2N

...eller..?

Page 30: Fra tjenesteorientert til dataorientert integrasjon

Tjeneste-/meldingsorientert

Dataorientert

Antall systemer som er datakilder (mastere) for mottakerenTim

er F

TE fo

r å in

tegr

ere

ny m

otta

ker

Tjenesteorientert eller dataorientert? To scenarioer for sammenlikning av kost

Systemintegrasjon i Sporveien - veivalg og anbefalinger 30

Sammenlikningsscenario 1: Nytt system – én eller flere

datakilderEt nytt system må integreres, f.eks. ProArc, slik at det skal holde sine data automatisk oppdatert ved integrasjon mot én eller flere datakilder (mastere).

Hva koster dette i timer?

Sammenlikningsscenario 2: Endre datakilde – én eller flere mottakereScenario: Ett eller flere mottakende systemer skal holde sine data automatisk oppdatert ved integrasjon mot en datakilde (master). Kildesystemet må oppgraderes til ny versjon, slik at datamodellen endres noe. Hva koster dette i timer?

Antall systemer som mottar data gjennom integrasjonene

Tim

er F

TE fo

r å o

ppda

tere

inte

gras

jone

ne

Tjeneste-/meldingsorientert

Dataorientert

Estimatene er oppgitt i fulltidsekvivalenter (FTE) i timer, basert på erfaringstall for hhv. BizTalk (tjenesteorientert) og SESAM (dataorientert) fra reelle prosjekter. Estimatene omfatter analyse,

utvikling, test og produksjonssetting

vs. vs.

Page 31: Fra tjenesteorientert til dataorientert integrasjon

Plattformvalg og konsekvenserTjeneste-/meldingsorientert:

ESB/tjenestebuss+ Utbredt kompetanse

+ Store leverandører+ Gode verktøy for forvaltning og måling (SLA)…MEN data konverteres punkt-til-punkt i

manuell kode...:- Rigid

- Tungt å forvalte mht. ressurser og kompetanse

Dataorientert: Datahub/operativt dataregister- Foreløpig begrenset kompetanse i det norske markedet- Mindre modent verktøymessig…MEN data kan sammenstilles løpende i et samlet «nåbilde» i operative dataregistre for «smart» og dynamisk konvertering…:+ Fleksibelt, høy endringsevne+ + Kosteffektivt+ Fokus på datakvalitet og -eierskap+ Fristiller data fra leverandørbindende applikasjoner+ Nyttig struktur for gjenfinning av dokumentasjon

OPERATIVT DATAREGISTER

Page 32: Fra tjenesteorientert til dataorientert integrasjon

…Eller «Ja takk – begge deler»…?

Operativt dataregister

Page 33: Fra tjenesteorientert til dataorientert integrasjon

Grad av

samhandling

Høy

KoordinertUnike enheter som samhandler om

felles mål/produkter/…IT: Tilgang til delte data gjennom

standardiserte grensesnitt

EnhetligOmforent enhet med globalt

standardiserte prosesser og global tilgang til data

IT: Tilby prosesstøtte og global tilgang til data

Lav

DiversifisertUavhengige enheter med ulike brukergrupper og ekspertise

IT: Tilby fellestjenester som ikke er til hinder for uavhengigheten

ReplikertUavhengige, men svært like enheter

med felles praksisIT: Tilby prosesstøtte og

standardisert infrastruktur

Lav Høy

Grad av standardisering

Page 34: Fra tjenesteorientert til dataorientert integrasjon

34

Database

Open Data

File System

Enterprise

SearchReportin

g

Analytics

Data Hub

System X

Public Open Data

Content Mngmt

Enhance and

Connect

COLLECT

CONNECT

SHARE

Tran

sfor

m

Page 35: Fra tjenesteorientert til dataorientert integrasjon
Page 36: Fra tjenesteorientert til dataorientert integrasjon
Page 37: Fra tjenesteorientert til dataorientert integrasjon

Direktoratet

Elever

Skoler og lærere

Leverandører av læringsressurser

Fag

Hovedområder

Kompetansemål

Lokale læreplaner Ressurserfra

Skolenettet

Ressurserfraprivateaktører

Materialefunnet ellerlaget avlærere

Materialefunnet ellerlaget avelever

• Veilede • Tilrettelegge• Skape muligheter

Utdanningsdirektoratets læreplaner: Delt datamodell med forskriftsstatus

for grunnutdanningen

Page 38: Fra tjenesteorientert til dataorientert integrasjon

PRODUSENT KONSUMENTMEDIATOR

• “Discovery”• “Trust metrics”• Filtrering• Abonnement

• Registrering• Notifikasjon • Indeksering• Aggregering

Aggregator

• Finne• Sammenstille

• Dele• Tilgjengeliggjøre

”Abonnere på et søk!”

Atom/RSS (inkl. podcasts)SMS/MMSIM/XMPPEpostKalendersynk.…

Page 39: Fra tjenesteorientert til dataorientert integrasjon

ProsedyreorientertData vurderes som mindre viktig enn kode, og lukkes inne i koden

ObjektorientertData likestilles med kode, men lukkes fortsatt inne – nå i databaser. Manuell uthenting, konvertering og innlasting fra system til system

Tjeneste-/meldingsorientertData flyter fra applikasjon til applikasjon gjennom meldinger i åpne formater (XML), ofte over en «tjenestebuss» (ESB eller Enterprise Service Bus), og konverteres punkt-til-punkt – som regel i kode

DataorientertData vurderes som viktigere enn kode, forvaltes spesielt, og deles via strømmer og felles operative og historiske*) data-registre for gjenbruk, analyse og prediksjon. Data konverteres i økende grad «smart» og dynamisk i de operative dataregistrene

Paradigmeskifter for integrasjon… Er vi på vei inn i et nytt?

19951975 2005 201519851965 2020

Systemintegrasjon i Sporveien - veivalg og anbefalinger 39*) Et konvensjonelt datavarehus er et eksempel på et historisk dataregister, mens operative dataregistre er nav/noder for dataintegrasjon, og krever mer fleksibel teknologi – typisk en

såkalt grafdatabase (med et spørrespråk)

Page 40: Fra tjenesteorientert til dataorientert integrasjon

Fra tjenesteorientert til dataorientert integrasjonStian Danenbarger / 54°25′52″S 3°17′52″[email protected] @stidan no.linkedin.com/in/stian

Sømløs, automatisk oppdatert tilstands-

informasjon

Sømløse, automatiserte prosesser