Service Oriented Architecture Deel 3 – Procesbesturing 1: Orkestratie
Overzicht Deel 3: Procesbesturing in een SOA Basisconcepten SOA vanuit organisatorisch perspectief Procesbesturing Orkestratie Event-driven (choreografie) SOA vanuit technisch perspectief De SOA infrastructuur SOA in het ontwerpproces
Procesbesturing Twee vormen Orkestratie Verantwoordelijkheden Orkestratie – ”dirigent” Choreografie – “estafette” (wordt later behandeld) Orkestratie Centrale regie Gehele proces is één dienst Verantwoordelijkheden Domein is verantwoordelijk voor een dienst Geldt ook voor georkestreerde (proces)dienst Deelprocessen kunnen verantwoordelijkheid zijn van ander domein Dus ook een deelorkestratie nodig
Domeinen Eigenaarschap waar het hoort Domeinen Organisatie-eenheden zijn verantwoordelijk voor hun eigen organisatorische diensten, dus ook voor de ICT diensten (services) die daarmee corresponderen Domeinen Verantwoordelijkheidsgebied binnen een organisatie Verleent diensten aan andere domeinen Betrekt diensten van andere domeinen Is zelf verantwoordelijk voor de wijze waarop die diensten worden geleverd
Losjes koppelen Sterke koppeling Losse koppeling Koppelingen tussen systemen Direct, 1:1 Via intermediair Communicatiestijl Synchroon Asynchroon Datamodel Gedeeld, geharmoniseerd Eenvoudige gemeenschappelijke datatypes Typesystem Sterk Zwak Interactiepatronen Navigatie door ingewikkelde structuren Eenvoudige, ‘self contained’ berichten Procesbesturing Centrale regie Decentrale regie Binding Statisch Dynamisch Platformafhankelijkheid Afhankelijk Onafhankelijk Transacties 2-phase commit Compensatie Deployment Gelijktijdig Gespreid Versiebeheer Expliciete upgrades Impliciete upgrades
Orkestratie in een service georiënteerde architetuur aanvraag antwoord domein Uitgangspunt is SOA; het denken in services/diensten met een vooraf vastgestelde input en output beschrijving en op te leveren producten Een service wordt aangeroepen door een aanvraag en uiteindelijk wordt een antwoord/output geleverd. Op de eerste plaats gaan we vanuit de BA elke service/dienst beleggen bij een domein. Vervolgens gaan we vanuit de BPM de regie en de uitvoering van elkaar scheiden. Als een service in deeltaken/services gedecomponeerd moet worden dan scheiden we de regie/orchestratie van de uitvoering. Voor het regieproces maakt het niet uit of iets intern of extern wordt uitbesteed. Het maakt niet uit of de onderaannemer zelf ook weer onderaannemers heeft. Deze nesting kan heel diep gaan. orkestratie uitvoering
Voorbeeld Vergunningverlening bij een overheidsorganisatie Context Welzijn en Cultuur Bezwaar en Beroep Juridische zaken Cultuur Welzijn Financiën DIS Tekstverzorging Postkamer Controll Facilitaire zaken Besluiten Interne controle Audit Accounting Mandaten Gedeputeerde Staten Provinciale Staten
Orkestratie van proces subsidieverlening bezwaarschrift beschikking antwoord aanvraag bezwaar bezwaar bezwaar bezwaar financiën besluit besluit besluit besluit Juridische zaken Interne controle domein orchestratie uitvoering verzending archivering
Handmatige stappen Micro-flow en macro-flow Alle stappen in het proces worden achtereenvolgens, zonder gebruikersinterventie uitgevoerd “loopt in één keer door” Macro-flow Stappen in het proces vereisen interventie van de gebruiker De gebruiker implementeert als het ware zelf de service Mogelijke implementatie macro-flow Takenlijst Monitoring Technische implementatie lastig BPEL4People
Ontwikkelingen E-overheid NORA (Nederlandse Overheids Referentie Architectuur)
Orkestratie in NORA architectuur front office back office mid office Gegevens magazijn 5. Doorzetten naar back office 1. Vraag 2. Antwoord 3. Aanvraag 4. Aanmaken zaak Zaak magazijn 7. Status / resultaat 6. Status Enterprise Servicebus Procesbesturing
Het mid-office als spil Voorzieningen in het mid-office Gegevensmagazijn Zaakmagazijn Rapportagevoorzieningen Monitoring Infrastructuur Enterprise Servicebus Orkestratie engine
Voorbeeld waterschap
Bas Kruiswijk bkr@tg.nl www.twynstragudde.nl Alle intellectuele eigendomsrechten met betrekking tot deze presentatie berusten bij Twynstra Gudde. Niets uit deze presentatie mag worden verveelvoudigd of openbaar gemaakt zonder schriftelijke toestemming van Twynstra Gudde.