The ‘desktop’ is changing. The desktop is becoming a portal for users to access services they choose to complete their tasks, rather than providing a way to be given a fixed range of pre-determined applications. This portal is no-longer accessed from the top of a desk. The re-branded presence of externally hosted services as “cloud computing”, is and will have an impact on how organisations access and use software.
But “Cloud Computing” is more likely on the ‘To-Do-List of Future-Me’, rather than your to-do list today. Today, you’re likely wondering “how can I move forward with a desktop upgrade beyond Windows XP?”. Hosting desktops in “The Cloud” is all very well: you’ve got users who need off-line access; you’ve got application upgrades to contend with now; old applications to keep running while new services are tested. You need to deploy applications. “To-Do-List-Today-Me” is likely very busy.
You likely have an Application Deployment strategy: automated or scripted deployment perhaps, or you integrate your applications as part of deployed images. This works. If you’ve got all of this working “stuff” in place, why change? Application Virtualization uses different technologies from Application Delivery and is likely new to your organisation.
Application Virtualization is a technology mentioned as part of a hosted desktop service. Why undergo a virtualization when Application Delivery (AppD) has been working? Why not just use AppD for your hosted desktops? Is there a point to Application Virtualization in a non-virtualized environment? Is Application Virtualization something else to put on the to-do list for “future me”. If not, what solutions are available now? If it is so absolutely fabulous, what could possibly go wrong?
In this two-part trilogy, we’ll discuss which technology – Application Virtualization or Application Deployment – is best for you to deploy to give your users access to their applications and data.
In this episode, we’ll offer you a new hope that while Application Delivery is useful solution – Application Virtualisation can Make It Better and offer
Having an application workspace is pretty useless without having any applications installed in it. On reflection, there is little use you can make out of having a calculator, a notepad and the ability to sweep for mines. Granted, access to a browser can in turn deliver access to a wide range of applications: but remember that browser too is an application.
Application Delivery is focused on configuring an application to be distributed to end-devices. This process can encompass ‘taking the installation media from the box and manually configuring it on each and every device’ through to creating an automated installation program and using a distribution framework to launch that installation on devices across your network.
Tools for such application delivery include Microsoft’s System & Configuration Management Centre (SCCM), Symantec’s Altiris, Quest’s MSI Studio. These tools allow two core functions to help you manage user application access:
1. To deploy applications user’s requested applications to their workspace
2. To manage those application instances once they are installed on the end-devices.
However, with such tools the application is installed locally, it is integrated into the local environment. Deployment may be automated, it is not without issues:
- Applications need to be regression tested to ensure that they don’t impact on other applications.
- For large applications, the installation process can impact on user’s productivity as it can take a long time.
- The existence of an existing application can prevent or impact on the installation of a new application.
- Roll-back of installations and updates is not always straightforward.
Take the need to deliver an application upgrade: say from Microsoft Office 2003 to Office 2010. With application delivery you will have to deploy the version of Office to each device. You can’t have two versions of Office together on the same device: it is not going to work.
What Can Application Virtualization do for you?
Portability, manageability and compatibility of applications. How? Using two components:
1. Application Streaming: which delivers the application code to the user as quickly as possible. Rather than copy the entire application code base to the end device..then start (which may take a long time, and require a good deal of bandwidth) – deliver the core components so that the application and its main functions can start – and send the remaining information as needed.
2. Application Isolation: allows you to execute the application on the local device, but encapsulate the application code and settings in a separate environment from the underlying operation system: operate in a sandbox, if you will. That environment may offer the option to allow you to play nicely outside of the sandbox with other applications as long as you promise not to make a mess: or not and each application runs independently.
These two components combine to provide a number of benefits:
- Applications can be delivered to users and launched with a greater confidence that they will not impact other applications.
- .. and in turn, that existing applications in the workspace will not impact on them.
- Application delivery time is reduced (as less time needed for regression testing, the process of sending the virtualized application often reduces the application size).
- Easier roll-back and forward for applications.
Early application virtualization solutions were designed to serve applications (games if I remember correctly) to consumers. While that doesn’t sound very “business focused”, the delivery concept is relevant. IT is increasingly finding that the Business demand for application access is not in step with a long delivery cycle. The business needs solutions for delivering access to applications beyond the desktop PC to partner, contractor and home devices. In addition, Business & IT are realising that changing the payment model of applications can reduce costs: instead of expecting money to paid up-front for an installed ‘thing’ there is a benefit in being in a position to access (and pay for) applications as used. If you only ever use an application twice a year – why pay for 50 licenses? Why do you 1000 copies of that editing tool, when only 20 people use it?
Is Application Virtualization Better?
Application Deployment solutions reduce the cost of delivering applications and help you manage license use – isn’t that enough? With the end-of-support for Windows XP in 2014, many businesses are moving towards Windows 7 now. Ideally, this inevitable cost is kept low. You may have discounted moving towards some form of virtualised desktop for this as being too costly, too complex, too time-consuming or just to darn different. Hosted desktops may not be the solution you are looking for.
Application Virtualization can be used on ‘traditional’ desktops and laptops. Application Virtualization can be used in client side-hypervisors. Application Virtualization extends and increases the efficiencies of desktop virtualization as well as enabling portability and improving compatibility of applications. Application Virtualization can free you, not only from the limitation of having to “install within each device”, but lead the way in offering an alternative to “install on only corporate devices”. Application Virtualization can be a tool to reduce the complexity and time needed to move from Windows XP to Windows 7, and from future application updates. Indeed, for many companies, Application Virutalization is an option that can be used now by utilising existing license agreements, or for less cost than converting the application to run as a web-based service.
Do We All Get Medals Now?
If you are sure you didn’t nod off – sure. Remember, we’ve struck only struck the first salvo. We understand the nature of the difference between Application Virtualization and Application Delivery, but what next? There are a number of vendors offering application virtualization solutions: Citrix, Endeavours, InstallFree, Novell, Microsoft, Spoon, Symantec and VMWare: how do these differ?
In the next episode of this gripping saga, we’ll take a look at what these vendors offer, what options their solutions give you, and consider – Application Virtualization vs Delivery – is it a choice? Not quite “your father could well be a 6’2″ asthmatic magic cyborg” although it’ll be far far away from being a boring conversation anyway.