Your SlideShare is downloading. ×
9 soa infrastructuur
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

9 soa infrastructuur

364
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
364
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Service Oriented ArchitectureDeel 5 - SOA infrastructuurAmersfoort12 september 2009Bas Kruiswijk
  • 2. Service Oriented ArchitectureOverzichtDeel 5: De SOA infrastructuur1. Basisconcepten2. SOA vanuit organisatorisch perspectief3. Procesbesturing4. SOA vanuit technisch perspectief5. De SOA infrastructuur – Enterprise Servicebus (ESB) – Portaal – Orkestratie engine6. SOA in het ontwerpproces© Twynstra Gudde 12-9-2009 2
  • 3. Service Oriented Architecture Enterprise servicebus Afnemers (presentatie) ProcesdienstenServicebus Samengestelde diensten Basisdiensten Backends Bestaand Database systeem Domein Domein © Twynstra Gudde 12-9-2009 3
  • 4. Service Oriented Architecture Middleware / Enterprise Servicebus – Middleware = Generieke software die de koppelingen tussen applicaties ondersteunt – “software glue” – (Enterprise) Servicebus = specifieke vorm van middleware in een service georiënteerde architectuurA1 A1 A2 A3 A4 beveiliging A2 autorisatie logging / monitoring A3 Middleware / Servicebus technische conversie A4 bericht transformatie controles – Overbrugt technische verschillen tussen applicaties – Biedt mogelijkheid tot standaardisatie – Biedt aanvullende diensten voor beveiliging, monitoring, controles, transformaties etc. © Twynstra Gudde 12-9-2009 4
  • 5. Service Oriented ArchitectureFunctie van middleware / EnterpriseServicebus– Reductie van complexiteit van koppelingen door – centraal ontkoppelpunt van applicaties – centraal beheer van koppelingen mogelijk – technische standaardisering middels ‘stekkers’ – stimuleert generieke services en berichten, en maakt daardoor hergebruik mogelijk– Eénmalig generiek in de middleware ipv in elke applicatie opnieuw – technische conversies – beveiliging en autorisatie – monitoring en logging – controles, gegevensmapping, transformaties© Twynstra Gudde 12-9-2009 5
  • 6. Service Oriented ArchitectureWeb services en een servicebusTwee manieren van routering– Rechtstreeks – Via ESB– Service register wordt – Service wordt niet rechtstreeks geraadpleegd voor locatie van aangeroepen de service – ESB routeert vraag en– Service wordt rechtstreeks antwoord aangeroepen – Bericht- en technische conversie is mogelijk© Twynstra Gudde 12-9-2009 6
  • 7. Service Oriented ArchitectureEvents en een servicebusEvent manager met adapters event publicatie A Event manager adapter event B C– ESB (Event manager) is intermediair– Ontkoppeling via subscriptions, waardoor A niet bekend is met B of C– Adapters zorgen voor technische en logische conversies© Twynstra Gudde 12-9-2009 7
  • 8. Service Oriented ArchitectureEnterprise Servicebus = de SOA infrastructuur– Stelt afnemers in staat beschikbare service aan te roepen– Realiseert vooral ook interoperabiliteit– Samengevat zijn de taken van de ESB – Connectiviteit realiseren tussen aanbieder en afnemer – Data transformatie – Intelligente routering (bijv. content based routing) – Beveiliging – Garanderen van betrouwbaarheid – Service management (de administratie van services) – Monitoring en logging (ook Business Activity Monitoring)– Ook de ESB kan heterogeen zijn (je kunt er dus meer dan één hebben)© Twynstra Gudde 12-9-2009 8
  • 9. Service Oriented Architecture Data mapping in een ESB Applicatie A Applicatie B Applicatiespecifiek Applicatiespecifiek informatiemodel informatiemodel (application view) (application view) Standaard informatiemodel Mapping Mapping (common view)application view -> common view -> common view Enterprise Service Bus application view © Twynstra Gudde 12-9-2009 9
  • 10. Service Oriented Architecture Applicatie 1 Applicatie 2 Applicatie ...application view application view application view application view application viewSpecifiek Generiek Specifiek Generiek Specifiek Generiek deel deel deel deel deel deel Mapping Mapping Mapping Standaard informatiemodel (common view) Enterprise Service Bus = gebaseerd op berichtschema standaard informatiemodel = gebaseerd op berichtschema specifiek informatiemodel © Twynstra Gudde 12-9-2009 10
  • 11. Service Oriented Architecture PortaalPortaal Afnemers (presentatie) Procesdiensten Samengestelde diensten Basisdiensten Backends Bestaand Database systeem Domein Domein © Twynstra Gudde 12-9-2009 11
  • 12. Service Oriented ArchitecturePortals– Intranet (portal) – Interne nieuwsvoorziening – Soms ook interne samenwerkingsomgeving (collaboration)– Web portal – Informatie uit verschillende bronnen op een uniforme manier presenteren / toegankelijk maken (iGoogle, Startpagina etc.)– Enterprise portal – Digitale werkplek (Single point of entry) – Integratie van functies en data uit verschillende systemen – Federatie – integratie van informatie uit verschillende andere portalen – Personalisatie – Autorisatie, vaak rolgebaseerd© Twynstra Gudde 12-9-2009 12
  • 13. Service Oriented ArchitectureEnterprise portaalFunctionaliteit op hoofdlijnen– De functionaliteit van een enterprise portaal – Ontsluiting van informatie (á la intranet) – Platform voor samenwerking en kennisdeling – Ondersteuning van werkprocessen (toegang tot functionaliteit / gegevens)– Toekomstbeeld – De digitale werkplek – Gebruikers krijgen afhankelijk van hun rol toegang tot alle relevante informatie én functionaliteit die nodig is voor hun werk– Kenmerken – Web-gebaseerd – Beveiliging / authenticatie – éénmalige rolgebaseerde autorisatie – Gepersonaliseerd – Werkproces georiënteerd© Twynstra Gudde 12-9-2009 13
  • 14. Service Oriented ArchitectureEnterprise portaalOndersteuning van werkprocessen– In een service georiënteerde architectuur met orkestratie – Het uitvoeren van een taak = aanroepen van een service – Dit kan – een ‘nieuwe’ service zijn (bijvoorbeeld een basisdienst, maar ook procesdienst) – een stap in een lopend proces zijn (bijv. op een takenlijst) – User interface bij een service is een scherm of (liever nog) een portlet of web part– Andere manieren – Integreren van een complete web-applicatie in het portaal – Bestaande schermen ‘ophangen’ in nieuwe navigatiestructuur – Op basis van stylesheets uniformeren van de vormgeving – Combineren van user-interface componenten van applicaties die beschikbaar zijn als portlet of web part – Single sign-on voor web-applicaties en user-interface componenten© Twynstra Gudde 12-9-2009 14
  • 15. Service Oriented Architecture Orkestratie engineAfnemers(presentatie) OrchestrationProcesdiensten engineSamengestelde dienstenBasisdienstenBackends Bestaand Database systeem Domein Domein © Twynstra Gudde 12-9-2009 15
  • 16. Service Oriented ArchitectureOrkestratie engine UML Activity Diagram is ook een mogelijkheid zie voorbeeld p. 93 (fig 7-8) SOA in Practice– Orkestratie engine – Ondersteunt zowel ontwerpen als executeren van processen – Een proces = een service– BPEL is veelgebruikte standaard – Business Process Execution Language – Gebaseerd op XML– BPMN voor ‘echt’ modelleren – Business Process Modeling Notation – Grafische notatie – Vertaalbaar naar BPEL© Twynstra Gudde 12-9-2009 16
  • 17. Service Oriented ArchitectureBPEL omgevingOntwerp, executie, management© Twynstra Gudde 12-9-2009 17
  • 18. Service Oriented Architecture De BPEL taal Service collaborators (service die in het proces zijn betrokken Variabelen die de toestand van het proces bevatten - statefulWacht op een bericht van een partner webservice Roep een partner webservice aan Allerlei logica die de prosesflow beïnvloed © Twynstra Gudde 12-9-2009 18
  • 19. Service Oriented Architecture 1 <process name="ticketOrder"> 2 <partners> 3 <partner name="customer" 4 serviceLinkType="agentLink"BPEL voorbeeld 5 6 myRole="agentService"/> <partner name="airline" 7 serviceLinkType="buyerLink" 8 myRole="ticketRequester" 9 partnerRole="ticketService"/> 10 </partners> 11 <containers> 12 <container name="itinerary" messageType="itineraryMessage"/> 13 <container name="tickets" messageType="ticketsMessage"/> 14 </containers> 15 <flow> 16 <links> 17 <link name="order-to-airline"/> 18 <link name="airline-to-agent"/> 19 </links> 20 <receive partner="customer" 21 portType="itineraryPT" 22 operation="sendItinerary" 23 container="itinerary" 24 <source linkName"order-to-airline"/> 25 </receive> 26 <invoke partner="airline" 27 portType="ticketOrderPT" 28 operation="requestTickets" 29 inputContainer="itinerary" 30 <target linkName"order-to-airline"/> 31 <source linkName"airline-to-agent"/> 32 </invoke> 33 <receive partner="airline" 34 portType="itineraryPT" 35 operation="sendTickets" 36 container="tickets" 37 <target linkName"airline-to-agent"/> 38 </receive> 39 </flow>© Twynstra Gudde 12-9-2009 40 </process> 19
  • 20. Service Oriented Architecture De SOA infrastructuurPortaal Afnemers (presentatie) Orchestration Procesdiensten engineServicebus Samengestelde diensten Basisdiensten Backends Bestaand Database systeem Domein Domein © Twynstra Gudde 12-9-2009 20
  • 21. Service Oriented ArchitecturePortaal J2EE Portlets .NET Web partsPresentatie J2EE JSP / Java Beans) HTML, XML, XSL .NET ASP / ActiveX)Orkestratie engine BPELProcesdienstenSamengestelde diensten J2EE (EJB etc.) .NET (C# etc.)BasisdienstenServicebus XML, SOAP WSDL, UDDIBackends ODBC, JDBC © Twynstra Gudde 12-9-2009 21
  • 22. Service Oriented ArchitectureBas Kruiswijkbkr@tg.nlwww.twynstragudde.nlAlle intellectuele eigendomsrechten met betrekking totdeze presentatie berusten bij Twynstra Gudde. Niets uitdeze presentatie mag worden verveelvoudigd of openbaargemaakt zonder schriftelijke toestemming van TwynstraGudde.© Twynstra Gudde 12-9-2009 22

×