290 likes | 417 Views
Introduction to Application Compatibility. Mark Aslett Microsoft. maslett@microsoft.com. Application Compatibility. Why do we need to consider Application Compatibility? . Windows 7 brings… Enhanced security Reliability improvements Some existing features updated
E N D
Introduction to Application Compatibility Mark Aslett Microsoft maslett@microsoft.com
Application Compatibility Why do we need to consider Application Compatibility? • Windows 7 brings… • Enhanced security • Reliability improvements • Some existing features updated • New features are introduced • But… • Some features removed • Tighter control over application execution
Session Objectives • Getting Started with Application Compatibility • Planning for Application Compatibility • Understand some the tools that are available • Introduction to Application Compatibility Toolkit tools
Where To Start? Don’t underestimate the work ahead… But it’s NOT an impossible challenge • Start with a Vision and Scope • Have a clear goals for the upgrade project • Define you application management strategy • Get support from your organization and find a project sponsor
Application Compatibility Project Plan Automated Analysis Assessment Initial Budget ACT Inventory Refine Budget Rationalize Refine Budget Start App Install Green? User Manual Test Runtime Manual Test Detailed Automated Analysis Install Manual Test Yes Yes App Run Green? No No Remediate Ready To Deploy Finish
Application Auditing Use your organizations tool of choice if you trust the data… or consider Microsoft ACT • Collect • Application Details • Division or organization • Role • Usage • But don’t try and collect every last piece of information
Analyze Audit Information Filter applications early and inexpensively Start Remove Duplicates Remove Multiple Versions Remove Hardware Apps Remove Obvious Noise Involve Business Owners Finish
Prioritize Applications Categorize Applications • Business Critical – Money is lost without these • Important – The business cannot run for long without them • Nice to have – Having them will keep people happy • Unimportant – Should they still be in the list? Use Categories to drive remediation behavior • Business Critical - Unbounded by time • Important – 16 hours? • Nice to have – 8 hours? • Unimportant – 0 hours!
Application Compatibility Tools Which one tool solves all your compatibility problems? MED-V Disable UAC App-V XP Mode ACT 5.6 VDI Remote Desktop Static Analysis Tools Shims
User Account Control Just causes a lot of prompts and should be turned off? • UAC is an aid to running all users as a Standard User • Helps compatibility issues with file and registry virtualization • Disabling UAC turns off Internet Explorer Protected Mode • Protected Mode causes IE to run in a restricted context • Low integrity level prevents malicious code making system changes
Application Virtualization Microsoft App-V • Does NOT isolate applications from the OS • Isolates applications from one another • Possible to shim sequenced applications • Other benefits • New licensing and application deployment options • Key part of a bigger virtualization vision
MED-V Microsoft Enterprise Desktop Virtualization • Machine virtualization solution • Application actually run on a Windows XP OS • User sees only the application window • Centrally managed • Part of the Microsoft Desktop Optimization Pack • Small businesses can use XP Mode • Compelling IE6 application compatibility story • Seamless redirection of the browser
Microsoft ACT 5.6 • Strengths of ACT 5.6 • Inventory tool • Application runtime analysis • Compatibility agent data is useful when used at the right time • Shim creation and management • Standard User Analyzer
ACT and the Project Plan Automated Analysis Assessment Initial Budget ACT Inventory Refine Budget Rationalize Refine Budget Start App Install Green? User Manual Test Runtime Manual Test Detailed Automated Analysis Install Manual Test Yes Yes App Run Green? No No Remediate Ready To Deploy Finish
Static Analysis • A number of tools available from partners • Run offline against applications so can test 1000’s of rules • Can run detailed analysis against application installation processes • Can be powerful tools in the hands of expert engineers • Not a replacement for skilled individuals • Can be used to provide an early assessmentof a large number of applications
Static Analysis and the Project Plan Automated Analysis Assessment Initial Budget ACT Inventory Refine Budget Rationalize Refine Budget Start App Install Green? User Manual Test Runtime Manual Test Detailed Automated Analysis Install Manual Test Yes Yes App Run Green? No No Remediate Ready To Deploy Finish
How Do I Fix My Apps? Does my application need to be supported? • Vendor update required • Run in MED-V • Access through Remote Desktop Services Fix it in house? • Redevelop the application • Add missing component to OS image • Correct hardcoded paths • Create and deploy custom Shim database
Remediation Strategy for Failed Apps No No Yes No Requires IE6 or XP In House App Start No Yes Yes Yes Yes App Support Needed Upgrade from vendor Deploy MED-V Run from remote desktop Re-develop App Is Required Offline Patch Available Create a Shim Deploy Application
Testing Compatibility Fixes What is Application Compatibility Testing? • An application that is compatible will meet the following criteria: • Has no bugs… • on the target platform… • that prevent the application being used for its business purpose What’s then end goal? or
Fixing Applications - Shims How Shims Work Windows Application Shimmed Function Import Function Export Function Shim DLL
When to Use Shims Great for the following bugs • Incorrect Windows version checks • Writing to HKCR at runtime • Unnecessary checks for “Is User an Admin?” • Writing to WRP-protected keys and files • Windows thinks the application is an installer • Some file/registry redirections
Demo Standard User Analyzer and Shims
Key Takeaways • Treat Application Compatibility as you would any other project • Communicate with the business and users • Plan, audit and rationalize early on • Use the right tools at the right time and don’t rely on a single tool • Stay focused on the end goal, don’t try and fix everything
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.