Mobile APM - Design Goals Matter

Mobile usage continues to grow at an amazing rate. Earlier this year we hit an inflection point where internet access via mobile overtook desktop internet access. Mobile adoption rates have been running 8 times what web adoption rates were in the 1990’s. And by the end of 2014, it is projected that there will be more active mobile devices in the world than the world population of humans!

As adoption and usage climbs, so does the priority of making sure your customer’s mobile experience is a good one, but monitoring mobile apps is considerably different architecturally than traditional server side APM monitoring, with different design trade-offs to take into consideration. You have the traditional server-side factors to consider, but also have to weigh factors of slower network latency and bandwidth, battery life, and the lower CPU and memory constraints.

At Velocity New York last month we announced the beta release of our Mobile APM capability for iOS and Android apps.  In this first of a series of blog posts about our Mobile APM offering I wanted to briefly cover the main design goals we chose to be the guiding principles of our Mobile APM solution. After much discussion and debate on all the factors listed above, we settled in on three key design goals:

  1. Minimal developer effort to add monitoring to an app
  2. Http(s) requests made by app are the most likely cause of poor performance
  3. App Screen focus maps closer to user experience and simplifies reporting and troubleshooting

To anyone involved with mobile app development, the first two probably immediately sound like good design goals, if not immediately apparent.  The third is a little subtler.  I will walk through the rationale behind all of these design goals in upcoming blog posts, or if you would like to see a sneak peak, register for the Become a Mobile Application Performance Genius webcast I am doing with mobile developer, author, and trainer Max Flirtman on Tuesday, October 7 at 10 am PT.