Virtualizing applications is simple, right? After all, Microsoft Office can be installed or packaged in a matter of minutes, so all apps must be this easy. And via a tool like Citrix App Orchestration, the application can be published, secured, and presented to users auto“magic”ally. Thus, application virtualization professionals must have easy jobs, right?
Reality dictates that the installation and packaging of applications are unexpected bottlenecks that delay full production of virtualization projects because they are just not as simple as clicking Next–>Next–>Next–>Finish. Although Microsoft Office is deployed within almost every environment, there are few applications that can be virtualized so quickly and easily.
Several years ago, the push was to virtualize all applications using Microsoft App-V. Some organizations attempted to do exactly that, but many of them changed their positioning because App-V isn’t the optimal universal decision for every organization, due to factors including technical complexity, system resource overhead, availability of skilled App-V specialists, and the like. Although tools such as AppDNA and Flexera AdminStudio can output App-V packages, there is a cost for each application/update, and testing must still be performed to ensure application functionality and integration. So, not a silver bullet.
Many large corporations, cloud service providers, and integrators contract or employ application specialists whose sole focus is installation, packaging, and integration. Consider, for example, a service provider that is converting a small business from applications installed on traditional workstations to a cloud environment. While many would assume that this conversion process is fully automated, many, many hours are necessary to address application installation, packaging, and integration. That conversion process is laden with a great deal of trial and error, which varies in accordance with the application set and the various applications’ idiosyncrasies due to their development. Older apps that have been appended year after year are more likely to have the archaic, hard-coded complexities that cause the most headaches.
It’s not uncommon for an application to require a number of tweaks to work correctly. Some examples:
- An IE-based app that requires x86-based IE, not x64.
- Adjusting permissions for a file, folder, or registry key, and sometimes even administrator rights.
- Publishing an application based on a batch file that provides additional commands, instead of the executable.
- Firewall modifications.
- Disabling antivirus scanning on a particular file or folder.
While some tools in the marketplace can assist with addressing the technical barriers to installing, packaging, and integrating applications, none are able to provide the silver bullet that flawlessly expedites this process every time. Tools such as Citrix AppDNA and Flexera AdminSuite should be considered because they do provide insight into application issues that must be overcome. However, while each flags areas that may be causing an issue and suggests potential remediation, the suggested remediation is not necessarily “the” answer. These tools also require the application to have an MSI installation file. If it does not, additional steps are required in order to get the application to a state in which it can be analyzed.
Admittedly, Microsoft Process Monitor is a common denominator that often yields the answers as to why an application will not install or function properly. For those who have used this tool, you know all too well that a short capture may yield 1,000,000 (yes, a million!) entries, and that filtering the data to find the exact issue is like looking for a needle in a haystack. Not impossible, but certainly not something that will be completed in the next 15 minutes.
Testing is a time-consuming portion of the application virtualization process. Application specialists typically do some basic testing, and end users are needed to test obscure aspects of applications. Users who are willing both to test and to provide detailed feedback are often in short supply. Unfortunately, there is no tool that can automate testing full application functionality.
Even if the current application set can be installed, packaged, and integrated into a virtualized environment, this process may go full circle again every time app vendors release a new version. While minor releases typically do not cause issues, major releases are more likely to induce headaches. As a result, the installation/packaging, tweaking, and testing process begins again.
Application specialists possess the patience and knowledge set for successfully installing, packaging, and integrating applications, and these professionals are typically in short supply. Finding a qualified employee or contractor to address application requirements can add to the delays associated with an application virtualization effort.
As such, the application integration portion of virtualization project plans often exceed the scheduled time and resources, and thus they typically represent a bottleneck in an overall implementation effort. The tools available in the marketplace, as well as the number of high-caliber application specialists, are limited. While many aspects of virtualization are moving toward self-service and auto“magic”capabilities, the core application piece still requires significant resources and effort because the advancement of application tools has not kept pace with most aspects of virtualization.