SOA - klein en meeslepend (Waternetwerkdag, 17 november 2011, Nieuwegein)

Post on 19-May-2015

543 views 0 download

description

Een introductie op SOA en met name hoe de kernconcepten en belangrijkste doelstellingen van SOA op eenvoudige, goedkope en snelle wijze bereikt kunnen word

Transcript of SOA - klein en meeslepend (Waternetwerkdag, 17 november 2011, Nieuwegein)

SOA – KLEIN EN MEESLEPENDLucas Jellema – AMIS Services BV

WaterNetwerkdag, 17 november 2011, Nieuwegein

SOA, klein en meeslepend…

Bruggen slaan … (in het IT-landschap)

Van architectuur naar praktisch, concreet …

Eén-loket..Trends…

KLASSIEKE LOKET

• Denk jaren 60/70 – bank, gemeentehuis, postkantoor

• Loketten– Duidelijke indicatie van wat er te halen valt– Standaard-formulieren en jargon– Uitvoering achter de grote dikke deur– ‘wat je ook afneemt, alles langs de

kopieermevrouw’– Verbouwing achter de grote dikke deur

• Vakantie• Jaarlijkse uitje• Gemeentelijke herindeling:

nu iedereen in de gemeente verderop

MODERN LOKET

• Modern loket is multi-channel– Bemensd loket– Web Site– Mobieltje– Automaat (kiosk)

• Modern loket is multi-functioneel: 1 loket voor alle vragen – Aan een bedrijf– Aan een overheidsinstantie– Aan de overheid…

• Modern loket is [grotendeels] self-service– Minder kosten, minder fouten, sneller (24/7)

XOPOO

ELEKTRONISCHE DIENSTVERLENING IN MONGOLIE ANNO 2011• Basisregistraties:

– Belastingen, Burgers (birth, death, marriage, divorce en registration, addresses), Bedrijven, Kadaster, Scheepsregister

• (B2B Web) Services om de registraties te ontsluiten voor diverse overheids-agentschappen

• Web en Mobiele applicaties voor gebruik door burgers voor opvragen en registreren van informatie

ELEKTRONISCHE DIENSTVERLENING IN MONGOLIE ANNO 2011• Kiosken voor paspoort, certificaten,

registratie, informatie-aanvragen– Kiosk is een automaat voor allerlei burger-

overheid interacties– Naast mobiel, internet, web services– Internet (en mobiel netwerk) beschikbaar in 21

provinciehoofdsteden: kiosken komen in 329 sums – districten

KLEINSCHALIGE ELEKTRONISCHE INTERACTIE BIJ NEDERLANDSE GEMEENTE

• Dienst belastingen van een grote gemeente X• Opvragen gegevens UWV (arbeidsverleden)

– Duurt lang, is duur (door de inzet van mankracht), kent regelmatig fouten

– Nu: geautomatiseerde aanroep naar een web service in Digipoort

– Gegevens zijn nu snel, goedkoop en foutloosbeschikbaar

• De implementatieduurde 3 maanden – Met name door

overleg met externe partner

KLEINSCHALIGE ELEKTRONISCHE INTERACTIE BIJ NEDERLANDSE GEMEENTE

• Burgers kunnen bezwaarschrift indienen– Schriftelijk, ter plekke afgeven tijdens

kantooruren (of per aangetekende brief)• Aanbieden self-service om gegevens in te

sturen– Scheelt scannen, overtypen, reactie-termijn– Ook open buiten kantooruren– Nog goedkoper ook – zowel voor aanvrager als

voor verwerkende instantie• Aangeboden ‘service’ bestaat uit web

applicatie en interne web service die back office systemen ontsluit– Implementatie duurde enkele weken

SOA

SERVICE ORIENTED ARCHITECTURE

SOA = BAD

SOA =BusinessAgility through

Decoupling

SERVICE-GERICHT DENKEN [IN IT]

• Interactie gebaseerd op interface of contract– loket, afgesproken vraag/antwoord patronen,

jargon• Ontkoppeling – technisch, functioneel, in tijd

