Brian Madden Logo
Your independent source for application and desktop virtualization.
advertisement

Application Compatibility and Interoperability, in the Application Installation & Compatibility forum on BrianMadden.com

rated by 0 users
This post has 20 Replies | 5 Followers

Not Ranked
Points 141
Femke_NL Posted: Wed, Jul 6 2011 5:38 AM

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 ??

 

  • | Post Points: 35
Not Ranked
Points 305
Abdus Salam replied on Wed, Jul 6 2011 5:54 AM

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

 

 

  • | Post Points: 59
Not Ranked
Points 141

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?

 

 

  • | Post Points: 5
Not Ranked
Points 50
Ben Cook replied on Fri, Jul 8 2011 5:52 AM

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

 

  • | Post Points: 50
Not Ranked
Points 305
Abdus Salam replied on Fri, Jul 8 2011 7:03 AM

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/

  • | Post Points: 56
Not Ranked
Points 149
davidrbonnie replied on Fri, Jul 8 2011 10:21 AM

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.

  • | Post Points: 20
Not Ranked
Points 305
Abdus Salam replied on Sat, Jul 9 2011 10:35 AM

 

 

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.

 

 

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

 

  • | Post Points: 26
Not Ranked
Points 149
davidrbonnie replied on Mon, Jul 11 2011 5:24 AM

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

 

  • | Post Points: 20
Not Ranked
Points 305
Abdus Salam replied on Mon, Jul 11 2011 10:18 AM

Hi David,

I am not criticizing or trying to show the shortcomings of one’s. Big Smile

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=&#78968 ) 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.”

  • | Post Points: 56
Not Ranked
Points 149
davidrbonnie replied on Mon, Jul 11 2011 10:32 AM

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.

  • | Post Points: 20
Not Ranked
Points 305
Abdus Salam replied on Mon, Jul 11 2011 10:47 AM

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.

  • | Post Points: 26
Not Ranked
Points 149
davidrbonnie replied on Mon, Jul 11 2011 10:53 AM

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.

  • | Post Points: 20
Not Ranked
Points 141
Femke_NL replied on Mon, Jul 11 2011 11:11 AM

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?

  • | Post Points: 56
Not Ranked
Points 305
Abdus Salam replied on Mon, Jul 11 2011 2:04 PM

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

  • App2App (Conflict between two Applications)
  • App2All (Conflict Analysis between one given application and all other applications - This is important to check what happend when a new application is going to be deployed on the client target machine which already has a set of working applications)
  • App2OS(Conflict between Application and OS)
  • App2AppGroup(Conflict between application and an application group  (a group may be a set of middleware or runtime applications)
  • AppGroup2OS(Checking Runtime applications against OS)
  • Patch2App
  • Pacth2AppGroup
  • Pacth2OS

This multidimensional analyze, give you the power to say 100% QA is possible and available.

 

  • | Post Points: 41
Not Ranked
Points 50
Joe Spencer replied on Wed, Jul 13 2011 10:05 AM

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

  • | Post Points: 50
Page 1 of 2 (21 items) 1 2 Next > | RSS