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
Top Related