BizTalk Integration Summit 2013 Recap

By Nick Hauenstein

The week before this last holiday week was quite a time to be in the BizTalk world. The BizTalk Integration Summit 2013 kicked off at the swanky Fairmont Olympic Hotel in Seattle, Washington bringing with it a defined release cadence and roadmap, new cloud-based product announcements, and even a peek into the plans for the upcoming on-premise version of BizTalk Server.

The First Peek

The first peek into what the Thursday-Friday event would hold is captured in this agenda from the first day. The first day contained a single track of content, where all attendees would be able to experience the same messaging and presentations. The second day provided two tracks for those who wanted to chose their own adventure.

agenda

Familiar Faces & New Faces

The man in the Red Polo himself – Scott Guthrie kicked off the event – and also took the opportunity to announce the general availability of Windows Azure BizTalk Services. To clarify, it’s real and released – no longer in preview – but also not a static unchanging thing (as we will see later).

scottgu

We also had a new face bringing the initial welcome – Mark Moritmore. He’s the man behind the event, having received the torch passed by Kent Brown (who is now working with NY-based integration powerhouse Nimbo). This guy is passionate about the product, and is a long-term thinker. He’s exactly what BizTalk needs as organizations continue to choose BizTalk Server and Windows Azure BizTalk Services for mission critical integration applications that are expected to have long lifespans.

mark

Updated WABS SDK

The announcement of the general availability of Windows Azure BizTalk Services left me itching to get the bits, and “play” with them for lack of a better term. However, all the turkey from Thanksgiving put me a week behind the times and I just had a chance to download/install the freshly released SDK last night. One of the changes I noticed right away (from the last time I had installed one of the preview SDKs), is that I wasn’t having to hunt for miscellaneous MSIs to install the pre-requisite components. The new streamlined setup just makes it happen (though you’d better have a SQL Server or SQL Server Express instance handy if you’re planning on using the BizTalk Adapter Service – it’s not going to do that for you).

auto_install_dependencies

One of the other things demoed at the summit was the BizTalk Service Explorer Visual Studio Extension. This is a nice little plug-in for the Server Explorer window that allows you to interact with BizTalk Services artifacts in really cool ways (e.g., submitting a test message without leaving Visual Studio). While the UI looks/feels clunky at times, it definitely gets the job done. After seeing it, this will be on my list of extensions to install by default.

biztalkservice_explorer

Misc Thoughts About WABS GA

Looking at WABS from the perspective of migrating existing on-premise solutions to the cloud, I’m not sure the story is really complete there (and that’s not some huge secret – WABS is still in active development, and upcoming changes will erase most of the concerns I’m about to mention).

First, as noted in an earlier post, I did have some expectations around the map upgrade tool that still weren’t really met with this release. I had at least hoped the limitations in the preview would not be seen in the final release, or that I would get happier results than I was seeing before out of the tool at the very least.

