How to use Dynamic Suite Composition (DSC) in Microsoft Application Virtualization 4.5

Earlier than expected, Microsoft has introduced Dynamic Suiting (interaction between separate bubbles) in the public beta release of Application Virtualization version 4.5. 

It is fairly easy to allow two applications to interact with each other. The only thing you’ll need to do is to edit the OSD-file of the application that you want to allow to interact with another bubble. 

For example, you want to allow the application front-end to interact with middleware. Open the OSD-file of the Front-end application with a text-editor and add these lines:

The CODEBASE element can be copied from the middleware-OSD you want to use. All you need is the REF, GUID and SYSGUARDFILE from the middleware OSD and the additional MANDATORY=”TRUE” setting.  Note: don’t confuse the tag with the older tag. Now import the edited OSD in your VAS-server and refresh your 4.5-client (note: dynamic suiting will only work as of client version 4.5). When you launch the front-end application, the middleware bubble as defined in the OSD-file, will also be launched and interaction between the two will work like a charm. It is only possible to allow interaction between bubbles on one level. If you’d edit the OSD-file of a third application to allow access to the front-end bubble, this third application will not have access to the middleware bubble. It will be able to interact with the front-end bubble though. It is also possible to allow more than one application to interact with the same middleware bubble. This provides for several front-end applications to use the same middleware package. The Dynamic Suiting feature is great news for all of you that have been struggling with middleware. Softgrid retains its position ahead of all competitors in the market, being the only true virtualization solution that offers virtualization of services and interaction between separate virtual environments. 

As usual, there are some downsides as well. Administration of bubble interaction is most likely going to be your biggest nightmare. Nowhere, except in the OSD-files of application using middleware, you’ll be able to find which applications are allowed to interact with other applications. This isn’t a big problem if you have a limited number of applications, but you can imagine that it can cause severe headaches if you have several hundreds of applications, using all kinds of middleware. Microsoft has not planned for any administration tool to address this. 

Another possible problem is conflicts. The default behavior of interacting bubbles is that the launched front-end application precedes over the used middleware. If you have two versions of the same DLL, the version in the front-end application will ‘win’. This avoids technical conflicts, but it can introduce other issues if certain functionality needed in the (possibly newer) DLL in the middleware application is required. This scenario re-introduces regression testing, something we were happy to get rid of with Softgrid in the first place. 

The really good news is that you don’t need to re-sequence your existing applications: all you need to do is to edit the OSD-files to allow interaction. This of course saves you and your customers a lot of time!