Early Retirement for SSO Config Tool

[Source: http://geekswithblogs.net/EltonStoneman]

As Saravana Kumar has blogged, Microsoft have released an MMC snap-in for SSO configuration. It has pretty much all the functionality of the SSO Config Tool I put together a while ago, including:

  • UI for configuring values in an SSO application store
  • MSBuild task to import/export SSO settings from XML
  • .NET class for accessing SSO values

The .NET wrapper is pretty rudimentary, and one thing the snap-in doesn’t do is generate a wrapper for typed access to SSO values. The snap-in lets you read values like this:

boolcacheEnabled =bool.Parse(SSOClientHelper.Read(“SSOApp1”, “CacheEnabled”));

– whereas SSO Config Tool generates a class per SSO application, which lets you read values like this:

boolcacheEnabled =SSOApp1.CacheEnabled;

Overall the snap-in is a better management tool, so I suspect I’ll switch to it the next time I’m setting up config in SSO.

I’ll look to extracting the functionality for generating the typed wrapper into a standalone T4 template.

Using UML vs. ADL (Arbitrary Diagramming Language)

Using UML vs. ADL (Arbitrary Diagramming Language)

At my company, we highly encourage our architects and developers to communicate their design models through UML.  We have a standard set of diagrams that we regularly use to convey aspects of a given solution, including:

Component diagrams for system dependency, functional decomposition and data flow
Use case diagrams for business and system scenarios
Sequence diagrams for a […]

BizTalk remote administration

BizTalk remote administration

Every application needs management. Ideally an application should provide two ways of management. First an administrator needs a (graphical) console to be able to do single or ad-hoc actions like changing configuration, responding to error conditions, etc. Second there should be a way for an administrator to create and run scripts. Scripts allow administrators to […]

Google Chrome Operating System

I know this is VERY off subject, but I wanted to see what all of the hubub was about with the new OS that is going to be hitting the market in late 2010.

I installed it and ran it. Not terribly interesting. Here are two of the main shots:

and the really interesting screen

My take on it:

I guess it will be good for those who love to browse the internet and that is it. I am a big fan of Android, but an OS that is centered simply around the web? I guess the time is coming “welcome to cloud computing.”

AppFabric and BizTalk

There have been lots of questions lately about AppFabric (code named Dublin). These questions have centered around why Microsoft needs another middle tier solution and will AppFabric replace BizTalk.


Lets take a look at these questions as well as two additional questions; What is AppFabric and why does Microsoft need another middle tier solution? First, AppFabric is a distributed application server. To answer the other questions, we need to go in a little more depth.


Before .NET was released, developers working with the Microsoft technologies used COM+ to host their middle tier objects. Back then, when we needed to scale out our object oriented and object based applications we created middle tier code libraries and ’hosted’ them in COM+. The COM+ host provided instance management (just-in-time activation), role-based security, automated transaction management as well as better memory and processor management, distributed transactions and a number of other services. 


When .NET was introduced, we moved away from COM components and also moved away from using COM+ as a hosting model. This left a vacuum that so far had gone unfilled.


In attempts to fill this vacuum, individual developers had to create their own hosts. These hosts typically were Windows Services. However, these services usually didn’t include multi threading, scale out capabilities, tracking, monitoring, etc. – the types of functionality that has been in BizTalk for years. As Microsoft looked at BizTalk, as well as the .NET Framework, it was determined that there are many great features in BizTalk that if a scaled down version was available it would address gaps in the framework. Thus AppFabric was born.


For .NET developers writing applications using WCF and WF, AppFabric will fill the middle tier hosting vacuum. AppFabric will provide the host and will provide scalability and support for building out your middle tier application components. It also will simplify deployment, configuration, management and scalability of composite applications. The goal of AppFabric is to provide a server infrastructure, on which business logic developed in WF can be executed and exposed via WCF endpoints, without the need to design, develop, and support the infrastructural code.


The next question I hear is will AppFabric replace BizTalk? The answer is very clearly no.


AppFabric should be used when your architecture calls for an application level code-first object based approach. This is the same approach that is used by WF and WCF programming models and is the one that can be hosted in AppFabric and the additional functionality that AppFabric provides. AppFabric will provide a number of management and scalability features through IIS and WAS to provide the server infrastructure without the need to write the plumbing as you did before. This is a different approach than that of the XML Schema first approach that is used in BizTalk.


Use BizTalk when your architecture calls for an enterprise level message based approach. Use BizTalk when you need to isolate disparate systems that need to be connected. In point-to-point integrations, changes made to the provider system can have a profound impact on the consuming application. BizTalk natively provides a hub-based integration model which eases this burden and allows organizations to provide business services that are isolated from the impact of changes made to the systems and processes on which these services are based. This is achieved through the use of separate schemas, and the associated ability to easily develop message transformation logic using BizTalk’s Mapper tool. Use BizTalk if you have business-to-business requirements and need to integrate using technologies such as EDI, SWIFT, RosettaNet, AS2 or HL7.


The reality is that businesses will utilize both of these technologies in their different application architectures. This is not an either or decision but instead a decision of where and when to use each. 


Keep in mind, however, that many of the same terms are used to describe the functionality provided with both BizTalk and AppFabric. These terms are things like Content Based Routing, Correlation, long running transactions, etc. Although the terms are the same the implementation and functionality is different. With all decisions, make sure that you take a couple of minutes to look under the hood and ensure that you understand the differences.

BizTalk Server 2009 Standard and 64-bit processing

I was kind of suprised when I saw this blog post. Saying that 64-bit processing wasn’t allowed with Standard Edition of BizTalk. Since I was at PDC at the time I asked the team who were (without me putting words in their mouths) equally suprised. At the time they couldn’t see either a licensing or technical reason as to why that would be so. And to add to that it made little sense that Branch was allowed while Standard was not.

I didn’t have access to machines (or time) to test right then, but after getting back I tested and true enough you are not allowed to create a 32-bit host. The UI stops you. As you can see, this doesn’t stop BizTalk Server Standard from being installed on a 64-bit machine – it just doesn’t get the benefits of 64-bit processing.

I also found an “official” explanation to this here, which I’ve pasted below:

"We consider 64-bit support an Enterprise Edition level feature that a customer would only select if they require faster messaging/orchestration processing or the larger addressable virtual memory of 64-bit mode for large BizTalk message mapping or other memory intensive operations. Because the Standard Edition is designed for small-to-medium environments, it is licensed to only run on a single BizTalk server with a maximum of two CPUs, maximum of five "BizTalk Applications", and a single message box. 64-bit support for the Standard Edition seemed counter-intuitive from a technical and licensing perspective. If the deployment scenario requires 64-bit hardware then it certainly requires BizTalk Enterprise as well. Standard edition is for single box only installations. Enterprise is also required for multi box installs and for clustering."

Judging from the teams initial reaction and the fact that 64-bit is now very much mainstream, especially on servers, I would expect to see this change in the upcoming releases of BizTalk Server.

Webcast – Integration Concerns for Healthcare Organizations

In the next few weeks, Microsoft Canada will be hosting a number of webcasts focused on integration solutions for specific industries. On November 26th, we will be focusing on solutions for Healthcare organizations. I will stress that these events are being run by the Canadian team with a focus on Canadian organizations. If you can’t make it to this event, we will be recording it, so you can watch it on demand. The registration link and session abstract is below.

November 26th 2:00 PM EST, Register now for the Webcast

A better way to connect your distributed systems.

Today’s healthcare organizations face many challenges in implementing, managing and maintaining HL7 integration solutions. Integration solutions must be able to support mission-critical healthcare systems, and meet the requirements of the current regional and provincial initiatives while at the same time ensuring future EHR initiatives can be accommodated within the solution’s framework.
This event will focus on tools, methodologies and best practices to help simplify and accelerate Healthcare Integration solutions. Attend and learn from real-world success stories on how Microsoft-based technologies were applied to deliver healthcare solutions.

  • EHR and HealthVault
  • HL7 v2 and v3
  • Regional Integration
  • Patient & Provider Portals
  • Paperless Clinical Operation
  • Medical Device Integration
  • Reporting & Analytics
  • Performance Management

Register now for this webcast co-presented by Microsoft and Dapasoft.
Dapasoft is a technology partner which specializes in Healthcare solutions. They will introduce Corolar, a new Healthcare solution based on Microsoft%u00ae BizTalk%u00ae Server, that helps simplify and accelerate HL7 Integration solutions.

Cheers and keep on BizTalking

Peter