Mobile Applications: Challenges from Development to Production

appsMany companies are struggling to balance time-to-market demands for mobile applications while still providing the performance and functionality end users desire. The mobile application lifecycle adds more complexities and unknowns than traditional applications, which only adds to the challenge.

In order to be successful, processes need to be streamlined and/or enhanced from development through production. Software solutions, which cover the entire lifecycle, help tremendously to provide visibility, automation, and monitoring of end users.

HPE has the most complete end-to-end mobile application testing solution. During development, automated functional testing (HPE UFT and HPE LeanFT) and HPE Service Virtualization increase the quality while decreasing the time to market.

Prior to release, performance testing with HPE StormRunner and HPE Network Virtualization will ensure the backend infrastructure, network, and local devices meet end-user desired response times. Once in production, HPE AppPulse Mobile will monitor the application and provide visibility into end-user experience, response times, crashes, and much more.

In the center of all these solutions is HPE Mobile Center. It organizes the devices and provides integrations with other HPE solutions, so they can leverage actual devices or emulators for testing.

HPEA big challenge with mobile environments compared to traditional applications is the amount of versions of operating systems such as IOS, Droid or Windows. Ensuring the quality in even the most popular versions of the operating systems drastically increases the scope. Leveraging automated testing on mobile applications and websites will decrease the time to test and still ensure quality.

end userWhen customers start testing mobile applications, they are generally manually testing their apps or websites from a few of the most popular devices. There are many mobile solutions, such as HPE Mobile Center, which can organize and provide access to mobile devices for manual or automated testing. These devices can be centrally located or remotely connected via a user’s desktop. Either way, these devices are easily accessible via a browser or interfaced with other solutions for automated functional or performance testing.

Quality engineers can leverage automated testing solutions, like HPE UFT, to launch a device from HPE Mobile Center, then perform record/replay against it to ensure business processes are working correctly. The device appears on their desktop like any other application. Scripts are easily reused across many devices as long as they have the same operating system. Since HPE UFT works the same on mobile devices as it does in other environments, the ramp-up time is short. Other solutions are similar but rely more on programming.

When performance testing mobile applications, the networks provided by telecommunication vendors are generally the focus. The backend infrastructure still needs to be tested but can easily be addressed with traditional methods. Many times, what network (Verizon, Sprint, and others) and what speed (2G, 3G, 4G, 4G LTE) are not even known but have a large impact on application quality and performance.

While executing performance tests, it is important to simulate a variety of different networks and speeds. For example, log-in, add-to-cart, and checkout are critical transactions and must be available with good response times. After a successful performance test on the backend with good response times, include HPE Network Virtualization into the next test. It will provide transaction response times broken down by network and speed.

For example, a transaction which has great response times with speeds of 4G+, takes more than 10 seconds when going below 4G. It is crucial to know this information and make adjustments as necessary.

graphOnce the application is in production, traditionally the only visibility is what IT sees on the backend infrastructure. There are many solutions available to monitor mobile applications in production. They provide visibility into end-user experience, response times, application crash details, and much more. If there is a poor response time, you can quickly identify if it is isolated to a particular device, operating system version, or browser. Details provided during an application crash also help isolate the cause.

 

1 comment

Leave a comment