Ik heb het al veel vaker gezegd, met als resultaat de nodige hoon en boze reacties, maar ik blijf erbij: BizTalk is een niche product. Helaas wordt het bijna gepresenteerd als de oplossing der oplossingen voor moderne business applicaties, en veel mensen die BizTalk gebruiken geloven dat ook.
Gisteren kreeg ik voor het eerst bijval voor mijn mening, en niet van de minsten. Tijdens een etentje met TechEd sprekers Clemens Vasters, Michele Leroux Bustamante, Juval Lowy, Brian Noyes en Steve Schwartz (Microsoft "Indigo" Team), kwam BizTalk ter sprake. Hun mening is niet veel anders dan de mijne.
Wanneer is BizTalk wel/niet van toepassing?BizTalk is primair gericht op het integreren van meerdere (of eigenlijk veel) systemen, en het verzorgen van het business process via workflow. Vraag jezelf nu eens af: "hoeveel organisaties hebben meer dan 5 systemen waarvoor het nut heeft om die aan elkaar te koppelen op de manier zoals BizTalk dt doet?". In mijn ervaring: niet veel. Grote bedrijven als ABN AMRO, Philips, Shell, voldoen hier wel aan. Maar de gemiddelde organisatie in Nederland, waarvan ook heel veel MKB is absoluut niet. Voor dat soort organisaties is BizTalk absoluut overkill. Dat brengt enorme kosten met zich mee en dat is niet in het belang van de organisatie. En dan heb ik het lang niet alleen over de licenties, maar ook over de ontwikkeltijd en de hardware kosten. Debugging in BizTalk is vooralsnog niet op het niveau van .NET, waardoor de ontwikkeling veel meer tijd kost. Bovendien, de meeste applicaties doen niet veel meer dan wat data manipulatie. De performance daarvan in BizTalk is factoren langzamer dan dezelfde (simpele) .NET code. Door deze functionaliteit zonodig nog beschikbaar te maken als service, dan ben je al een heel end op weg richting wat je met BizTalk doet.
Begrijp me niet verkeerd, BizTalk heeft z'n nut. Het is geweldig in het transformeren van gegevens uit bestaande systemen, zodat meerdere systemen een gemene deler hebben en met elkaar kunnen communiceren. Dat is leuk als je bijvoorbeeld SAP hebt staan met een aantal andere enterprise level applicaties. Als de gegevens in SAP (of een vergelijkbaar systeem) nodig zijn in andere applicaties, is een "platte" export minimaal zo effectief, en qua performance veel beter.