Improving the quality of your mobile apps with MobileFirst Quality Assurance

Once you’re done writing and publishing your app your job is not over. You tested extensively before launch (you did right?), but there are always situations and paths that you’d never imagine someone would perform until you release it into the wild. That’s where a service IBM’s MobileFirst Quality Assurance (MQA) comes along. MQA helps you capture, detect, and respond to user feedback and bug reports in a much more efficient fashion. MQA runs in the Bluemix cloud so there are no servers to deploy or software to install. You simply go to and add a MQA service (making sure its unbound to any app). Then you go into the MQA dashboard and add an entry for your mobile app (or for each of your mobile apps) specifying whether it is an iOS or Android app. Then click on the button to get the API key for that app. Save it in a text file, we will need it later.

Screen Shot 2016-04-11 at 1.42.08 PM

Now we have to configure our app to support MQA. There is very little code to add, most of the steps are configuration of your Xcode frameworks. I won’t go through it in details since it is detailed on this page.  The page is missing some critical information however, in particular 2 frameworks that you will need otherwise the project will not build. In the section labeled “Installing iOS libraries” you need to add the following frameworks:

  • AVFoundation.framework
  • MediaPlayer.framework

The documentation mentions “CorePlayer.framework” but this does not exist. You can safely ignore it. Now follow the rest of the instructions to add -ObjC to the linker flags and a bridging header file (this is required because the MQA libraries are in Objective-C and your project is in Swift). Once you’ve configured that 2 lines are code in your AppDelegate.swift file are all that is required to enable your app.

MQALogger.settings().mode = MQAMode.QA or MQAMode.Market (depending on if this is a test or release build)

MQALogger.startNewSessionWithApplicationKey("your-application_key") where application key is the long string you saved earlier

The first time you start your app you will get a tutorial on how to report bugs or provide feedback. Subsequently your users can simply shake the phone and they will see the following screen:

Screen Shot 2016-04-11 at 1.08.53 PM


They can choose to report a bug or provide feedback for future enhancement. Screenshots and even screen recordings can be provided to help them explain the bug.

Also if your app crashes unexpectedly, MQA will also record the occurrence in the reporting dashboard. As a product manager all you have to do is login to the MQA service in Bluemix and browse through the reports/statistics each day to see how your app is doing. You can even hook up MQA to monitor app store reviews so as to gauge customer sentiment.

With just 2 lines of code, MQA lets you add robust reporting, capture, and monitoring to your app, letting you deliver better quality code that delight your customers.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s