Great Mobile Moments Depend on Back-End and Front-End Testing
July 11, 2016

Eran Kinsbruner
Perfecto

Will your mobile app work in your customer's moment of need in an instant?

Mobile users only have one or two seconds of patience for an app to display the requested information before leaving the app. This means the complex trip – from app tap, to call to the back-end service, to call to the database and then back to the app – must happen in a moment. As a result, it's imperative that developers ensure that users experience a seamless "mobile moment."

For example last month I missed game 7 of the NBA semi-finals between the Golden State Warriors and the Oklahoma City Thunder. The next day, I wanted to see the game highlights, so I opened up my mobile browser to ESPN.com. It was apparent that I wasn't the only one doing this, as the video replay took longer to load than usual.

So, what happens in that mobile moment? Many communication roundtrips between my smartphone and the ESPN servers just to get me to the ESPN.com homepage. When you consider the latency overhead of a single HTTP request, on 3G it could take up to 3.6 seconds just to start a homepage. On LTE, it takes one second.

Things also get worse when mobile traffic spikes and the back-end is loaded. Golden State's game 7 win was epic, but if you tried to watch the replay in near real-time, ESPN.com was slow because their servers had high user load at that time.

Sluggish service response can increase user abandonment, because mobile users have become accustomed to speed. To stay ahead of these users, DevTest teams must put themselves in the users' shoes while testing mobile apps and websites.

Mobile Testing: Front and Back

Testing for the real user experience needs to include mobile app and back-end services being tested together against real world conditions, such as high user load and network condition changes. The ESPN scenario mentioned above was not a single point of failure; it was a combination of application, network and busy servers.

To truly validate the user experience, organizations need to ensure their apps work well when the audience needs it, even in the busiest of mobile moments. For example, the WatchESPN app outage during the 2014 World Cup is another example of back-end services falling short at a crucial mobile moment. The app crashed for US users during the beginning of the US and Germany match, due to unprecedented traffic related to a perfect storm of two soccer games and live Wimbledon coverage. The server coverage in the US was not prepared to handle abnormally high traffic for a soccer game.

As a result, companies need to test for these "perfect storm" scenarios and have a plan in place for when servers reach capacity. Proper back-end testing will benefit teams in two key ways:

■ Knowing the point when the back-end services become sluggish allows teams to have more servers (or virtual servers) on standby. In addition, plan to re-route network traffic through servers in another country where there is more bandwidth. Either way, it's imperative that a contingency plan is set in place.

■ Being aware of bandwidth limits and utilizing that data to update users with alerts, such as "Due to high demand, our service is down. Try back in 10 minutes." or "Your Wi-Fi network may not have adequate bandwidth for our service. Try switching to an LTE network." While circumstances may cause frustration, it's important to engage with users and provide information updates.

It's just as critical to test the back-end services of an app as the front-end. There are many products on the market that simulate user load on back-end services, while simultaneously seeing how the app performs under real world load conditions. In addition, developers should also run user condition tests (switching network conditions, background apps) on the front-end while using service virtualization tools, to ensure back-end services are just as busy.

As mobile users consume more multimedia and IoT services, testing back-end services for user load spikes will be key for delivering the best mobile moments.

Eran Kinsbruner is Mobile Technical Evangelist for Perfecto Mobile.

The Latest

November 21, 2017

One overlooked opportunity for improving DEV and OPS collaboration is inviting database administrators (DBAs) to the DevOps conversation. DBAs function in a unique role where bridging the gap between development and operations occurs daily ...

November 20, 2017

DevOps must also be seen as a bottom-up process. In other words, if we consider DevOps, we must also take very serious look at "OpsDev" ...

November 16, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 7, the final installment, covers IT Operations tools ...

November 15, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 6 covers DevOps and development tools ...

November 14, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 4 covers communication ...

November 13, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 4 covers more about combining Dev and Ops in teams ...

November 09, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 3 covers how to set up teams ...

November 08, 2017

Mainframes may be legacy, but they still run a lot of business. With so much in play, businesses run a great risk when practices for maintaining and developing on mainframe remain largely the same despite the rest of the organization undergoing significant change to keep pace with the latest DevOps trends ...

November 07, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 2 covers the personal interaction between Development and Operations ...

Share this