BizTalk Server is een product van Microsoft om systemen met elkaar te verbinden. Het kan als universeel koppelvlak dienen tussen allerlei systemen en applicaties. Het biedt ondersteuning in automatiseren van processen en met de ESB Toolkit, ook voor het opzetten van een service bus architectuur. Het kan worden gebruikt als B2B broker, EAI platform, eerder genoemde ESB en RFID. Integratie en proces automatisering: daarin ligt de kracht van BizTalk.
Sinds de eerste lancering wint BizTalk Server aan populariteit en zijn we nu, met het recent uitgebrachte BizTalk Server 2010, aanbeland bij de zevende versie van het product. Volgens de laatste cijfers van Microsoft werken wereldwijd meer dan 10000 klanten met BizTalk Server (zie onderstaand overzicht).
Wereldwijd werken een behoorlijk aantal bedrijven en overheden met BizTalk Server. Dit is allemaal zeer indrukwekkend, maar waar moet de klant nu rekening mee houden op moment dat hij BizTalk Server in huis haalt? En wat zou de business (de klant) of IT bewegen tot de aanschaf van producten zoals BizTalk? Welke overwegingen of wensen leiden tot oplossingen waar BizTalk een rol in kan spelen? Allemaal zinvolle vragen waar ik zal trachten een antwoord op te geven.
De business vandaag de dag moet flexibel zijn en snel op veranderingen in de markt kunnen inspelen. Het IT deel van een organisatie zal daarbij de eisen van de business volledig moeten begrijpen en kunnen in schatten. Daarnaast moet worden in geschat, hoe deze business eisen impact hebben op de bestaande of nieuwe systemen. De meest voorkomende business eisen zijn collaboration, governance, ROI en de eerder genoemde flexibiliteit. Collaboration, ofwel samenwerking, binnen en buiten een organisatie, is belangrijk om de business te laten groeien. Dit geldt voor zowel het ad-hoc versturen van berichten naar derde partijen, als voor de integratie van business functionaliteit binnen de organisatie. Governance, ofwel toezicht, heeft de business nodig om te kunnen voorzien in audit trails ten behoeve van wet- en regelgeving. En ten slotte wil de business altijd een return of investment (ROI) zien, zodat zij inzichtelijk hebben welke voordelen een systeem op termijn heeft.
De hierboven genoemde eisen zijn allemaal legitieme business eisen, maar hoe past BizTalk hier nu in? BizTalk Server biedt de mogelijkheid om bijvoorbeeld legacy systemen te ontsluiten, systemen die voor de business onmisbaar zijn. Vaak zijn dit monolithische, starre systemen, die met behulp van BizTalk flexibeler en wendbaar worden. Functionaliteit van dergelijke systemen wordt inzichtelijker en makkelijker te onderhouden.
Om het nog meer inzichtelijk te maken wat de argumenten kunnen zijn voor zowel business als de IT, volgt hieronder een overzicht van functionaliteiten:
Validatie van berichten. De structuur van een te ontvangen en/of te verzenden bericht wordt geanalyseerd en gevalideerd tegen een gedefinieerde structuur. De structuur wordt vastgelegd door middel van schema's.
Transformatie van berichten. In de ideale wereld wordt er van één berichtdefinitie gebruik gemaakt. Meestal is dit echter niet zo en worden voor eenzelfde type object meerdere berichtdefinities gebruikt (schema's). De integratie-broker biedt standaard voorzieningen om berichten om te zetten naar een andere structuur (mapping van het ene schema naar het andere schema).
Routering van berichten. Een ontvangen bericht wordt geanalyseerd en op basis daarvan doorgestuurd naar de geabonneerde applicaties/services. Routering kan plaatsvinden op basis van zogenaamde header-informatie of op berichtinhoud (content based routing).
Aggregatie van berichten. Het samenvoegen van meerdere berichten tot een nieuw bericht (aggregator pattern). Naast dit pattern zijn er met de integratie-broker meerdere patterns te implementeren, zoals opsplitsen van berichten (splitter pattern), verzamelen van berichten en versturen naar meerdere ontvangers (gatter-scatter pattern).
Betrouwbaarheid en beveiliging. Technisch-functionele diensten zoals gegarandeerde bericht aflevering, beveiligd transport, garantie van afzender en van oorspronkelijkheid van het bericht.
Adapters en transport. Koppeling en communicatie naar applicaties en systemen.
Orchestration (samenstelling). De mogelijkheid om bestaande diensten te combineren tot een nieuwe, gecombineerde dienst. Een voorbeeld hiervan is het aanbieden van locatie gebaseerde informatie: de service die de locatie bepaalt, wordt gekoppeld aan de service die informatie over de locatie oplevert. Door combinatie van twee 'eenvoudige' services ontstaat een nieuwe service/product.
BAM (Business Activity Monitoring). Processen en/of samengestelde services kunnen door middel van voorafgestelde KPI's gemeten worden. BAM is de service die dit realiseert en biedt de mogelijkheid om via een cockpit de resultaten te analyseren en op basis van deze analyse het proces aan te passen.
Business to Business Integration. XML, EDI en dergelijke formaten worden ondersteund, zodat externe systemen kunnen communiceren met BizTalk. Ook business processen in de ene organisatie kunnen communiceren met een BizTalk proces in andere organisatie.
RFID Platform. Het platform binnen BizTalk voor ontwikkelen, uitrollen en management van Radio Frequency Identification (RFID) oplossingen, waarbij de meeste RFID apparaten worden ondersteund.
Business Rules. Het toepassen van logica (regels) op processen (orchestrations) binnen BizTalk. Het raamwerk maakt het mogelijk declaratieve regels op te stellen, die een duidelijke betekenis hebben en gekoppeld kunnen worden aan feiten (zoals XML documenten, database tabellen of .NET componenten).
Management. Management van processen, berichten en applicatie artefacten via een centraal management console.
Integratie met Visual Studio. Tools voor ontwikkelen, testen en uitrollen van BizTalk artefacten en oplossingen.
Nu we de business kant van het verhaal belicht hebben, gaan we het eens bekijken vanuit de IT kant. Daarbij kun je de vraag stellen hoe BizTalk past in hun landschap? Het antwoord is deels terug te vinden in de beschreven functionaliteiten van BizTalk. Adapters en transport zijn bijvoorbeeld interessant, omdat daarmee koppelingen en communicatie naar andere applicaties en systemen mogelijk zijn.
Adapters die met BizTalk meegeleverd worden of beschikbaar zijn via Microsoft, stellen je in staat met diverse systemen te integreren zoals PeopleSoft, JD Edwards, SAP, Siebel, TIBCO, IBM Mainframes, IBM DB2 en Oracle. Daarbij worden out-of-the-box allerlei communicatieprotocollen ondersteund zoals WCF, HTTP, FTP, SOAP, MQSeries, MSMQ, SMTP en POP3. Data in de diverse systemen kunnen dus via allerlei communicatieprotocollen door BizTalk ontsloten worden.
Binnen heterogene omgevingen kan BizTalk met haar adapters een belangrijke rol spelen om applicaties met elkaar te integreren. Zeker wanneer binnen een organisatie Microsoft de voorkeur heeft boven leveranciers als IBM of Oracle, die vergelijkbare producten leveren zoals IBM WebSphere en Oracle Fusion/SOA Suite.
Dit is zeker niet de enige interessante functionaliteit van BizTalk. Het kunnen ondersteunen van een zakelijk proces, door meerdere diensten samen te stellen met behulp van orchestration, is een erg krachtige functionaliteit. Het is in feite een implementatie van een zakelijk proces, waarbij een of meerdere stappen in een logische en chronologische volgorde zijn gezet.
Tot zover is het denk ik wel duidelijk geworden wat BizTalk Server kan betekenen voor zowel de business-kant als de IT-kant binnen een organisatie.
Voor meer informatie zie de volgende bronnen:
Sandro Pereira edited Revision 23. Comment: Fixing picture format to center
Steef-Jan Wiggers edited Revision 21. Comment: errata
Steef-Jan Wiggers edited Revision 19. Comment: Deleted 2010 topic
Steef-Jan Wiggers edited Revision 18. Comment: Formatting
Steef-Jan Wiggers edited Revision 17. Comment: Formatting
Steef-Jan Wiggers edited Revision 16. Comment: Added picture
Steef-Jan Wiggers edited Revision 15. Comment: Added topic referenties
Steef-Jan Wiggers edited Revision 14. Comment: New topic
Steef-Jan Wiggers edited Revision 13. Comment: Format
Steef-Jan Wiggers edited Revision 12. Comment: Different topic title
Steef-Jan Wiggers edited Original. Comment: Added text to Waarom BizTalk topic
Steef-Jan Wiggers edited Revision 1. Comment: Added Functionaliteiten topic and text
Steef-Jan Wiggers edited Revision 2. Comment: Added topic Waarom BizTalk: IT-perspectief
Steef-Jan Wiggers edited Revision 3. Comment: Added text to Waarom BizTalk: IT-perspectief
Steef-Jan Wiggers edited Revision 4. Comment: Formatting
Steef-Jan Wiggers edited Revision 5. Comment: Added BizTalk Server 2010 topic inluding text and links
Steef-Jan Wiggers edited Revision 6. Comment: Formatting
Steef-Jan Wiggers edited Revision 7. Comment: Formatting
Steef-Jan Wiggers edited Revision 8. Comment: Formatting
Steef-Jan Wiggers edited Revision 9. Comment: Formatting again
Steef-Jan Wiggers edited Revision 10. Comment: Formating
Steef-Jan Wiggers edited Revision 11. Comment: Formatting