Building Mobile Apps That Don't Fail
August 12, 2014

Eran Kinsbruner
Perfecto by Perforce

There are many components that need to be considered prior to launching an app to ensure a successful user experience. A Dev/Test team's worst nightmare is to launch an app they spent hours, days, weeks, and months to build, only to receive reports of bugs that ruin the user's experience. The mobile app market is extremely competitive, with Gartner citing the number of app downloads reaching nearly 269 billion by 2017. With so many options, only apps that work will survive. If an app fails to meet the user's expectations due to poor functionality, availability or reliability, abandonment will most likely occur. So, how does a mobile Dev/Test team prevent app failure from the beginning?

With company-wide efforts and resources allotted to building an effective mobile strategy, including launches of new apps and updates to existing ones, it is critical the same high-quality experience spans across all mobile platforms. To avoid user frustration, poor reviews, or worse, abandonment, mobile apps need to perform well across a broad range of mobile devices, operating systems and networks. Pre-production testing is necessary to avoid common pit falls, including UI glitches, cross-platform inconsistencies, poor performance and excessive resource consumption. A positive end-user experience is only possible when testing strategies can effectively navigate these common pit falls.

Perfecto Mobile recently fielded a survey to determine the top challenges faced by testers and end users, and how issues can be effectively addressed to minimize defects in mobile apps before they are launched. The results highlighted in Why Mobile Apps Fail are based on insights from nearly 900 respondents from DevOps, quality assurance teams and the developer community, in a variety of industries including high tech, financial services and telecommunications. The results convey what really causes users to see those errors, and the challenges faced by mobile developers.

Stop Making Your Users Part of Your QA Team

One of the most alarming stats from the survey conveyed how users have become part of the testing team – and that's not good! According to the data, nearly half of all bugs (44 percent) are uncovered by users. All the work to strategize, build and deploy an app is quickly diminished when a user is the one who finds and communicates the problem.

The types of errors that were most frequently reported included:

■ User interface issues (58 percent)

■ Performance (52 percent)

■ Functionality (50 percent)

■ Device compatibility (45 percent)

Dev/Test teams need to focus on a strategy to improve mobile app quality. Using end users as testers cannot be part of the solution.

Developers Face Challenges Too

These errors are telling of what mobile testing challenges Dev/Test teams are facing. The survey identified the top three challenges that these teams face as:

■ Insufficient device coverage (63 percent)

■ Lack of reliable automation (48 percent)

■ Needing more coverage to execute test scenarios than time permits (47 percent)

Overcoming Testing Challenges

To ensure that mobile apps launch successfully, it is clear that more testing is needed. Survey respondents believe that the most critical measures to reduce mobile app defects are more functional testing, more device/OS coverage and more performance testing.

The user experience is different in almost every scenario, each one contributing to an endless possibility of use-case issues. A test plan needs to consider a variety of test scenarios, such as how the app will perform on different operating systems (Android, iOS, etc.), OS versions (Jellybean, KitKat, iOS7, etc.), carrier networks (Verizon, AT&T, Sprint, etc.) and devices (Samsung Galaxy S4, S4, S5 iPhone 5, 5C, 5S), as well as during "interruptions" like receiving a phone call or text message.

Broad market stats about mobile adoption are important to consider when formulating a device coverage strategy, but paying attention to market trends is not enough. The most important question to answer in order to ensure sufficient coverage is "What devices are my target users using?" Analyzing user traffic should help formulate a real-device strategy and give the most comprehensive coverage.

Improving Overall App Quality

The following is a three-phased approach to truly improve overall app quality:

1. Use a cloud-based Device-as-a-Service platform. This will help to assure sufficient device and OS coverage.

2. Implement a tool that supports continuous, unattended testing.

3. Embrace automation to improve efficiency. Automating device testing enables Dev/Test teams to test more with fewer resources and greater consistency. It's also important to select an automation tool that can do the following: develop cross-device, keyword-based automation scripts and run them across real devices in parallel, while connected to live networks; create a scalable and dynamic solution, where one script is execute across multiple platforms and devices; and integrate with the existing tools.

So, why do apps fail? The same reason most projects fail – lack of planning and strategy. Once the mobile strategy is set and the app is being developed, the key is to ensure its ability to perform and meet user expectations. Not accounting for the rapid changes in this tremendously fast-paced, fragmented market or failing to implement the proper automation tools that will ensure quality applications will guarantee user abandonment and app failure.

Eran Kinsbruner is Chief Evangelist of Test Automation at Perfecto by Perforce
Share this

Industry News

June 08, 2023

Sauce Labs and TestRail announced an integration to enable engineering and product teams to accelerate digital innovation without prohibitively increasing risk.

June 08, 2023

Applause announced expanded capabilities in assisting clients with the training, testing and validation of high-quality generative AI models.

June 08, 2023

Deepwatch announced a global strategic partnership with Lacework to offer security solutions.

June 07, 2023

Checkmarx announced Fusion 2.0, with a new Application Risk Management module.

June 07, 2023

Snyk has agreed to acquire Enso Security, provider of Application Security Posture Management (ASPM).

June 07, 2023

CAST announced the availability of CAST Highlight on the Azure Marketplace, the cloud computing platform's online store offering a wide range of directly deployable cloud-based applications and services.

June 06, 2023

Appdome has integrated its platform with GitHub to build, scale, and deliver software.

June 06, 2023

DigiCert, announced a partnership with ReversingLabs to enhance software security by combining advanced binary analysis and threat detection from ReversingLabs with DigiCert's enterprise-grade secure code signing solution.

June 06, 2023

Semgrep announced that Semgrep Supply Chain is now free for all to use, up to a 10-contributor limit.

June 05, 2023

Checkmarx announced its new AI Query Builders and AI Guided Remediation to help development and AppSec teams more accurately discover and remediate application vulnerabilities.

June 05, 2023

Copado announced a technology partnership with nCino to provide financial institutions with proven tools for continuous integration, continuous delivery and automated testing of nCino features and functionality of the nCino cloud banking platform.

June 05, 2023

OpsMx announced extensions to OpsMx Intelligent Software Delivery (ISD) that make it a CI/CD solution designed for secure software delivery and deployment.

June 01, 2023

Couchbase announced a broad range of enhancements to its Database-as-a-Service Couchbase Capella™.

June 01, 2023

Remote.It release of Docker Network Jumpbox to enable zero trust container access for Remote.It users.

June 01, 2023

Platformatic launched a suite of new enterprise-grade products that can be self-hosted on-prem, in a private cloud, or on Platformatic’s managed cloud service: