Understanding the Application Compatibility in Your Environment
For customers on Windows XP, moving to Windows 7 will resemble the efforts required to move their applications to Windows Vista. For customers on Windows Vista moving to Windows 7, the effort required to test and validate applications will be substantially reduced compared to moving from Windows XP to Windows 7.
The figure below provides an overview of the application compatibility process.
Application compatibility can have a far-reaching impact on your organization, but that impact can be significantly reduced with proper planning of your application compatibility project. Your migration to Windows 7 is an excellent opportunity to carefully analyze your applications and understand their strategic importance in your environment.
For detailed information, see the Application Compatibility Cookbook.
Creating an Application Inventory
Gathering an application inventory is the first step in understanding the effect of application compatibility changes to your environment. Microsoft offers several tools to perform asset inventories including the Microsoft Assessment and Planning (MAP) Solution Accelerator and the Application Compatibility Toolkit (ACT). For larger enterprise environments, Microsoft includes asset inventory functionality in System Center Configuration Manager and in the Asset Inventory Service in the Microsoft Desktop Optimization Pack (MDOP).
ACT is Microsoft’s foremost application compatibility tool. It features a thorough application inventory feature as well as the ability to categorize applications.
Application Compatibility Toolkit
The Application Compatibility Toolkit (ACT) is the Microsoft tool suite to test and understand application compatibility in your application and it is available on the Microsoft Download Center. It enables software developers, independent software vendors (ISVs), and IT professionals who work in a corporate environment to determine whether their applications are compatible with a new version of the Windows operating system. ACT also enables such individuals to determine how an update to the new version will impact their applications.
You can use the ACT features to:
Verify an application's compatibility with a new version of the Windows operating system, including determining your risk assessment.
Become involved in the ACT Community, including sharing your application’s compatibility status with other ACT users.
Test your Web applications and Web sites for compatibility with new releases and security updates to the Internet Explorer Internet browser.
ACT includes many tools and technologies that can manage the compatibility project of an entire enterprise. We’ll look at the important tools to help you understand potential application compatibility issues in both your installers and in the applications themselves.
For more information about ACT 5.5, please refer to: Application Compatibility on the Microsoft Web site.
The MAP Solution Accelerator is best utilized to gather an initial inventory to make estimates about the immediate impact of a deployment of Windows 7 on application compatibility. For more information on MAP, please visit: Microsoft Assessment and Planning (MAP) Toolkit.
MDOP also includes the Asset Inventory Service. For more information about Asset Inventory Service, please refer to: Enterprise products: MDOP: Translating software inventory into business intelligence.
Analyze Your Application Inventory
For environments with thousands of managed applications, an application compatibility project is an excellent time to reduce the number of applications in the environment, thus saving the costs associated with application proliferation. One of the easiest ways to immediately reduce applications within an environment is to standardize the version of an application that is used across an organization. Many applications may be superseded by other applications that are newer and implement the same functionality; these applications can also be removed. Every time an application is removed, its corresponding licensing and support costs are eliminated.During your application compatibility project, application compatibility can be analyzed across your entire portfolio. ACT 5.5 can also be synchronized with a central compatibility database including vendor, logo, and community assessment. For smaller organizations with smaller application portfolios, the Windows Vista Compatibility Center can be used to search for compatibility information of individual applications. This data is linked with the synchronization data in ACT.
Testing and Remediating Application Compatibility Issues
Each application in your organization will likely require some effort to test the compatibility and, when necessary, to fix an application compatibility issue. The testing and remediation process is cyclical and an interaction between the teams testing and remediating application compatibility bugs is a must. There are many partners that offer organizations this service. Organizations without the technical knowledge to investigate application compatibility bugs should strongly consider utilizing one of these partner services.
Remediating Application Compatibility Issues
When investigating application compatibility for third-party applications, it is important to understand the vendor support policy for an application and to locate a compatible version of the application. This ensures the application will work as intended and that support for the application is available. For in-house developed applications, the best practice is to recode the application for native compatibility or in the cases where it exists, use the compatible version. Guidance for recoding applications can be found in the Application Compatibility Cookbook.
Understanding which technology to use when remediating an application is a significant challenge. Certain applications will require purchasing a new version whereas others will require using application shims. More recently, attention has been put on using virtualization technologies, including Windows XP Mode, Microsoft Enterprise Desktop Virtualization (MED-V), and Application Virtualization (App-V), to overcome application compatibility issues. The following graphic helps explain the processes and methods for mitigating application incompatibility within an enterprise.
Windows XP Mode is omitted from the graphic, as it is not recommended for managed enterprise environments; MED-V is the recommended desktop virtualization solution for managed environments. More information on both desktop virtualization solutions are found in subsequent sections of this document.
For more information about desktop virtualization technologies, please refer to the following Web site: Microsoft Virtualization.
Custom Compatibility Fixes for Applications
Compatibility fixing or shimming is particularly lengthy and complex, but it can be used to remediate most common types of incompatibilities, allowing applications to run natively on the newest version of Windows needing to recode the application or run a second virtual operating system. For more information about how this technology works and how you can apply it, please refer to the following TechNet landing page: Application Compatibility.
For more information about testing applications and authoring shims from the Microsoft expert in this technology, please refer to Chris Jackson’s MSDN blog.
Windows Virtual PC
A common way to mitigate application compatibility issues is to run incompatible legacy applications in a virtualized version of the previous operating system using Windows Virtual PC. The most recent version of Windows Virtual PC offers several new features to enhance this experience including:
Seamless applications: Launch applications installed on a virtual machine directly from the Windows 7 desktop, as if they were installed on the Windows 7 host.
Simplified user interface (UI): Enhanced UI that is easy to use and integrated with Windows 7 Explorer.
Integration features: Allows clipboard sharing, drive sharing, and printer redirection between Windows 7 and the virtual machine.
USB support: Users can access USB devices attached to the host, directly from virtual machines. These devices include printers, scanners, flash memory/memory sticks and external hard drives, digital cameras, and more.
For more information about Windows Virtual PC, please see the Windows XP Mode and Windows Virtual PC Web site.
Windows XP Mode for Windows 7
Available for the Professional, Enterprise, and Ultimate editions of Windows 7, Windows XP Mode includes a virtual machine image of Windows XP that offers a seamless application experience. Windows XP Mode allows you to install and run Windows XP applications directly from a Windows 7–based computer. It utilizes virtualization technology such as Windows Virtual PC to provide a virtual Windows XP environment in Windows 7.
Windows XP Mode provides a 32-bit Windows XP Professional Service Pack 3 (SP3) environment pre-loaded on a virtual hard disk. Client virtualization software, like Windows Virtual PC, is a prerequisite to using Windows XP Mode.
For more information about Windows XP Mode, please see Get started with Windows Virtual PC.
Microsoft Desktop Optimization Pack (MDOP): Virtualization Technologies
The Microsoft Desktop Optimization Pack (MDOP) for Software Assurance is a suite of six products sold as an add-on subscription license available to Software Assurance customers. Two of the six products in MDOP can be used as solutions mitigate application compatibility issues. Microsoft Enterprise Desktop Virtualization can be used to mitigate application-to-operating system incompatibilities and Application Virtualization can be used to mitigate application-to-application incompatibilities or conflicts.
Microsoft Enterprise Desktop Virtualization (MED-V)
Virtual PC as a stand-alone solution or in combination with Windows XP Mode is not recommended for use in an enterprise or managed computer environment. Microsoft Enterprise Desktop Virtualization (MED-V) enhances deployment and management of Microsoft Virtual PC images on a Windows desktop while providing a seamless user experience on a Virtual PC environment—independent of the local desktop configuration and operating system. Application-to-operating system compatibility issues are minimized, and operating system migrations are accelerated. MED-V makes delivery and reconstitution of corporate desktops easy, simplifying support tasks, business continuity, and incorporation of heterogeneous IT environments. With MED-V, enterprise IT staff can increase control over corporate portable computers while providing users the flexibility needed to maximize productivity. MED-V provides the administrative tools to provision within the virtual environment. There is precise control over how the two operating systems behave with one another, and you can even pre-define which websites or web-based line-of-business (LOB) applications need to be automatically invoked in the virtual machine’s web browser (Internet Explorer 6 by default). MED-V is also self adjusting as the Virtual PC memory allocation based on available RAM on host, so that the Virtual PC does not take significant resources from the user. Features like TrimTransfer update a master Virtual PC image, and MED-V will automatically distribute and apply the changes to all endpoints. Finally, MED-V will work on both Windows 7 and Windows Vista, and will not require processor-based virtualization support.
For more information about MED-V, please refer to the following white paper: Microsoft Enterprise Desktop Virtualization.
Application Virtualization (App-V)
App-V 4.5 helps with application-to-application compatibility issues or application conflicts. It can resolve issues such as enabling multiple versions of the same application to run simultaneously and enabling applications that are known to conflict with one another to run without conflict by isolating the application’s files and registry from the operating system and other applications. The benefits of using App-V in application compatibility scenarios include application isolation, reducing the amount of time associated with application compatibility testing as applications conflicts are eliminated, and eliminating any reboots by the user or computer to complete the application update. While this does not resolve application-to-operating system compatibility, it can help in those situations and provide deployment benefits and flexibility when migrating to a new operating system.
For more information about App-V 4.5, please refer to the TechNet Application Virtualization landing page: Microsoft Application Virtualization 4.5 Release to Manufacturing.