This week Microsoft posted a good article on application compatibility. Which is apparently is still a thing.
We have worked closely with Microsoft over the past 10 years on application compatibility. Starting with Chris Jackson’s awesome “Compatibility Cookbook” with its detailed recipes on how to identify and resolve application compatibility issues. Moving away from a consultancy-based model (lots of high dollar Microsoft consultants on -site at big corporations) Microsoft has employed three strategies to help large organizations manage their application migration risk:
- Inventory: Microsoft advocates using your existing inventory to manage your application risk. I am just not sure how this works. How does my inventory system know which platform I am going to migrate to? How does it know which dependencies will change? What does Microsoft Intune know about virtualization formats such as MSIX?
- Testing your critical apps using Microsoft Test Base 365. This is a great, free service that allows for the upload of a single application and testing against a baseline. For a single, critical application this pretty helpful. That said, most organizations will now have access to a test build on local VM (or Azure VM). I hate to say, but if you are in a large organization and you have a super important application to test out – having to use to a test VM offered on the web should be the last of your worries.
- Deployment and Monitoring. Rolling out sample packages to selected users is generally a pretty good way to see if there is going to be an issue. That said, this approach does not work for core or critical business applications or critical business functions.
All of these three approached advocated by Microsoft work for minor, incremental changes to an existing in place system. You can read more about the thinking behind Microsoft application ecosystem here.
However, if you are planning a change to a:
- update operating system
- new virtualization technology (Microsoft MSIX)
- new deployment infrastructure (moving to Intune will require an assessment of your key dependencies)
For example, if your organization is considering a move to the Microsoft MSIX format, you will have to ensure that all of your application portfolio supports the following MSIX compatibility requirements (
- .RELS File Extensions
- Active Setup Detection
- Advertised Features
- Click Once Applications
- COM+ Analysis
- DCOM Analysis
- Inaccessible Control Panel Detection
- Microsoft Office Add-In Detection
- Microsoft Office Add-In Extensibility Detection
- MSIX Entrypoint Analysis
- Non Supported Drivers – Generic Printer
- Non Supported Drivers – Kernel Mode Drivers
- Non Supported Drivers – Printer
- Run And RunOnce Detection
- Shortcuts on the desktop
- Unsupported Applications Registry Data
- Unsupported File Associations
- Unsupported Fonts Detection
- Unsupported Predefined Shell Object Associations
- Unsupported Shortcut WkDir
- Web Browser Addin Detection – Internet Explorer
Then change at scale will require both an automated assessment and application testing at scale. Algorithmic testing is a useful planning exercise, but before deployment – you had better fully test your applications on the new platform. And, have the documented testing results to prove it.
There is still a lot of work to do to ensure that your applications are compatible, suitable, and above secure and well documented.