Mobile apps are serious business. Every year mobile apps are becoming more critical to the way consumers buy, organizations do business, and the world communicates.
Earlier this year Flurry released a report on mobile app usage stating: "In the six years that Flurry has been reporting on our mobile app usage, and in some cases addiction, we’ve seen stunning growth. This last year was no different. According to Flurry Analytics, in 2014 overall app usage grew by 76%. In this context, Flurry defines app usage as a user opening an app and recording what we call a session. In 2014, Shopping, Utilities & Productivity, and Messaging experienced triple-digit growth and were the key drivers. As our mobile devices become more and more a part of our everyday lives, we are increasingly using them for always-on shopping, working, and communication. Where years past have seen massive growth in games and entertainment, 2014 was the year apps got down to serious business."
If mobile apps are becoming vital to business, then mobile app performance is key – from development through production.
"If you're not designing your apps with mobile users in mind, you are taking a big risk in terms of attracting and retaining your customers, and gaining their loyalty and commitment to coming back," warns David Jones, APM Evangelist.
With this in mind, APMdigest asked industry experts – from analysts and consultants to the top vendors – to recommend the best ways to ensure mobile app performance. The full list of 18 Ways to Ensure Mobile App Performance will be posted over the next 4 days. With Part 1, we start at the beginning, at the development and testing stages.
The top way to ensure mobile application performance is through application governance, or BizDevOps. Better communication and collaboration between mobile dev, ops and QA teams, working in concert with business teams of application owners and users, allows for better application governance. Teams can determine what capabilities apps should have, and a faster feedback loop allows for changes to be made faster and more continuously. By moving performance management forward in the development cycle, teams can better understand dependencies and operational or quality issues across the entire application delivery chain – before apps are launched into production.
Technology Analyst and Founder of TechTonics Advisors
Highly performing mobile applications invariably share one common trait and that is robust testing in pre-production environments. Instrumenting mobile apps to collect critical business, performance and health data across languages, methodologies and platforms is not easy and requires real collaboration between development and operations. Operations teams must regularly share crash reports with development along with supporting stack traces, activity logs and code-level visibility needed to continually improve the next version of the app.
VP Marketing, CA Product and Solutions Marketing, CA Technologies
Mobile performance excellence starts at the onset of an application's lifecycle and involves immediate collaboration and a committed transparency across all functional teams, including Product Management, Development, and IT Operations. As early as app conceptualization, product management should clearly communicate the app's intent, both the acceptable and optimum user experience, and the possible usage and behavioral variances between OS, device and user location. With this understanding, Development and IT Operations will be able monitor and optimize the various applications stack touch points in both the pre-production and production environments well before the app is ever rolled out.
Director, Product Management – Mobile APM, Aternity
Monitor every aspect of the application and it's infrastructure, from the backend all the way to the application rendering. Make sure that this practice is started from the moment you start building the product so that performance will be on everybody's mind, both Dev and Ops. Make performance a key KPI during development, test the performance in details during functional and/or performance testing and guaranty performance monitoring in production!
Online Performance Consultant and Founder of Blue Factory Internet
3. PERFORMANCE TESTING
Mobile performance assurance is best assured, following unit and functional testing, by a structured, integrated program of performance testing, at or above anticipated traffic levels. Such testing should combine wide ranging device emulation on an appropriate browser and consistent PC platform across public carrier networks in key global markets, and "real device" originated testing for key mobile devices, as determined, where possible, from web traffic analytics of the live application.
Senior Consultant, Intechnica
Typically, consumers do not want to install a piece of software to monitor each application. However, an alternative exists – by leveraging synthetic testing to measure end user experience one can see where performance bottlenecks lie. This data helps answer the question: is it the network, the end point the user is going to, or the application itself?
Senior Director of Service Provider Solutions, SevOne
4. NETWORK EMULATION
Delivering good performance of mobile applications is challenging due to the highly variable conditions of the mobile networks themselves. You can be getting sparkling 4G one minute but move a couple of blocks in another direction and it can be a very different experience. Therefore, when developing mobile apps you need to factor into your design and usability testing, the ability to function properly across networks that suffer from restricted bandwidths, high latencies and high data loss. The best way to achieve this is to ensure, at every stage of the development lifecycle, that you app is tested to see how it copes with the very worst conditions you can anticipate and the best way to achieve this is through the use of network emulation technology.
Senior Technical Specialist, iTrinegy
You must be obsessively cognizant that your user community is not solely comprised of residents of major cities with stable 4G and LTE signals. High latency, limited bandwidth and connectivity failures are the bane of mobile applications, so your QA methodology should leverage WAN emulation to test against worst-case scenarios. This will quickly reveal chatty and bulky parts of your application, as well as areas sensitive to losses in connectivity. NPM products with modeling capabilities can also be used to capture best-case transactions and virtually introduce complex network effects to predict worst-case performance.
Jon C. Hodgson
Global Consulting Engineer, Riverbed
The requirements of an APM tool are now much more complex than they've ever been. Not only do they need to trace a user transaction across numerous microservices on the same system, but they also need to happen pretty fast ...
Performance monitoring is an old problem. As technology has advanced, we've had to evolve how we monitor applications. Initially, performance monitoring largely involved sending ICMP messages to start troubleshooting a down or slow application. Applications have gotten much more complex, so this is no longer enough. Now we need to know not just whether an application is broken, but why it broke. So APM has had to evolve over the years for us to get there. But how did this evolution take place, and what happens next? Let's find out ...
There are some IT organizations that are using DevOps methodology but are wary of getting bogged down in ITSM procedures. But without at least some ITSM controls in place, organizations lose their focus on systematic customer engagement, making it harder for them to scale ...
If you have deployed a Java application in production, you've probably encountered a situation where the application suddenly starts to take up a large amount of CPU. When this happens, application response becomes sluggish and users begin to complain about slow response. Often the solution to this problem is to restart the application and, lo and behold, the problem goes away — only to reappear a few days later. A key question then is: how to troubleshoot high CPU usage of a Java application? ...
Operations are no longer tethered tightly to a main office, as the headquarters-centric model has been retired in favor of a more decentralized enterprise structure. Rather than focus the business around a single location, enterprises are now comprised of a web of remote offices and individuals, where network connectivity has broken down the geographic barriers that in the past limited the availability of talent and resources. Key to the success of the decentralized enterprise model is a new generation of collaboration and communication tools ...
To better understand the AI maturity of businesses, Dotscience conducted a survey of 500 industry professionals. Research findings indicate that although enterprises are dedicating significant time and resources towards their AI deployments, many data science and ML teams don't have the adequate tools needed to properly collaborate on, build and deploy AI models efficiently ...
Digital transformation, migration to the enterprise cloud and increasing customer demands are creating a surge in IT complexity and the associated costs of managing it. Technical leaders around the world are concerned about the effect this has on IT performance and ultimately, their business according to a new report from Dynatrace, based on an independent global survey of 800 CIOs, Top Challenges for CIOs in a Software-Driven, Hybrid, Multi-Cloud World ...
APM tools are your window into your application's performance — its capacity and levels of service. However, traditional APM tools are now struggling due to the mismatch between their specifications and expectations. Modern application architectures are multi-faceted; they contain hybrid components across a variety of on-premise and cloud applications. Modern enterprises often generate data in silos with each outflow having its own data structure. This data comes from several tools over different periods of time. Such diversity in sources, structure, and formats present unique challenges for traditional enterprise tools ...
Today's organizations clearly understand the value of digital transformation and its ability to spark innovation. It's surprising that fewer than half of organizations have undertaken a digital transformation project. Workfront has identified five of the top challenges that IT teams face in digital transformation — and how to overcome them ...