By the end of 2013, the number of mobile-connected devices will exceed the number of people on earth and by 2017 there will be nearly 1.4 mobile devices per capita according to Cisco.
With this astonishing statement in mind, we could draw an APM scenario that will focus on two areas:
Business-to-Consumer (B2C) whose goals are improving user experience and boosting loyalty
Business-to-Employee (B2E) whose goal is improving productivity by allowing access to ERP and CRM enterprise applications
Nowadays, we should consider “mobile” as “always with me”, especially when we want to fill our micro-idle moments during the day. Because of this, we expect mobile apps to perform as quickly as or even faster than “standard” websites.
As everyone knows, mobile applications are of three types:
Browser-based: actually web sites written in HTML5 that are run by a mobile browser;
Native apps: developed for one specific platform (iOS, Android, etc.) and that can access all device features (camera, GPS, accelerometer, list of contacts, etc.);
Hybrid apps: in part native apps in part browser-based and that allow easier cross-platform development.
IT departments are facing new challenges in the monitoring of the performance and the availability of mobile applications. It is in fact important to act before negative posts start spreading the social networks or app stores when problems arise. An IT Manager should therefore accommodate different needs to address these new challenges:
preserve investments for already existing APM tools;
use baselines in order to compare apples to apples (PC, mobile, WiFi, etc.);
expand best practices and skills across mobile monitoring.
Which are then the possibilities available for mobile monitoring?
Synthetic monitoring using real mobile devices ensures that availability and performance metrics are collected under controlled conditions because you can:
select the desired device models & types (phone, tablet);
run always the latest mobile app version;
define known conditions for the carrier, the OS version, the battery charge level, etc.
In this way, the availability baselines for different app versions can be safely compared and performance issues can be verified against objective data that you can trust. Alerts can be triggered safely when transaction availability or response times are compromised and so became aware of incidents before your users do.
Synthetic monitoring using emulated devices introduces some layers of abstraction that create ideal conditions such as:
infinite device resources availability (CPU, RAM, network, etc.);
wi-fi connection always on with the best signal;
absence of background tasks running.
Under these conditions, performance and availability metrics should be used only for reference in the best case scenario and not for alerting purposes.
From the above scenarios, the IT Department will have benefit if the monitoring solution is able to record and execute synthetic transactions transparently with respect to the device (tablet or phone) and with respect to the operating system. At the moment, there are products with these characteristics for iOS and Android but not yet for Windows Mobile too.
On the contrary, monitoring through real user’s devices holds some implications compared to “standard” real user monitoring. This technique infact implies:
the need to install an SDK inside your native / hybrid mobile app and put it back in the store;
the risk of being exposed to existing or future security flaws;
the suspicion of your customers when informed during the install procedure.
Moviri has 13+ years of experience in performance optimization and strategic partnerships with leader companies in this field. We have the right background to help you:
optimize mobile web sites for the different mobile browser flavors;
define common metrics and KPIs reporting;
include mobile application testing in your software life cycle.