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

February 07, 2025

Are you using OpenTelemetry? Are you planning to use it? Click here to take the OpenTelemetry survey.

February 06, 2025

GitHub announced a wave of new features and enhancements to GitHub Copilot to streamline coding tasks based on an organization’s specific ways of working.

February 06, 2025

Mirantis launched k0rdent, an open-source Distributed Container Management Environment (DCME) that provides a single control point for cloud native applications – on-premises, on public clouds, at the edge – on any infrastructure, anywhere.

February 06, 2025

Hitachi Vantara announced a new co-engineered solution with Cisco designed for Red Hat OpenShift, a hybrid cloud application platform powered by Kubernetes.

February 06, 2025

Onapsis announced Onapsis Control Central for SAP application security testing and custom code security supporting RISE with SAP transformations.

February 05, 2025

Progress announced its recognition in the 2025 Gartner Magic Quadrant for Digital Experience Platforms.

February 05, 2025

Copado announced comprehensive DevOps support for Salesforce Data Cloud deployments, enabling organizations to streamline the development and deployment of Agentforce solutions.

February 05, 2025

Appfire announced its acquisition of Flow, an enterprise software product for Software Engineering Intelligence (SEI), from Pluralsight.

February 04, 2025

Check Point® Software Technologies Ltd. announced new Infinity Platform capabilities to accelerate zero trust, strengthen threat prevention, reduce complexity, and simplify security operations.

February 04, 2025

WaveMaker announced the release of WaveMaker AutoCode, an AI-powered plugin for the Figma universe that produces pixel-perfect front-end components with lightning fast accuracy.

February 04, 2025

DoiT announced the acquisition of PerfectScale, an automated Kubernetes (K8s) optimization and governance platform.

February 03, 2025

Linux Foundation Europe and OpenSSF announced a global joint-initiative to help prepare maintainers, manufacturers, and open source stewards for the implementation of the EU Cyber Resilience Act (CRA) and future cybersecurity legislation targeting jurisdictions around the world.

January 30, 2025

OutSystems announced the general availability (GA) of Mentor on OutSystems Developer Cloud (ODC).

January 30, 2025

Kurrent announced availability of public internet access on its managed service, Kurrent Cloud, streamlining the connectivity process and empowering developers with ease of use.