When it comes to automation, there is often a big gap between expectation and reality — often in the sense of "all or nothing". For example, doomsday scenarios have been painted and purport that automation is a direct replacement for human labor and will put hundreds of millions out of a job. In reality, only about 7.4% of jobs are actually at risk for being replaced through technology, algorithms, bots, or artificial intelligence.
This gross overestimation of potential (or threat level, depending on your point of view) comes from the misconception that automation is all-powerful. Plug in the bot, replace humans, done. As an IT automation solution provider, we sometimes have conversations with prospects who assume our technology is like a magic black box that eats all of your installed applications and spits out re-packaged, tested, and up-to-date apps. However, this is rather unusual.
Most IT professionals know that automation doesn't happen like that. But they still ask the very important question: How much of the application packaging and testing does your solution actually automate? Today, I want to walk you through the different automation tasks during this process (see below) to show how much and which to-dos can be automated, which can be accelerated through smart workflows, and which are better done manually.
1) Application Certification (90%)
To find out which applications require further packaging and testing when moving to a new environment, e.g., migrating from Windows 7 to Windows 10, we recommend running all of your apps through a quick certification process. While this isn't full-blown compatibility testing, it gets you a reliable result with significantly less investment, effort, and time.
Our customers are currently automating more than 90% of the certification process. As a result, they find on average that about 70% of their apps do not require any further remediation, while an additional 10% can be easily upgraded to a Windows 10 compatible version. The remaining 20% are usually internally developed applications that would get routed via workflow to be dealt with.
2) Analysis & Discovery (80%)
The next step is the analysis and discovery phase — usually a tedious, labor-intensive, and lengthy process involving different parties and lots of back-and-forth. As if that wasn't painful enough, the is made worse by the constant back and forth confirming and obtaining details via email and the inevitable loss in translation on telephone calls.
IT automation can significantly reduce the labor, pain, and stress of this phase. With Access Capture, our application packaging and testing solution, you can automate about 80% of the process by utilizing the automatic documentation and MSI creation from source.
For example, as the product owner runs through the initial discovery phase in the tool, Access Capture will document every step carefully in the background. While the documentation can be edited and amended later, it saves hours of copying and pasting. The remaining 20% are most often extremely large apps that have to be broken up into smaller chunks manually.
3) Application Packaging (65%)
Undoubtedly, the step of the actual packaging is the biggest chunk of work in this entire process, but the virtual creation of apps is governed by the technology. One example is AppV. It is impossible to automate certain apps in AppV from a technical perspective based on certain constraints put in place by Microsoft. These could be specific services and printer drivers or the app not having any shortcuts. These constraints can be easily and quickly identified using Access AppScan.
Based on this, only 65% of the process steps can be automated, but this doesn't mean that 35% of your application packaging remains manual. Accelerate the rest by routing them through Access Capture's smart workflows — significantly reducing the time and effort it takes to package your application estate. As a result, all of your packaged files are Microsoft- and VMWare-approved and therefore robust files, so you know you can trust the end product.
But even if the automation isn't as high as you might have expected, the benefits are enormous. By automatically gathering all the detail to be passed to a manual packaging team for remediation and extend of the time saved alone makes the investment worth it. In addition, once manually packaged, you can jump right back into an automated workflow and move things along much more rapidly than without automation.
4) Application Testing (100%)
After your apps are packaged, they will need to be tested. With Access Capture, you can automate all of your functional, non-functional, and performance testing as well as quality assurance. This doesn't mean all of your apps will pass the testing phase, but the process of testing can be entirely automated.
For example, one huge bottleneck that eats up a lot of time and resources to the create and break down the testing environment. Access Capture's workflow automatically creates a new virtual machine configured for the environment you are testing for, sends the login details to your tester, and rebuilds machines to a clean state after the test is completed so you won't constantly run out of machines.
5) User Acceptance Testing (100%)
While User Acceptance Testing (UAT) requires some user interaction as they need to pass or fail it, the provisioning of the infrastructure and the application object, as well as the capturing of the pass or fail is entirely automated. From a user's perspective, the actual workload is minimal. The application owner simply performs the functional steps to test that the application performs as expected.
Automating this step for all business applications is difficult unless the application menus and features never change. In our experience business applications change at a fast pace and it is far more efficient use of the testers time to test each release rather than amending an existing test script or creating a new one.
6) Release (100%)
Finally, the last two steps — releasing all deployment objects, files, and folders and enabling them for your users — can be fully automated as well. This includes user-to-group provisioning.
This means your IT staff doesn't have to walk the floors anymore, making sure favorites, etc. are installed correctly. Now, anytime a user relaunches his or her device after receiving an upgrade, he or she will automatically get prompts via a wizard that is loaded with preconfigured questions confirming the user’s personal configurations and settings. This also indirectly makes your users familiar with any new functionality, collects the most common issues (and resolves them quickly via Access Agent), as well as measures end user happiness with your project.
7) Enable (100%)
After your newly packaged or repackaged application is tested and released, you have to make it visible to authorized users in your corporate app store. To ensure the product is maintained and up-to-date, this may require an associated forward path for various platform types of specific products. In addition, you will have to put in place adequate security and licensing request workflows to enable access to the product.
As you can see above, most of the application packaging and testing process can be automated — in fact, 91 percent of it if you were to take the averages of all the steps.
While automation isn't some magical black box, it can significantly accelerate your entire process and make it more enjoyable and, therefore, more accurate as your app owners create actual documentations and your testers are more motivated to test under realistic circumstances rather than blindly confirming functionality to push the app through.
Another tangible value that comes with automation is that all the applications are centralized, the workflows are managed from that one central repository of all this data, and your app hygiene, compliance, and security improves. This, of course, has the added benefit of being "audit ready" at any point in time as all the details can be gathered from one centralized repository within seconds rather than weeks!