Another tool that ships with the SDK is a TPM migration tool (essentially to move parties/profiles/agreements to the cloud. While this is actually done pretty well, there is still some mismatch in capabilities (e.g., EDIFACT is available on-premise, but is still a future delivery for WABS) that will prevent moving all solutions.

I took a look at the X12 schemas while thinking through some integrations I’ve worked on in the past, and noticed an absence of the schemas used for HIPAA sub-document splitting. To be fair, I haven’t actually had an opportunity to test to see if that functionality is present (for the most part the schemas are 100% clones of the on-premise schemas, so maybe those extensions are implemented in the WABS version of the EDI Disassembler), but it’s not looking promising. So those integrations would potentially stay on-premise as well.

Another thing that makes me more than a little bit uncomfortable is the direct deployment from Visual Studio. I’m hoping we will see more solutions like Michael Stephenson’s AppFx.ServiceBus.Build that will make deployment a happier experience (and hopefully a fully automated one that doesn’t live in Visual Studio).

That’s not the end of the story though. I don’t intend to write this in such a way that it seems I’m saying that WABS is somehow unsuitable. Instead these are the places where there is still work to be done – and I’ll emphasize again – work is being done. EDIFACT support was confirmed as coming, along with a new rules engine (with new tooling), support for Windows Workflow Foundation workflows, AS2 support, and other fun extensibility points (e.g., BAM-like tracking, easy to build/lightweight adapters). So we’re getting a better B2B story, and also starting to see the seeds of a BPM story emerge within WABS.

Essentially WABS is doing great things already (for straight-forward X12 integrations built fresh for WABS), and will be doing even better things in the future.

BizTalk 2013 Updates Since Release

Another point of discussion was the present state of BizTalk Server 2013 on-premise, as well as a road map for the future. Since the release of BizTalk Server 2013, the BizTalk team has been hard at work, and shipping updates and new functionality (e.g., HIS 2013, which had been delayed due to close work between the product team and TAP customers to get everything happy and ready for release).

2013updates

BizTalk Futures (2013 R2 and Beyond)

Looking to the roadmap ahead, the team made a commitment to a release cadence (that in a way is a continuation of what we have already seen, but which hadn’t so much been publicly formalized). The release cadence going forward will see:

  • Major BizTalk Server release every other year
  • R2 BizTalk Server release every year there is no major release
  • Cumulative update package each quarter
  • WABS refresh each quarter

release_cadence

Looking at this slide, I feel like I’m looking at a description of the release cadence for Visual Studio. Which is nice, because in a way this provides some level of guarantee that I’m going to be able to develop BizTalk Server artifacts in vLatest of Visual Studio (give or take a few months in this case).

As part of the commitment to this release cadence, an announcement was made for BizTalk Server 2013 R2, which will bring:

  • Platform alignment
  • JSON Support (so much for all that work writing pipeline components!)
  • Proxy support for the SFTP adapter (as well as SSO support)
  • Authentication improvements for Service Bus
  • Healthcare Accelerator Improvements (slides to follow with specifics)

2013r2features2013r2features2

Exciting Road Ahead

When you get down to the bottom of it, it really is an exciting road ahead for BizTalk Server. I had a lot of fun this year at the BizTalk Integration Summit, and I’m hoping that this becomes an annual tradition and opportunity for the BizTalk community to come together in-person, and have a dialog with the team that’s building the product and service.

Before I close this post out, I want to give a shout out and thanks to everyone that stopped by our table and has found themselves sporting a new tablet cover with the QuickLearn Training logo (spread the love!), and a thanks to everyone who made it to our party at the Rock Bottom Brewery – lots of good times and good conversations were had there!

If you want to get some other perspectives on the summit, Saravana and Steef Jan (among others) beat me to the punch and have offered their thoughts here:

Well, it looks like I don’t have an excuse to sit in this restaurant any longer (one of the upper floors of a seemingly endless concourse at DEN). I’m going to go catch the rest of my flight out to Houston (completely different part of Houston than last time) to teach some TFS this week, and I’ll be back in short order. Until then, take care!

Building Blocks of Windows Azure BizTalk Services

By Nick Hauenstein

This post is the twenty-second in a weekly series intended to briefly spotlight those things that you need to know about new features in BizTalk Server 2013.

Since the last BizTalk Summit, there has been a lot of coverage within the greater BizTalk Community of Windows Azure BizTalk Services – the Azure-backed offering that brings pieces of the core BizTalk Server functionality to the cloud. This is something that QuickLearn had early opportunity to get hands-on with, and also something for which we were able to create labs (even before public availability). At the same time, it’s something that we haven’t really written about until now.

This week, rather than going through specific how-to guidance for pieces of the offering, I instead want to take a step back and look at the offering as a whole, so that we all understand the pieces that are there (and can see the forest through the trees). If you want to follow along, go ahead and download the Windows Azure BizTalk Services Preview SDK.

Once installed, you’ll find that Visual Studio has been juiced up with two additional project templates found under the BizTalk Services heading:

image

The first project type BizTalk Service allows you to define Itineraries (not in the ESB sense, though they do display a complete message flow, much like ESB), and the configuration for Bridges (much like a BizTalk Pipeline).

The second project type BizTalk Service Artifacts allows you to define schemas and maps (.trfm files, though you can convert your existing .btm files with some limitations using a tool provided at the SDK download link). The mapper is something I’m not going to be discussing any further, and as a result I will instead recommend this excellent blog post on the subject by Glenn Colpaert, and then also the official documentation on the conversion process/limitations.

So we can create these Itineraries, configure these Bridges, and deal with Schemas and Maps, but how does this all fit together within the context of Windows Azure BizTalk Services? To understand the answer to that, we have to first address the three things that Windows Azure BizTalk Services is trying to do:

  • Rich Messaging Endpoints (Itineraries + Bridges + Maps)
  • BizTalk Adapter Service (Service Bus Relay + Local Helper Service + BIzTalk Adapter Pack)
  • Business to Business Messaging (EDI Schemas + All of the Above)

Rich Messaging Endpoints

image

I’m going to start with the weirdest of the bunch – Rich Messaging Endpoints. The developer experience of this is similar (to a point) to defining an ESB Toolkit itinerary, but only inasmuch as you’re seeing the entire message flow within a single diagram. Here you can define certain sources (FTP/SFTP) for messages, and have them routed through Bridges (similar to Pipelines), and then routed out to certain destinations (for which CBR can be used to route the messages to one or multiple destinations).

In order to specify the settings necessary to connect to those destinations, you often find yourself within a configuration file defining WCF related binding settings directly:

image

Double-clicking on a bridge within the itinerary will bring up a semi-clone of the Pipeline Designer with a fixed set of components in place (as well as a location to specify maps to execute directly as part of the pipeline):

image

In terms of integration patterns, the bridges here are giving us a subset of the VETRO pattern (namely the VETR part of it): Validate, Enrich, Transform and Route. Where is the Route part of the equation you might ask? Well, you’ll actually find it in the Properties window for the bridge, by clicking the button in the Route Ordering Table property:

image

Here, we can do context-based routing that helps determine the destination for each message coming from the destination (though here, I have only connected a single destination endpoint).

BizTalk Adapter Service

image

What happens if the list of destinations doesn’t suit me? What if I want to take information from an SFTP drop, transform it into something that I could use to generate a record within a table in SQL, and then directly insert that record into my on-premise system? In that case, I’ll find myself reaching to the BizTalk Adapter Service feature.

This one has a nice list of dependencies that need to be in place before you can even use it (e.g., Windows Server AppFabric, BizTalk Server Adapter Pack), but once you have those, it’s fairly straight-forward to setup.

What it’s really providing is a single WCF endpoint that is exposed over a Service Bus Relay endpoint (and thus accessible from anywhere in the world – even if hosted behind a fairly strict firewall). This single endpoint can be passed messages destined for any number of internal systems that you can setup through the Server Explorer interface within Visual Studio. The BizTalk Team Blog actually had a pretty decent article on the topic back in June that sadly generated 0 comments.

Essentially, this is allowing you to bring your LOB systems into the mix to play along with everything else already mentioned (assuming those LOB systems have WCF adapters included in the BizTalk Adapter Pack).

Business to Business Messaging

The final capability that WABS is bringing to the table is B2B messaging (i.e., EDI). We have the ability through a special portal (still in preview) within the Windows Azure Management interface to create Parties and Agreements a la BizTalk Server on-prem. In fact, the same exact schemas are used to define the X12 messages, so if you’ve already had to do some schema customizations on a per-partner basis for in-house integrations, those same changes can now be brought to the cloud.

Pulling it All Together

Is this replacing BizTalk Server on-premise as we know it? Not quite. We have a lot of the same pieces: Transport (Limited)/Translation (Limited)/Transformation and Context-based Routing (Content-based Routing when using the Enrich stage of the Bridge). We are missing more complete process orchestration with exception handling / transactions / compensation (Orchestrations). We are missing rule-driven injectable logic (Business Rule Engine), among other things (though I’m stopping the list here to avoid debate about similar (but not quite) functionality in Azure in general).

So what do we do with this? Use it to solve integration problems that use a hybrid between cloud-based and on-premise resources (e.g., http://msdn.microsoft.com/en-us/library/windowsazure/hh859742.aspx). Use it when an on-premise BizTalk installation would be overkill for the task, but it can be done happily using the tools available in WABS. Use it to take over the most taxing parts of your B2B processing, leaving BizTalk Server on-premise to do those things it’s great at.

Ultimately, it’s up to you. BizTalk Server 2013 and Windows Azure BizTalk Services together give you the power to decide how to break up your integration work, and how you approach the integration challenges that are thrown your way.

If you haven’t yet given the SDK a download yet, go do it. Though the service is still in preview, the SDK has been available for quite some time now, and great things are right around the corner – so keep your skills sharp.

That’s all for now!