– Minimum aan afhankelijkheden: waar, wanneer, hoe

• Encapsulatie– onzichtbaar hoe: grote dikke deur in het

gemeentehuis• Herbruikbaarheid• Technologie-onafhankelijkheid

– Over leveranciers, platforms, open source en commercieel heen

• Standaarden – Begrippen (bijvoorbeeld StelselCatalogus),

communicatie protocollen (http, XML)

Ontkoppeling

SOA = BAD: BUSINESS AGILITY

• Business Agility == flexibiliteit, wendbaarheid, aanpassingsvermogen– Snel, goedkoop, goed (of in elk geval sneller,

goedkoper, beter dan voorheen)• Ontkoppeling geeft flexibiliteit

– Wijziging implementatie zonder impact aan de voorkant

– Vervanging onderdelen en Her-compositie– Modulaire ontwikkeling en aanpassing– Sneller nieuwe systemen op basis van

bestaande componenten • die met het oog op hergebruik ontwikkeld, getest

en gedocumenteerd zijn en beheerd worden

MODELLEN TELEVISIE

Back office

CONCRETE STAPPEN NAAR BETERE DIENSTVERLENING

REGEL 1

INFORMATIE VAN BUITEN WORDT DOOR BUITEN INGETYPT

GOEDKOPER, MINDER FOUTEN, SNELLER

Back office

Web

Ap

plic

atie

Front office

REGEL 2

INFORMATIE DIE ELEKTRONISCH VASTLIGT WORDT ELEKTRONISCH OVERGEDRAGEN

NOG GOEDKOPER, MINDER FOUTEN, SNELLER

Back office

Web

Ap

plic

atie

Serv

ice

B2B

OCR

SERVICE ALS FRONT OFFICE ‘DATABASE’

INBOUND PARTNERING

Web

Ap

plic

atie

Serv

ice

B2B

Back office

OUTBOUND PARTNERING

Serv

ice

Bus

EERSTE STAPPEN NAAR SOA

• Denk dienst-gericht- in termen van ontkoppeling, encapsulatie, standaarden, hergebruik

• Denk in/werk aan ‘kanoniek’ model – technologie-vrije beschrijving van entiteiten en eigenschappen– Waar mogelijk gebaseerd op bestaande

standaarden en begrippen-catalogi• Zet Governance op – en werf supporters

– Marketing, Planning en Beheer van diensten en modellen

• Bouw infrastructuur op- met minimale investeringen– Bijvoorbeeld: open source applicatie server -

eventueel draaiend in de ‘cloud’• Korte doorlooptijd – snel iets concreets, niet

eerst ‘enterprise architectuur in detail uitwerken voor alles’

AFNEMEN VAN EEN SERVICE - CONCREET VOORBEELD: BASIS REGISTRATIES

• Creeer (genereer) een Web Service client– Die de aangeboden dienst aanroept– Die de resultaten terugmeldt in een vorm die

voor bestaande applicaties/databases bruikbaar is

– Vertaal van en naar het berichtenformaat van de aangeroepen service

• Ontwikkel een mechanisme om de Web Service client te activeren vanuit de applicatie die de vraag stelt– Met een directe aanroep, of via een indirect

signaal• Huisvest de client in een run-time omgeving

bijvoorbeeld een open source applicatie server– Eventueel draaiend in de ‘cloud’

service

app

client

UWV

Java

jax-ws

Glassfish

2-weg VPNDigiPoort

Data Aanvragen

Bestaande Applicaties

CASUS: AANROEP UWV DIENST VOOR ARBEIDSHISTORIE

AANBIEDEN VAN EEN SERVICE

• Bijvoorbeeld een loket-applicatie voor burgers– Met services voor de web- of mobiele applicatie

ontwikkelaars om te benutten• Of als B2B interface naar Waterschappen,

Bedrijven of andere ketenpartners• Ontwerp de service

– Bepaal de functionaliteit (de operaties in de service)

– Definieer de berichten - Gebruikmakend van berichtdefinities in de StelselCatalogus (Logius)

