Saturday, December 20, 2008

BizTalk 2009 Beta - First Look

On December 8th, 2008 I created a blog post indicating that the BizTalk 2009 Beta had gone public. Since then I have had a chance download the bits and play around with this latest release from Redmond.
I consider this release to be an evolutionary release, not an revolutionary release. One of the main purposes of this release is to align with Microsoft's latest technology platform offerings. This includes: Windows Server 2008, SQL Server 2008 and Visual Studio 2008. In addition to those additions, you will also see tight integration with Team Foundation Server, ESB Guidance 2.0, greater Unit Testing and debugging abilities and additional UDDI support.

I have taken some screen shots of the installation experience and will provide some relevant comments inline. The install was done on a Windows Vista dev PC, using SQL Server 2008 Developer edition and Visual Studio 2008 Professional Edition.

Also note that this is Beta code so there are bound to be some changes to the final cut of the code.

The Prerequisite component installation remains a pain-less and efficient endeavor. Who remembers the pain that gathering all of the BizTalk Server 2004 prerequisites inflicted?
Something you may notice missing is Human Workflow Services (HWS). This feature was previously deprecated in BizTalk Server 2006 so it does not come as too much of a surprise that it is M.I.A.

For continuous integration enthusiasts, the highlighted "Project Build Component" should be of interest. It allows you to build BizTalk projects on a server that does not have an installation of Visual Studio on it. For instance, within my organization we use to poll our VSS repository looking for any changes to BizTalk projects. This occurs on a dedicated Build Server where we have an installation of VS.Net. Using this feature would allow us to reduce a VS.Net license. BizTalk is a first class citizen in MSBuild. So everything that you can do in VS.Net (with respect to build and deploy) you can do in MSBuild.

Below is the standard configuration screen that we are use to seeing with BizTalk Server 2006 Rx. Not too much has changed with the exception of MSMQT. This was another feature that was deprecated in BizTalk 2006. Microsoft has been pretty adamant about getting off of MSMQT as there were plans for its dismissal

Success...and on the first attempt no less!

Since BizTalk was installed on a machine with VS.Net already on it, you can see that the BizTalk templates have now been installed which allows developers to create and modify BizTalk Projects.

So as I have previously stated, this is an evolutionary release so you will not find many actual BizTalk changes in Visual Studio. This includes:
  • No new BizTalk Shapes
  • No new Functoids
  • The Expression Editor still is not re-sizable - This debate never gets old :-)

Something that you will notice different is that the "Development and Deployment" VS configurations are gone! You will now only have Debug and Release which aligns better with what .Net programmers are use to. It also simplifies some of the automated Build and Deploy configurations, when dealing with .Net Helper assemblies.

I had the opportunity to participate in a Microsoft BizTalk 2009 Brown Bag session and have made some ad-hoc notes which I am happy to share with you (Non-NDA):

  • BizTalk Project System – New Project System is implemented as a Flavor of C# Project System. This should allow for smoother transitions for future versions of Visual Studio. The BizTalk project is now a first class citizen in Visual Studio.
  • BizTalk Project can contain any item (not just BizTalk artifacts). This means that you can have a C# class in your BizTalk project and do not have to create a separate .Net project that BizTalk would call. Note there are a few minor issues with adding a new class in the current build of this Beta but it will be fixed.
  • Debug and Release as default configurations as opposed to Development and Deployment
  • Add Web Reference is not directly available on Project anymore. Need to access it through “Add Service Reference” dialog box.
  • Migrated all BizTalk project and item templates to the new style (.vstemplate)
  • Old style templates are still supported.
  • Full Visual Studio integration for BizTalk project migrations. This integration supports both BizTalk 2006 (R1 and R2) to 2009 migrations. ( I plan on creating a separate blog post that deals specifically with migration).
  • During migration, only .sln, btproj and btproj.user files are backed up as there are no fundamental changes to remaining artifacts.
  • Support for conversion of projects checked into Source Code Control.
  • Implemented entire BizTalk build system using MSBUILD.
  • Support for incremental builds (only re-build what you need to rebuild - this will reduce some of the build times for minor changes to your project).
  • Refactored all compilers to eliminate any VS Dependencies – can compile BizTalk projects without VS – Project Build Component in BizTalk install (for build server).
  • Map, Schema(validate against sample instances) and Pipeline(programmatically) unit tests can now be executed from within Visual Studio.
  • Currently you cannot debug a map that has an extension object – such as calling an external assembly – will be addressed in a future release. You can unit test it though.
  • Currently(2009 beta) multi source maps cannot be united tested
  • DEBUG and TRACE constants will work for c# classes in BizTalk projects.


Peter Owens said...

Thanks for taking the time to post this. So glad they have concentrated on aligning this product with the existing suite rather than pushing out more brand new features and again changing everything. I figure it gives me another 2 years of breathing room before any major changes. The biggie here is obviously MSBuild support which I'm guessing is where most of the development time has gone. However lots of little things such as renaming deployment/development, inclusion of .NET artifacts and alignment of config pages is also great news. Looking forward to having a play with it soon.

Kent Weare said...

Thanks Peter.

I would imagine that the MS Build support and making BizTalk projects a first class citizen in VS 2008 is where they spent a lot of their time. These investments 'should' make tranisitioning to new VS versions, such as VS 2010, much smoother and more timely in the future.