Is een ESB de oplossing voor mijn organisatie?

Als kritische bedrijfsprocessen in jouw organisatie afhankelijk zijn van twee of meer softwarepakketten (maatwerk- en standaardpakketten), dan is een ESB zeker een aanrader. ‘Traditioneel’ zouden die verschillende systemen met elkaar verbonden worden door bijvoorbeeld alle systemen afzonderlijk met elkaar te verbinden, maar met een ESB ontstaat een tussenlaag. Een soort hub. Daardoor hoef je bij verandering van je software of integratie met nieuwe software alleen de verbinding met de hub (de ESB) te wijzigen en blijft software die niet wijzigt of vernieuwt onaangepast.

Situaties waarin een ESB-oplossing uitkomst biedt voor bedrijven zijn:

- Als je verwacht dat de IT voor de kritische bedrijfsprocessen de komende jaren flink zal groeien of het aantal bedrijfsprocessen de komende jaren zal toenemen.

- Als je bedrijfsprocessen afhankelijk zijn van datastromen met externe systemen waarbij je wijziging van die software niet zelf in de hand hebt. Denk bijvoorbeeld aan externe partners of systemen zoals leveranciers, banken, keurmerken, etc.

- Als je een aantal standaard softwarepakketten voor de verschillende bedrijfsprocessen in je organisatie naar tevredenheid gebruikt, maar ze wel met elkaar wilt integreren. Denk aan pakketten voor CRM, bestellingen, betaalsystemen, etc.

- Als een bedrijfskritische wijziging van de data uit één systeem tegelijk moet worden doorgevoerd in verschillende andere systemen.

- Als de IT in je organisatie communiceert d.m.v. verschillende communicatieprotocollen of communicatietechnieken, zoals bijvoorbeeld REST, API, JSON, FTP, webservices, XML, EDI, SFTP of email.

- Als het belangrijk is dat de berichtgeving tussen systemen of losse softwarepakketen wordt gevalideerd, getransformeerd en/of gecontroleerd.

Wat doet een ESB-oplossing?

Een Enterprise Service Bus (ESB) verbindt verschillende applicaties met elkaar op een professionele manier. In kern zorgt een ESB voor transformeren en transporteren van data tussen verschillende softwarepakketten. Heel kort door de bocht is een ESB de postkamer voor de data van je verschillende systemen. Het ene softwarepakket verstuurt een bericht naar een of meerdere softwarepakket(-ten). Als er bijvoorbeeld een nieuwe klant wordt aangemaakt in een CRM, komen de adresgegevens ook automatisch in het boekhoudpakket, bestelsysteem en de helpdesk. Een ESB verzorgt die berichtgeving.

Hoe werkt een ESB?

Zonder in technische details te belanden: de ESB tussenlaag verzorgt de datastromen tussen je systemen, waardoor bij verandering van één van de systemen of integratie met nieuwe systemen (ook van bijvoorbeeld externe partijen) niet meteen al je software opnieuw hoeft te verbinden. De wijzigingen van de (nieuwe) software hoeft namelijk alleen in de verbinding met de ESB te worden doorgevoerd.

Het ontwerp van een ESB-oplossing begint bij Cbsec met een Common Data Model (CDM). Dat is een overkoepelend data model waarin we de huidige en gewenste bedrijfsprocessen in je software in kaart brengen: Daarbij bekijken we:

welke systemen onderdeel uitmaken van je bedrijfsproces?

welke informatie we gaan transporteren tussen die systemen?

hoe die informatie nu in je systemen staat (data model van ieder systeem)?

of we die informatie moeten transformeren tijdens de uitwisseling?

Om een indruk te geven van de legio aan mogelijkheden in een ESB lichten we een paar vormen uit. In dat CDM stellen we integratie-patronen vast met EIP’s (Enterprise Integration Patterns).