Looking for a solution to help my client to identify and solve the compatibility and interoperability issues for complex business applications. Most of them are not in MSI Format. Hence analysis of installtion medium provide unsufficient level of QA.
Have someone any idea / tip / solution ??
It’s really a very important aspect.
Before going into the discussion to compare the strengths and weakness of any tool, it’s important to have a bit understanding of the methods currently used for Software Quality Assurance. In Quality assurance context, two methods are widely used namely Static and Dynamic analysis. In Static Analysis one is going to analyze the MSI File. But as you have said, the most of the installation medium is not in MSI format. Then you need another method namely Dynamic Analysis. In this approach, the application or installation medium is installed on a test client to capture the Application Fingerprint.
We have published an article in German weekly magazine “Computerwoche”. This article throws a light on both approaches. You can check the English version of this article on the following URL:
http://www.qtestbase.com/en/download/resources/
Taking such consideration, we have developed a product QtestBASE. By using QtestBASE, you can ensure 100% QA for all kind of applications independent of their installation art (MSI, Non-MSI). It works for both.
You can test our free fingerprint service to check your application - it' easy and let you know how it works.
http://www.qtestbase.com/free-fingerprint/
If you require further information, please visit the website or let me know.
http://www.qtestbase.com
Abdus Salam
QtestBASE Product Manager
Hi Abdus Salam,
I have downloaded your tool QtestAGENT and uploaded the result file to your server. Now looking forward to your Fingerprint results.
One question I have to ask - how can one find the conflicts or application interoperability problems between applications?
Hello,
I work for a company called ChangeBASE and we have written a tool called AOK which does exactly what you're looking for. We are able to load ANY installation type into AOK to check for compatibility with all the current Microsoft operating systems, check for inter-package conflicts, and you can also check for compatibility with virtualisation technologies such as App-V. Where we find compatibility issues, we have automated fixing available in most cases. Finally we are able to convert your MSI packages in App-V format and Symantec SWV format with the click of a button.
It's a very powerful, mature tool which has been on the market for around four years. It's been used on hundreds of migrations, and hundreds of thousands of applications have been run through it, so we know it works!
You can find more information on www.changebase.com
Before going into the discussion to compare the strengths and weakness of any tool, it’s important to have a bit understanding of the methods currently used for Software Quality Assurance. In Quality assurance context, two methods are widely used namely Static and Dynamic analysis. In Static Analysis one is going to analyze the MSI File. App-DNA's Aptitude and ChangeBASE AOK work according to Static Analysis principle. It's not possible for such tools to identify exactly the effect and behaviour of custom actions and binary calls. Because these tool only analyse the MSI file and doesn't execute the Installation Medium. Furthermore these tools are limited to MSI File format. In case of Non-MSI file, they try to convert it into MSI but in most cases it a MSI file which is only extra cover or wrapper round the original Non-MSI Installer. Furthermore they do actually on Application compatibility against a specific platform, e.g. Win-7, App-V etc. But the Application Interoperability topic is not addressed in detail by such tools. To answer or overcome the shortcomings of Static Analysis ( Tools like Aptitude, AOK), you need another method namely Dynamic Analysis. In this approach, the application or installation medium is installed on a test client to capture the Application Fingerprint. Taking such consideration, we have developed a product QtestBASE. By using QtestBASE, you can ensure 100% QA for all kind of applications independent of their installation art (MSI, Non-MSI). It works for both.
Its done by creating a high definition Fingerprint of the Application.
You can see some sample reports on the following URL
http://www.qtestbase.com/en/features/compatibility-reporting/
Abdus - I have just seen your post and am very interested to find out in how your tool does dynamic analysis? I have had a look on your website and it suggests that your dynamic analysis involves launching the software once it's been installed, and monitoring any changes to the system. I must be missing something because this will provide a very limited amount of runtime information, as launching the software will use so few of the functions in the code. Please explain what other automated techniques you use to capture runtime data, as this single launch isn't going to provide much useful information.
What I'd like to know is how you tool can provide useful automated dynamic analysis of say 5000 applications, ensuring that the tool captures the bulk of the features used in the software. So for example on your web page you have an example report which shows that you have run dynamic analysis of Oracle Standard Edition 10g. Please can you explain how you are automatically able to do extensive runtime analysis of middleware such as this.
Hi davidrbonnie,
Interesting aspects - first to your first question - the dynamic analysis approach used by QtestBASE covers the installation/uninstallation, application first start-up, as well as runtime behavior of the application. So now to your point
davidrbonnie: ... dynamic analysis involves launching the software once it's been installed, and monitoring any changes to the system.
... dynamic analysis involves launching the software once it's been installed, and monitoring any changes to the system.
What you are mentioning is only one dimension, that QtestBASE covers - namely Analyzing the application during first start-up to watch, what this application is going to apply the changes on the system - it helps to diagnose the Group Policies, User access, etc issues.
Turning to your second point, yes it’s the power of QtestBASE to analyze and identify the issues for the complex commercially available runtimes as well as customer-defined runtime irrespective of the installation art and complexity level.
If you have further questions, please send me an email at a.salam@mentopolis.de
Hello Abdus,
It apeears that you have not understood my questions, so I'm going to try again in the hope that you will understand what information I'm looking for. I have numbered my questions for clarity:
1. You criticise AppDNA and Changebase's products because you claim they only do static analysis. You claim your product ensures 100% QA by doing dynamic analysis, as well as static analysis. This sounds good in theory, but I want to understand exactly what dynamic analysis you do, other than launching the product once. As I stated in my first post, launching the product once will not provide much data for analysis because so little of the code is utilised during first launch, so if your product genuinely does give 100% QA as you claim, then you need to explain this.
2. You have published some example reports on your website. One shows that you have tested Oracle Standard Edition 10g. Please can you explain how you are automatically able to do extensive runtime analysis of middleware such as this.
3. You say dynamic analysis (I quote) “helps to diagnose the Group Policies”. Now I am completely lost! What does group policy have to do with changes made when an app first runs? Please explain.
David
Hi David,
I am not criticizing or trying to show the shortcomings of one’s.
I am just trying to show both sides of the picture. Static and Dynamic Analysis are the two doctrine of the Computer Science. I can only recommend to my reader to consult the academic work from MIT and other prominent Universities. To read further please consult Glass Box Testing (Here one can easily understands, the focus resides on TEST not only just to analyze).
Now turning to the practical and commercial world - I have already in my earlier posts (please consult also http://www.appdeploy.com/messageboards/tm.asp?m=78883&mpage=1&key=𓑸 ) mentioned that physically testing the application is only a way to assure the 100% QA.
We have first analyzed the both approaches and then decided to develop a product which in approach fulfills the 100% QA demands. Regarding to your question, you are focusing only one handy feature of QtestBASE - namely application start-up. QtestBASE doesn’t limit itself to only this aspect. It goes beyond the limit by checking installation, uninstallation and behavior of the application on a certain workplace.
The difference in the point of view exists due to the different understanding of Quality Assurance. We are talking about the colorful QA spectrum based on different process to serve the reliable Workplaces.
Test of Group Policy, user rights, Patches, Hotfixes, Updates, Drivers, Login scripts etc. - that’s where other collapsed, QtestBASE shows its unique features and power. Yes, it’s only the Application Test which can provide you the guarantee.
If someone has another opinion, then please cover this (Black) hole caused by the static Analysis: (This is an abstract of the article that I have published in the German weekly Magazine. You may download the complete article as pdf in English language at the following URL: http://www.qtestbase.com/uploads/media/Software_Rollout_02.pdf)
“e.g. let’s look at a fortune 500 corporation planning to install a relatively small new application that automatically generates a mail-footer - usually a quite trivial case. But nobody considered that an ordering component used by the distribution divisions was also used by the mail system as a communication component. Fatal conflicts Even this new combination was analyzed prior installation, but it was unknown that the ordering component uses a certain Dynamic Link Library (DLL) of the MAPI Interface that was modified by the Mail Footer application. It had to happen what happened: The ordering component failed to function a week-long. In fact it was possible to calculate the financial damage, the image damage it caused wasn’t quantifiable.”
Hi Abdus,
Thanks for your response. I've read it twice and it hasn't answered any of the questions I asked. You are explaining things at a high level, and I'm really interested in a more low-level, technical discussion. Is there someone more from the technical side of your company who could answer the questions directly?
David.
Doesn’t take any offensive to your statement.
But as I multiple times mentioned it goes on Test. Please check the www.qtestbase.com. I think the other reader can follow my point of view.
I am open to questions and ready to present a Demo of the tool to anyone. Perhaps it’s better to have a hands-on experience with QtestBASE.
Hello - I wasn't meaning to offend, I'm just getting frustrated with the lack of information you are supplying.
You are right - The best thing for me to do is download your software and see how it works.
I have seen whitepaper and other material available on their website. According to my understanding, they first prepare the “Fingerprint” of each application through their QtestAGENT Module. This Fingerprint contains all the information during the installation and uninstallation process. All further analyses are based on this fundamental unit.
I think same is done in the case of runtime or middleware software. Same apply to the Oracle Installer that you are mentioning.
Abdus, am I right with my understanding?
Hi assa,
you are right.
We create the Fingerprint of each Testobject (it may be a physical package, virtual package, hotfix, patch, update, etc.) by using QtestAGENT. This page may provide you further information in this regard:
http://www.qtestbase.com/features/distributed-workflow/
This Fingerprint is then loaded in the central Database repository with the help of QtestSTUDIO. It is then analyzed with other already loaded applications/Fingerprints by using the power of QtestENGINE.
This makes it possible to identify the potential conflict in multiple dimensions i.e
This multidimensional analyze, give you the power to say 100% QA is possible and available.
Hi there,
Just came here by google search from another board where the same question from Femke_NL is discussed. That is why I am posting in here, too.
The company - I am belonging to - migrated lots of companies to windows 7 within the last month. Especially in the finance sector we have lot of customers.
So I think that I can add some value to this discussion.
First of all I have to say that both methods are useful, but within different scenarios.
For standard software (which is mainly distributed with .msi packages) it is enough to use the analytical approach.
If you are having a look at the business critical applications or very special ones (mostly self developed with wired installation routines) it is not save enough to use this analytical approach.
It is not possible to analyze binary code for example (which is often added to the above mentioned software)
The only solution is to test the entire software.
In the past we have carried out the tests with the application testers within the companies.
@Abdus: You are promising that your tool will reduce that effort to 0? Have I understood it right that you do not have to test any more?
That would change everything!
Thanks for your answer
Joe