A Look at AppTitude
Before starting I should make it clear that this is all my own opinion and not that of my employer. I won’t go into full detail on how to use the tool as I don’t want to step on any toes or take away from App-DNA themselves, you can find more detail on how to use the tool and any other questions you may have answered on their website https://www.app-dna.com/ . I am not writing this in a bid to sell the product as, believe me, I ain’t seeing a penny. The only images I’m using don’t give much away but are hopefully enough to illustrate some of the features I like about AppTitude. This blog has been posted based on version 5.
So firstly, as high level as I can, AppTitude is a tool developed by APP-DNA which allows you to analyse your applications and report on their compatibility against various target platforms. This includes: Will your application work on 64-bit? Will it work on Windows 7? Will it work virtualized with APP-V? AppTitude can report on many different platforms XenApp, Windows Server 2008, Windows Vista etc. App-DNA sell their product using modules, so different modules contain different platforms. There is also differing system requirements depending on the scale of your project e.g. if it’s a large project with many application you may need full SQL, more diskspace, processing power. For more on these check out APP-DNA’s website.
It does this by allowing you to import your applications into the tool, the tool then compares the contents of the application to it’s own unique algorithm. This algorithm is a defined set of rules for each platform. So for example if AppTitude identifies a driver in the imported application this will appear in your report with a valid suggestion on what to do if you want to virtualize the application, deploy on 64-bit etc.
The reports use a RAG system (Red Amber Green) With Red being stop this issue may have a major impact, Amber this issue may have an impact or has something which needs to be addressed, Green you should be good to go. The algorithm used by default in AppTitude appears to assume Microsoft Best Practices so for example there are rules relating to DEP (Data Execution Protocol), so if your application may not work with DEP enabled, this will be in your reports. The good thing also is that it’s flexible. I actually worked with a customer who had DEP disabled, so I went ahead and used AppTitude Custom RAG and changed the RAG Status to Green so it wouldn’t show up as threat for that project.
Here’s an example of one of the high level (Estate View) reports:
You can see this is an overall view of all applications imported into the database and their compatibility with APP-V. Standard being the summary against the standard default AppTitude rules, After Action is assuming you use the suggested AppTitude fixes, Customized Summary is against your project modified rules (Maybe you have UAC turned off and have switched the colour for that rule to Green so it doesn’t show up as Red or Amber)
Here’s an example of the top of a more detailed report
In this report we see due to the File Count and Registry Count, AppTitude has decided the application is not complex. And according to the standard rules this application will work virtualized on Windows 7 64-bit
I won’t show anymore than this as I don’t want to infringe on any copyright by showing the tools recommendations or anything like that. For a look at the reporting side more. Have a look at:
You can import MSI and SFT files directly. AppTitude can parse through the files and report against them relatively quickly. The tool also has the capacity to handle non-MSI or SFT applications. It can process these by leveraging a virtual machine to run a capture of the install, it will then put these into an MSI and import that MSI into the AppTitude Database to report against. This is all dependant on the licensing model you choose, I believe this is non-MSI/SFT solution requires a Production Manager License.
To put this into real world terms. I have worked on Migration projects in which the customer was well managed already and so had over 90% of their applications currently sequenced using an early version of APP-V or used non-virtual MSI packaged applications. Therefore in that scenario there should be no need for the install capture type solution. I actually chose (since there might only be 3 or 4 setup.exe’s to process a month) to do a setup capture of these myself and then directly import. The tool is as flexible as you make it.
One very nifty newer feature which I have not tried at any great length so far is the tools capability to sequence applications automatically by using Microsoft APP-V sequencer on the previously mentioned Virtual Machine and doing a sequence during the process. I’ve worked other projects which used legacy installers other than MSI which we handled using a feature of the Production Manager called an execution profile which is a file that allows you to dictate some automated steps you desire. So for example you may have a lot of Bat file installs or installs using ibf files or whatever, you could setup your virtual machine configured the way you want and setup your Execution Profile so it runs the Bat file or ibf installer and then complete the AppTitude reporting process.
There’s also an IE compatibility feature but I’m rambling a bit! I think I’ve covered enough about the import process for applications and what you can import and report against.
Why use it?
It saves you time and money!
I started working in application virtualization when it was a very new technology. It has become much more widespread now but even still information can be thin on the ground when you start hitting issues. Even worse, can be the difficulty in trying to manually troubleshoot issues, possibly spending hours or even days trying to find a fix, only to realize the application cannot be virtualized. Since I’ve started using AppTitude I have saved myself a lot of time and therefor a lot of money when trying to virtualize applications. The reports can pre-empt issues, tell me what I need to look out for and show due dilegence with e.g. environment variables, FTA’s etc. As well as tell me about possible reasons why the application cannot be virtualized at all e.g. COM+, Over 4GB in size.
Some cool features I like
As part of my work I’ve had to manage a Conflict Solver Database which can be a bit time consuming. Conflict Solver is a tool created by Flexera. What the project used it for mostly was reporting on high level view of all MSI applications being used in the project. What I used it for myself however was troubleshooting. If I had an application which was showing me an error due to being unable to find a file due to a missing pre-requisite or a dependency I could do an SQL query on the database and figure out which MSI contained the file. Now, to use this Conflict Solver, we’ve had to maintain a large Database, have a dedicated server etc. AppTitude has a Search and Browse feature which you can use to query against all the MSIs and SFTs imported. So it’s a database of all your applications with the added benefit of reporting if they will work on your new platform. Awesome!
Individual or Merged reports. By default after you import your application you can view the reports for that application to see well, does this work on Windows 7, what are the reported issues etc.? What merged reports allows you to do though, is if you are aiming to deliver APP-V packages on Windows 64-bit. You can have all of the potential issues for that application, be they 64-bit related or APP-V related on the one report.
Interoperability. If you so choose for each application which is imported and analysed, the tool can report whilst checking against all the current imported applications in your database for comparison. What’s cool about this is, if AppTitude for example has checked a .dll in your MSI and see’s that it has a dependency, it can check to see if the dependency can be met by another application already in your Database.
AppTitude is a flexible application migration and compatibility tool which keeps evolving. I would advise any company planning on migrating to a new system to consider using AppTitude to make the process less painful and less costly. With the constant adding of new features such as the automated APP-V sequence creation, IE compatibility reporting and constant performance improvements AppTitude is only getting better and better.