Today Microsoft announced one of the biggest changes in BizTalk Server 17 years history, they are open sourcing some elements of the product. It makes perfect sense for a product like BizTalk Server to head down this route since apart from the core engine there are a lot of ancillary components on the platform that makes the platform richer and can be developed and improved in isolation.
BizTalk Server heading in Open Source direction
The key components of BizTalk Server that makes perfect candidates to-be open sourced are
- Pipeline Components
The main objective of Microsoft will be to sell more licenses of BizTalk Server. The above components on its own (except Schemas) has very little value outside the scope of BizTalk Server. The platform gets richer if there are a richer set of Adapters, Accelerators, Pipeline Components, ready to use Maps (transformations) available on the platform, eventually resulting in more sales of BizTalk Server licenses.
Typically Microsoft builds a strong partner and developer community with its product line ups. SQL Server and SharePoint are good examples, where there are numerous ISV’s who build value added products on top of the platform. Whereas for some reason even though BizTalk Server is a perfect candidate for a thriving partner eco-system to built adapters, maps, and pipeline components and so on, for some reason the partner eco-system didn’t take off. There are very few companies like BizTalk360, nSoftware, Active Adapter etc who tapped into this market.
However, the developer community is so big in BizTalk Server. Today, you’ll find answers to pretty much any BizTalk Server related questions by doing a simple “Google or Bing” search. It makes perfect sense to give the opportunity for the BizTalk developer community to enrich and enhance the platform by contributing real code.
As the first step in this journey, today Microsoft has open sourced 3500+ schemas via their Integration Git repository under the “Contributor License Agreement”. This includes all the EDIFACT, HIPAA, X12, and HIX schemas. Looking at the folder structure of the Git repository, it’s apparent soon we could see Adapter and Pipelines getting open sourced as well.
Will the core engine get open sourced?
It will be very unlikely to see the BizTalk Server core engine getting open sourced. There is no real value either for Microsoft or for the community in doing so, the engine is complex and it may depend on various Microsoft internal dependencies. Example: When Microsoft open sources ASP.NET MVC and Web API, they didn’t open-source ASP.NET Web Form since it was part of System.Web.dll which the Windows Server OS relies on.
What is the benefit of open sourcing?
The community can get involved and enhance certain improvements. The end customers can tweak the component slightly for their requirement. Example: If Microsoft open source the SAP adapter, and a customer got some specific requirement to make small enhancement to the adapter, that’s possible. All the standard benefits of Open Source will be applicable when it comes to benefit.
If there is a nagging small bug in the component, if you think the fix is straight forward you can simply fix it yourself and move on, instead of waiting for a Feature Pack or Cumulative update. Please see the next section carefully about supportability.
Who is going to support it?
Microsoft is only open sourcing certain components code and it will not support the modified version by end users. Microsoft will only support the version of the components that ship with the product, either out of the box or via Features packs or cumulative updates. Microsoft is also planning to accept community contribution, which might then get released as part of “Feature Pack” or in the vNext of the product. However, only officially shipped components will be supported. This is something the end user needs to be aware of.
Overall it’s a great initiative, it’s fantastic to see Microsoft heading more in this direction. Few important products that gone in this route .NET Core is Open Source, ASP.NET MVC, Web API, and Web Pages (Razor) are Open Source