In some cases, Windows itself changed significantly – both visually and functionally – and then there’s the issue of existing application compatibility. Migrating applications - especially a combination of ISV-sourced and in-house developed – between different Windows platforms, or indeed different browsers/versions, has never been anything but a challenge, and that’s an understatement of sizeable proportions...
This, obviously, is not a situation exclusive to Windows users; over the decades it has been ITs worst nightmare. However, in the current working environment, Windows largely rules ok in the enterprise and beyond, so it is the key migration scenario today. What is different in this instance is that Windows 10 is it – the last numbered version of Windows, so there is no option but to migrate to it. There is no planned Windows “11”, just a continuous rollout of version “10” by any other name. The Windows 10 era has seen a change of policy from Microsoft, with the OS now provided as Windows as a Service (WaaS). This has several significant impacts upon ongoing ownership of an estate of Windows-based endpoints. As part of this process, Microsoft will now release two features updates a year, though a recent Microsoft missive advises that these updates might be subject to delay, causing even more potential complications. It means, every time there’s an update, there are potential application compatibility and compliance issues and this is ongoing. For existing Windows-based enterprises, there is no “sit back and wait” option as, by January 2020, Windows 7 will no longer be supported, other than by purchasing extended support at expected prohibitive costs and with no indefinite support guarantees. So, realistically Windows 10/WaaS has to be adopted if a company is to remain with Microsoft.
The manual approach to application compatibility/compliance testing is extremely laborious and very expensive, in terms of both manpower and time, something that has been proven in previous Windows eras. Given that this is not a one-off project, but an ongoing requirement now, realistically there has to be a cost-effective, timely alternative to the manual option. I’ve recently been testing one such option, from a UK ISV called Rimo3 and a product called ACTIV. The ACTIV technology connects to a company’s Microsoft SCCM (System Center Configuration Manager) servers or any application distribution point and automatically finds and identifies all packages in use within the company. This should result in a realistic maximum discovery hit rate in an SCCM-based environment. It then carries out a complete install, launch and test of each application to check for compliance and compatibility in a virtual, secure environment. Thereafter it monitors the distribution servers to highlight any package updates and potential retesting requirements. It also automatically differentiates between different versions of the same application, so is always aware of which version is in use.
ACTIV claims to also identify 99% of all compatibility issues before deployment or migration of a new release within a WaaS environment. The product is language and geo-site independent, so can be used to manage installations globally. In our hands-on assessment we saw examples of applications being successfully passed and also flagged up as having compatibility problems, so remunerative actions could be applied. Overall, Rimo3 suggests that ACTIV reduces manual testing costs by over 50% and manual testing effort by 90%; conservative estimates by historical standards.
Moreover, in many cases the question is - can a company realistically manage its product portfolio without the kind of assistance something like ACTIV provides, whether it is a large-scale enterprise, or any form of service provider and all stops in between. Putting together a team to carry out manual application compatibility testing, then maintaining and managing that team in itself is anything but trivial, regardless of the associated costs.
So how does ACTIV work? It combines automation and RPA (Robotic Process Automation) technology, starting by automatically identifying, discovering, installing and testing all applications in the estate, with no requirement for user intervention. The aim is to allow IT to focus on the remediation of applications that are proven by ACTIV to be incompatible. In this way it can also be seen as an enabler for moving the application estate to Windows 10/WaaS, as it avoids the “suck it and see” approach. It is aimed at resolving large scale application migrations, effectively managing the project workflows, end to end, even including an uninstall. The process can be monitored and managed from start to completion, meaning that applications can be prioritised or de-prioritised during these workflows, based on the results being generated. In this way it enables a migration to be completely flexible and pro-active. Importantly, everything can be viewed from a single interface, so any information feed such as accessing application records, tracking upgrade projects or viewing version numbers on an estate-wide basis, is available from a single console. ACTIV is SaaS-based, so can be driven from anywhere, via a real-time dashboard (using that single pane of glass view with real-time project updates and role-based views, including secure API access to 3rd party integration).
Walking through the basic ACTIV process, here are the key elements:
·Acquisition: ACTIV acquires applications from any source/SCCM for auto-acquisition and discovers all application inter-dependencies.
·Auto smoke test: this is a 1-click, fully automated procedure, consisting of an application launch and load. Importantly, the smoke testing also tests an uninstall, often an application failure point.
·User Acceptance Testing: This is a fully automated execution of a test case, based on defined UAT scripts.
·Business Process Testing (BPT): This is based around a bespoke test case creation and automated execution that mimics a customer business process. The key element here is in maximising reliability by ensuring multiple applications do not interact negatively with each other.
·Instant visual diagnosis: here we have complete visibility at an application’s point of failure, with real time logs and snapshot screenshots.
Initial setup typically takes less than a day. ACTIV will test any or all applications within an application estate, or a specific sub-group (such as a business unit, a department, or all applications used by a specific user group) - by installing and launching the application, to provide a quick and effective indication. Such tests are carried out on any version or configuration of Windows you choose - and can be a virtual device, or a physical device, allowing you to verify compatibility not only with the OS version, but your private builds, devices and device drivers. ACTIV will also check that the uninstall action of each package is working properly. It also allows you to create unique automation scripts that will mimic the way users interact with groups of applications: For instance, an HR department may use an HR management system but also financial accounting software to deal with issues such as payroll. An automation can install all the necessary applications on the same device (again, virtual or physical) and carry out actions that are typical of what HR employees will do every day. ACTIV can also load macro files and connect to 3rd party systems such as SharePoint and independent databases to manage interaction between two or more applications.
As part of the real-time monitoring process, simply by clicking a “video” button, a user can observe the test desktop in real-time. Whenever a failure is encountered, detail insights are provided, including detailed logs, screen captures at the point of failure, live or recorded video of the desktop activity, or a PDF of all events that have taken place in this test. Note, progress monitoring is completely customisable, and includes breakdowns by criticality, department, business units, location, and progress. As well as indicating success/failure and reasons for failure, ACTIV will be able to provide a compliance analysis of the application estate, including how many users the application has, and how many applications are running on machines that are over two versions previous, and therefore out of service. This combination of real-time, historic and future-proofing information delivery is potentially of real value beyond purely being an application compliance tool, even though that latter function alone could avoid catastrophic upgrade program failures. And, to reiterate, as this is an ongoing “changing the goalposts” situation, it is not a one-off requirement scenario, but very much a 24x7 monitoring requirement. A dog might be rightly for life, not just Christmas, and so, it seems, is Windows 10!