De keten uitgedaagd Technische inrichting SBR Webservices, koppelvlakken en meer… College 7 van 11 door Bart Hendriksen & Victor den Bak ir. Bart Hendriksen • Werkzaam bij Thauris • Sinds 2011 actief met SBR • Bijdrage geleverd aan het boek ‘De keten uitgedaagd’ • [email protected] ir. Victor den Bak • Werkzaam bij EBPI • Sinds 2012 actief met SBR • Bijdrage geleverd aan het boek ‘De keten uitgedaagd’ • [email protected] Hier kwamen we vandaan Schets van de oplossing - 2006 NT 7.0 NT 8.0 Agenda 1. Technische inrichting Digipoort 2. Koppelvlakken 3. Procesinfrastructuur 4. Praktijkvoorbeelden Technische inrichting SBR Keuze technische inrichting SBR A Traditioneel/heterogene procesinfrastructuren • Eigen koppelvlakken • Eigen procesinfrastructuur (voor uitvragende partijen) • • C Concern-procesinfrastructuur • • D Gedeelde dienstverlener • • B Eigen procesinfrastructuur Gestandaardiseerde koppelvlakken Eigen procesinfrastructuur Gestandaardiseerde koppelvlakken Gestandaardiseerde procesinfrastructuur Gestandaardiseerde koppelvlakken Generieke procesinfrastructuur Eisen aan de techniek vanuit de opgave • Gebruik van open standaarden: oplossingen moeten herbruikbaar zijn • Platform onafhankelijkheid: informatie-uitwisseling ongeacht de specifieke eigenschappen van de technische omgeving. • Ontkoppeling (‘loose coupling’): bestendig tegen dynamiek (belangen, wet- en regelgeving, dienstenaanbod in de markt, etc.), doordat delen onafhankelijk van elkaar zijn. • Flexibel procesverloop: verschillende berichten moeten grotendeels op dezelfde, maar deels op een andere manier worden afgehandeld. Technische inrichting SBR Bedrijf Scenario D Gedeelde dienstverlener: • gestandaardiseerde koppelvlakken (K) • generieke procesinfrastructuur Gedeelde procesinfrastructuur Uitvragende partijen Bedrijfsprocessen Bericht K Procesinfrastructuur Bedrijfsprocessen Bedrijfsprocessen Oplossing: Digipoort Koppelvlakken verbinden de schakels NT 7.0 NT 8.0 Procesinfrastructuur verzorgt verwerking NT 7.0 NT 8.0 Koppelvlakken Koppelvlakken, wat is het? • • • • Een system-to-system verbinding Eenduidige afspraken en standaarden Digipoort: gestandaardiseerde toegang tot een webservice Aanvullende afspraken over het gebruik van de webservice in relatie tot het i-proces waar het toegang tot geeft. Eisen aan de techniek vanuit de opgave • Gebruik van open standaarden: oplossingen moeten herbruikbaar zijn • Platform onafhankelijkheid: informatie-uitwisseling ongeacht de specifieke eigenschappen van de technische omgeving. • Ontkoppeling (‘loose coupling’): bestendig tegen dynamiek (belangen, wet- en regelgeving, dienstenaanbod in de markt, etc.), doordat delen onafhankelijk van elkaar zijn. • Flexibel procesverloop: verschillende berichten moeten grotendeels op dezelfde, maar deels op een andere manier worden afgehandeld. Koppelvlakken, waar bestaan ze uit? De uitwisseling van gegevens tussen systemen kan in drie lagen worden opgedeeld: 1. Inhoud: deze laag omvat de afspraken die organisaties maken over de inhoud van het uit te wisselen bericht, dus de structuur, semantiek, bereik van waarden etc. 2. Sessie (logistiek): deze tussenlaag is op te delen in twee sublagen: 1. Communicatie: refererend naar de transportprotocollen (HTTP, SMTP etc.); 2. Toepassing: refererend naar standaarden omtrent messaging (zoals de op SOAP gebaseerde ebMS en WUS), beveiliging (authenticatie en encryptie) en betrouwbaarheid. 3. Transport: deze laag verzorgt het uiteindelijke overdracht van berichten (TCP/IP). Koppelvlakken, de componenten Inhoud ebXML familie XBRL familie EDIFACT familie ebMS WUS- familie EDIINT- familie SOAP SOAP+ Toepassing Toepassing specifiek Toepassing specifiek ASX Logistiek Communicatie Transport HTTP FTP TCP/IP SMTP x.400 x.25 Koppelvlakken, voor wie? De koppelvlakken kennen twee generieke doelgroepen: 1. Gebruikers (bedrijven) 2. Afnemers (overheid) Dit resulteert in de volgende drie geïmplementeerde koppelvlakken: • SOAP2008 • WUS 2.0 (Digikoppeling standaard) voor bedrijven • ebMS 2.0 (Digikoppeling standaard) Koppelvlakbeschrijving • Digikoppeling WUS2.0 • Algemene standaard voor koppelen met de overheid • WUS2.0 voor bedrijven v1.2 • Nadere specificatie van WUS2.0 voor bedrijven • Servicebeschrijvingen • Functionele beschrijving van specifieke service Koppelvlakken en webservices Webservices WSDL Web Service Definition Language • Beschrijft het gedrag d.m.v.: <portType> Ondersteunde operaties <binding> Type berichten per operatie <message> Definities van de berichten <types> Specificaties van de berichten <policy> WS-Security eisen WSDL <definitions> <wsdl:portType name="AanleverService_V1_2"> <wsdl:operation name="aanleveren"> <wsdl:input name="aanleverenRequest" message="tns:aanleverMessageRequest"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="AanleverServiceSoapBinding_V1_2" type="tns:AanleverService_V1_2"> <soap11:binding style="document" transport="..."/> <wsdl:operation name="aanleveren"> <soap11:operation soapAction="..."/> <wsdl:input name="aanleverenRequest"> <soap11:body use="literal"/> </wsdl:input> </wsdl:operation> </wsdl:binding> <wsdl:message name="aanleverMessageRequest"> <wsdl:part name="aanleverRequest" element="kv:aanleverRequest"/> </wsdl:message> <wsdl:types> <xsd:schema> <xsd:import schemaLocation="1.2.xsd"/> </xsd:schema> </wsdl:types> <wsp:Policy></wsp:Policy> </definitions> SOAP • Simple Object Acces Protocol • Communicatie …in xml …tussen componenten …over HTTP(S) SOAP bericht Een SOAPbericht bestaat uit: • De transportprotocol header; • De SOAP envelope met daarbinnen: • de SOAP header; • de SOAP body. Transportprotocol Header SOAP envelope SOAP Header WS-Security WS-Addressing …… SOAP Body kenmerk berichtsoort aanleverkenmerk eerderAanleverkenmerk identiteitBelanghebbende identiteitOntvanger rolOntvanger berichtInhoud berichtBijlagen autorisatieAdres …… Voorbeeld – WUS 2.0 voor bedrijven v1.2 Opzetten verbinding Inhoud SOAP Request Aanleveren SOAP Response Interpretatie Gebruiker XBRLi SOAP Digipoort SSL/TLS + HTTP SOAP XBRLi Opzetten verbinding Inhoud SOAP Request Aanleveren SOAP Response Interpretatie SOAP Opzetten verbinding Inhoud SOAP Request Aanleveren SOAP Response Interpretatie Opzetten verbinding Inhoud SOAP Request Aanleveren SOAP Response Interpretatie SOAP Opzetten verbinding Inhoud SOAP Request Aanleveren SOAP Response Interpretatie Opzetten verbinding Inhoud SOAP Request Aanleveren SOAP Response Interpretatie 3. Procesinfrastructuur Koppelvlakken verbinden de schakels NT 7.0 NT 8.0 Procesinfrastructuur verzorgt verwerking NT 7.0 NT 8.0 Eisen aan de techniek vanuit de opgave • Gebruik van open standaarden: oplossingen moeten herbruikbaar zijn • Platform onafhankelijkheid: informatie-uitwisseling ongeacht de specifieke eigenschappen van de technische omgeving. • Ontkoppeling (‘loose coupling’): bestendig tegen dynamiek (belangen, wet- en regelgeving, dienstenaanbod in de markt, etc.), doordat delen onafhankelijk van elkaar zijn. • Flexibel procesverloop: verschillende berichten moeten grotendeels op dezelfde, maar deels op een andere manier worden afgehandeld. Services Lessen uit de jaren 90 Stand-alone systemen raken verbonden • Veel IT-systemen zijn nooit ontworpen om gegevens uit te wisselen • Er ontstaan nieuwe ketens, afhankelijkheden en governance problemen Monolitische IT-systemen zijn niet bestand tegen dynamiek • Wijzigingsfrequentie varieert sterk per onderdeel • Organisaties waar bedrijfsprocessen leidend zijn presteren beter Het Internet biedt enorm veel potentieel • Alle systemen verbonden op eenduidige wijze • Veel nieuwe technieken beschikbaar (SOAP, XML, etc) Bouwblokken Flexibel, robuust, multi-inzetbaar Opbouw van een service Leveren standaard input, conform specificatie. Inputcontrole o.b.v. contract, QoS, autorisatie. Toepassen van applicatie, per verzoek. • Gespecificeerde interface • Onafhankelijk van implementatie en platform • Ontsluiten van legacy Terugkoppelen resultaat, conform specificatie Webservices “A Webservice is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine processable format (specifically WSDL). Other systems interact with the Webservice in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Webrelated standards” Bron: W3C Zoekt Service gebruiker Service register (UDDI) SOAP/XML Registreert Service aanbieder Wisselt uit Webservice = koppelvlak + service Webservices: 1e en 2e generatie Overal ter wereld worden webservice technieken gebruikt… …maar vrijwel nergens conform oorspronkelijke opzet. Flexibel is mooi, controle is beter: de “cloud” als voorbeeld. Eisen vanuit SBR: • PvE GEIN: Flexibiliteit, hergebruik van functionaliteiten, “loose coupling” • Overheidsproces: consistent, herleidbaar, vertrouwelijk Orkestratie Service Oriented Architecture Kernconcepten: • Architectuurstijl, geen techniek • Bedrijfsprocessen zijn leidend • “Alignment” van business en IT • Nadruk op compositie van services • Nadruk op hergebruik services • Nadenken over granulariteit • Platformonafhankelijk • Combinatie legacy en nieuwbouw Digipoort opgebouwd • Het BPMN-process is uitgedacht • Benodigde services zijn los beschikbaar • Berichtverwerking is nog niet mogelijk Digipoort opgebouwd • De servicebus maakt eenduigige communicatie mogelijk • De servicebus heeft geen idee hoe de blokken onderling te combineren Digipoort opgebouwd • De procesengine weet hoe alle processen stap voor stap verlopen • Berichten aanleveren nog niet mogelijk. Digipoort opgebouwd • De koppelvlakken faciliteren het aan- en afleveren van berichten • We kunnen berichten en processen nog niet koppelen. Digipoort opgebouwd • Aan- en afleverservices verbinden berichtuitwisseling met berichtverwerking • Figuur voldoet nog niet aan alle juridische eisen Digipoort opgebouwd • Statusinformatie wordt vastgelegd en is opvraagbaar • Statussen worden geüpdatet door uitvragende partijen Van BPMN-plaat tot i-proces Van BPMN-plaat tot i-proces BPMN-plaat Detailuitwerking BPEL-proces Configuratie Operationeel Van BPMN-plaat tot i-proces BPMN-plaat Detailuitwerking BPEL-proces Configuratie Operationeel Van BPMN-plaat tot i-proces BPMN-plaat Detailuitwerking BPEL-proces Configuratie Operationeel Business Process Execution Language • Vertaalt BPMN naar instructies voor process engine • Volgordelijk aanroepen van services o.b.v. keuzemomenten • Aanvullende input meegeven Van BPMN-plaat tot i-proces BPMN-plaat Detailuitwerking BPEL-proces Configuratie Operationeel Configuratie per berichtsoort: • Configuratie-items • Entrypointconfiguratie • Aanvullende controles Van BPMN-plaat tot i-proces BPMN-plaat Detailuitwerking BPEL-proces Configuratie Operationeel College 7 van 11 4. Praktijkvoorbeelden Voorbeeld 1: Toeslagen Stelt intermediairs in staat toeslagen aan te vragen via SBR. • Proces grotendeels gelijk aan bestaand “standaardproces”. • Entrypoints zijn al in NT 8.0 opgenomen. Voordelen van bouwblokken • Snelle realisatie, alle bouwblokken lagen al “op de plank”. • Generieke opzet ondersteunt licht afwijkende configuratie. • Marginale kosten en tijdsinspanning t.o.v. nieuwe procesinfrastructuur. Voorbeeld 1: Toeslagen Technisch eenvoudig ≠ eenvoudig voor de keten Randvoorwaarden moeten ingevuld zijn: • Afstemming ketenpartijen • Juridische toets • Capaciteitsplanning platform • Ketentest • Releasekalender • Aansluitondersteuning • Toepassingsondersteuning Voorbeeld 2: SBR Assurance Context Bijlagen Validatie Handtekening Operationeel > 600.000 jaarverslagen voor kleine rechtspersoon Digipoort +/- 13.000 jaarverslagen met accountantsverklaring PDF/papier Kenmerken SBR Assurance • Juridisch strikt gescheiden verantwoordelijkheden • Set van documenten onlosmakelijk verbonden • Ondertekenen verplicht, waarmerken wenselijk • Uniek in de wereld • Rekening houden met aanverwante stromen • Zeer complexe keten voordat bij Digipoort wordt aangeleverd Voorbeeld 2: SBR Assurance Context Bijlagen Validatie Handtekening Operationeel SBR werkt zaaksgewijs, zaak bestaat nu uit 3 documenten. Consequenties koppelvlakken: • WUS aan voorzijde, ebMS aan achterzijde • Controle op aantal bijlagen Nieuwe service voor controle consistentie bijlagen: • Bijlagen herkennen • Controle op verplichte aanwezigheid bijlagen • Controle op onderlinge consistentie Voorbeeld 2: SBR Assurance Context Bijlagen Validatie Handtekening Operationeel XBRL-validatie voor Jaarverslag en Accountantsverklaring XML-validatie voor Handtekening Document Gegevensstandaard Jaarverslag Nederlandse Taxonomie Accountantsverklaring NBA taxonomie Handtekening XAdES standaard Kleine aanpassing validators nodig: • Valideren meerdere bijlagen • Passende terugkoppeling geven Voorbeeld 2: SBR Assurance Context Bijlagen Validatie Handtekening Operationeel Aanleveren bij Digipoort met organisatiegebonden PKIo certificaat. Ondertekenen/waarmerken met beroepscertificaat: • Moet voldoen aan Wet op de Elektronische handtekening • XAdES als Europese standaard • “detached signature” i.v.m. leesbaarheid XBRL-instances Nieuwe services nodig: • Handtekeningcontroleservice • Certificaatcontroleservice Voorbeeld 2: SBR Assurance Context Bijlagen Validatie Handtekening Operationeel Experimentfase: • Planmatig testen met ketenpartners of oplossing ‘past’ • Ruimte voor quick fixes en voortschrijdend inzicht • Aansluitondersteuning beschikbaar College 7 van 11 Terug- en vooruitblik De techniek van Digipoort samengevat • Gedeelde dienstverlener: gestandaardiseerde koppelvlakken (K), generieke procesinfrastructuur • Koppelvlakken geven op gestandaardiseerde wijze toegang tot de verschillende iprocessen. • Sterke interactie techniek met gegevens, processen en afsprakenstelsel. • Services en orkestratie dragen gezamenlijk bij aan flexibiliteit én robuustheid. De keten uitgedaagd Informatiebeveiliging in ketens Juridische kaders, authenticatie, machtigingen en meer… 26 augustus 2014
© Copyright 2024 ExpyDoc