|Laura E. Hunter|
How will your organization's inventory of critical line-of-business applications function under Microsoft's radically new client operating system? How can you minimize the pain points from such a significant upgrade for the clients you support? What steps can you take to minimize the risks to your organization from Windows Vista upgrades gone awry?
The first process you need to perform before considering a Windows Vista rollout is a complete inventory of your existing application portfolio. That will be simpler for some organizations than others, depending on your current desktop and software management strategies.
If you already have an established means of deploying and maintaining desktop applications, now is the time to use whatever reporting mechanisms you have to create a list of supported applications to test. If, on the other hand, your current software management process is more ad hoc or unmanaged, all is still not lost. Consider using this initiative as an opportunity to deploy software metering or inventorying application, such as Microsoft's Systems Management Server or a third-party offering like Numara's Track-It!.
You can also investigate different open source projects available on SourceForge.net -- or even a hosted inventory service like the one slated to be released with the Microsoft Desktop Optimization Pack in late 2007. For a smaller organization that relies primarily on Microsoft-based software, you can also use the free Software Inventory Analyzer service available from the Microsoft Web site.
Once you have compiled an inventory of your applications, it's time to determine how well they will function under the new operating system. You may be surprised to learn that Microsoft has done a significant amount of the work for you by instituting the "Certified for Windows Vista" and "Works with Windows Vista" logo programs. These logo programs designate that a software vendor has already performed testing of its application within a Windows Vista environment. In the case of the "Certified for Windows Vista" logo program, this involves a rigorous battery of testing in the areas of reliability, security and ease of installation and removal under Windows Vista. The most current list of applications that have been certified for either of these programs can be found in Microsoft Knowledge Base article 933305.
If one or more of your applications is not listed under either logo program, it may mean that the application is still being tested. Or, if it is an older application, the vendor may not even be testing it for Windows Vista compatibility. If that's the case, you need to perform your own testing in a lab environment. To help you with this, Microsoft offers an Application Compatibility Toolkit as a free download from its Web site.
When budgeting for a test lab, the ideal scenario would be to create one with the representative hardware that is deployed within your organization. Some organizations maintain a "test model" of each desktop and laptop hardware configuration that they support. If you don't have the available budget or the physical room to support a fully developed hardware test lab, you can use virtualization technology to perform your application testing.
Several virtualization tools, such as Virtual PC, Virtual Server 2005 and VMware Server are now free downloads from their respective vendors, which makes it possible for even the smallest organization to perform some level of application compatibility testing. Testing on physical hardware is the ideal because it allows you to gain a 100% understanding of any intricacies of the hardware that's in use in your environment, but testing on a virtualized platform will get you most of the way there if a physical lab is not an option.
Virtualization technology can also provide a solution to the problem of the "indispensable legacy application" -- that is, an application that is many years old and out of date but your organization doesn't have the budget or the desire to replace it. If you support an application like this that cannot be configured to run under Windows Vista, you can use virtualization to deploy the application on a down-level operating system without affecting your overall strategy to migrate your desktops to Windows Vista.
In addition to making the decision about whether your existing applications will run under Windows Vista, you can use this inventory process to streamline your application inventory. Upon completion of your inventory, for example, you may find yourself asking whether you really need to be supporting four different flowchart applications and three different email-to-fax gateways.
Even in a highly controlled organization, software installations can expand organically, as more and more one-off installations are permitted to support the needs of a specific project or client. Over time, this can greatly increase your support costs -- even without bringing a Vista migration into question -- as each supported application creates a greater risk of compatibility issues and increases the overall demands on your support organization as a whole.
By developing a clearer picture of the software that is in use within your organization, you can make better strategic decisions about rolling out Windows Vista to your corporate desktops and reduce the impact that will have on both your clients and your support organization as a whole.
Laura E. Hunter (CISSP, MCSE: Security, MCDBA, Microsoft MVP) is an Active Directory architect for a major engineering and staffing firm where she provides Active Directory planning, implementation and troubleshooting services for business units and schools across enterprise networks. Hunter is a four-time recipient of the prestigious Microsoft Most Valuable Professional award in the area of Windows Server Networking. She is the author of Active Directory Field Guide (APress Publishing) as well as co-author of the Active Directory Cookbook, Second Edition (O'Reilly). You can contact her at firstname.lastname@example.org.