– Stel de SLAs vast (openingstijden, response-tijd, toegestane aantallen, security)

– In overeenstemming met Digikoppeling• Start Governance – functioneel beheer van

services en berichtdefinities door de gehele levenscyclus

LOGIUS - STELSELCATALOGUS

AANBIEDEN VAN EEN SERVICE

• Ontwerp de service– Bepaal de functionaliteit (de operaties in de

service)– Definieer de berichten - Gebruikmakend van

berichtdefinities in de StelselCatalogus (Logius) – Stel de SLAs vast (openingstijden, response-tijd,

toegestane aantallen, security)– In overeenstemming met Digikoppeling

• Start Governance – functioneel beheer van services en berichtdefinities door de gehele levenscyclus

• Publiceer het contract aan afnemers (catalogus)

• Genereer en ontwikkel een implementatie van de service– En sluit die aan op ‘onderliggende systemen’

• Rol de implementatie uit op een run time omgeving

Afnemers

Java

jax-ws

Glassfish

firewall

View Vergunnings-

aanvragen

Bestaande Applicaties

CASUS: PUBLICEREN VAN SERVICE OPVRAGEN STATUS VERGUNNINGAANVRAAG

VAN DATA-UITWISSELING NAAR PROCES-UITVOERING• Organisaties hebben niet het uitwisselen van

data als doel – dat is slechts een middel• Het uitvoeren van bedrijfsprocessen is veel

dichter bij het bereiken van de bedrijfsdoelen• Wat is een proces?

– Activiteiten• Automatisch en handmatig

– ‘rollen en spelers’– Logische ordening en ‘flow’

• Keuzes, iteraties, deadlines, parallel/sequentieel

– Toestand (‘state’) & Gegevens– KPIs

• Mens is ook een service in de context van het proces– Ook een handmatige taak is een service-

activiteit in de context van een bedrijfsproces

MANAGEMENT VAN BEDRIJFSPROCESSEN – BOUWT OP SERVICES EN INTEGRATIE

APPLICATIES NIEUWE STIJL

• Openbreken monolieten• User interactie faciliteiten

om proces-stappen uitte voeren

• Navigatie vanuit To-Dolijst ipv globaal menu

• Portaal waarin To-Do lijst en alle UI compo-nenten zijn opgenomen– Geen grote gesloten

in zichzelf gekeerdeapplicaties

• User interactie ook viamobiel, email, devices

TRENDS EN ONTWIKKELINGEN

• Operationele proces-inzichten en business dashboards

• Cloud – ‘service bus in the cloud’ (BaaS)• Geautomatiseerde processen met spelers van

verschillende afdelingen en organisaties– Takenlijsten, emails, burgers ‘speler’ in

bedrijfsproces• Case management en document-beheer in

aanvulling op ‘klassiek BPM’• Pro-actief en Real-time (batch, push notificaties)• Mobiel aanleveren en opvragen • UI is dashboard of taak interface – klassieke

applicatie met CRUD schermen verdwijnt• Design Time at Run Time – steeds meer aspecten

van user interfaces, services en processen aanpasbaar op run-time – voor optimale agility!

CONCLUSIES

• Met SOA beogen we: sneller, beter en goedkoper• Belangrijkste element: ontkoppeling

– Naast encapsulatie, hergebruik, standaarden• SOA = BAD• Kleine, eenvoudige stappen volgens de SOA

benadering leiden tot concrete verbeteringen– En helpen kennis en vertrouwen te bouwen

• Service aanbieden of afnemen kan met korte doorlooptijd, kleine investering en laag risico– Ik zeg …

• Services maken automatisering van bedrijfsprocessen mogelijk – in combinatie met workflow/BPM engine

• Trends: real time, operationeel KPI inzicht, mobiele toegang, cloud, integratie binnen en buiten organisatie, taak-gerichte user interface, monoliet

LUCAS JELLEMALUCAS.JELLEMA@AMIS.NL

AMIS SERVICESHTTP://WWW.AMIS.NLINFO@AMIS.NL

Meer vragen?