Achieve Effective Application Performance Management

May 10, 2018

When done right, Application Performance Management (APM) gives companies increased visibility that reduces risk, enables better decision-making and provides peace of mind. However, many companies face organizational barriers that prevent them from fully harnessing the predictive power this discipline can bring.

Why, knowing that an effective, efficient application performance management discipline is so crucial, are so many companies struggling? Moreover, are there proactive steps organizations can take to protect themselves against wasted budget dollars and lost market share as a result of application performance failures?

In this 4-part series, we outline the most common obstacles to achieve effective APM and how to address them to save money, increase efficiencies, and protect the user experience (UX).

Roadblock #1 No End-User Perspective

Many organizations focus on individual application features and functionality or server performance rather than taking a holistic view of operational scalability and end-user experience. Focusing only on discrete system components fails to consider many issues and events that can affect the performance and final delivery of functionality from their perspective. For example, your system under test may be calling on a component or a third party system that another system also accesses. If you do not understand the usage of that shared system, you may overlook slow response times caused by contention for that shared resource. You need to understand and track the latency experienced of each component and consider the effect on the end-to-end delivery process, or your predictions may be inaccurate. Remember, end users are not concerned with the performance of individual components; they are only concerned with their experience.

WHAT TO DO? Create end-to-end performance test environments.

Rather than simply running performance tests, performance management demands an end-to-end, holistic level view of system performance, which includes end-user modeling, monitoring and planning. From the beginning of the software development lifecycle, teams should developdesign and test with an end-to-end perspective in mind. Further, invest the time and effort to build out environments that replicate the entire end-to-end performance of the system under test.

  • Be sure to test the integrations and handoffs, not just the individual components.
  • Avoid gaps in visibility by continually evaluating how changes to code may impact integration points throughout the system.

This will ensure service to end users is not affected negatively. This becomes especially important when code changes are made in complex, integrated systems.

In this 4 part series, we outline the most common obstacles to achieve effective APM and how to address them to save money, increase efficiencies, and protect the user experience (UX).

When done right, Application Performance Management (APM) gives companies increased visibility that reduces risk, enables better decision-making and provides peace of mind. However, many companies face organizational barriers that prevent them from fully harnessing the predictive power this discipline can bring.

Roadblock #2 Absence of Clear Performance Ownership

Achieve Effective APM—Overcoming Common Obstacles (Part 2 of 4)Responsibility for performance management is often fragmented. Rather than a designated function, performance becomes the part-time job of several team members – a peripheral responsibility that falls by the wayside when primary duties become paramount. Over time, performance becomes everyone’s and yet no one’s responsibility. And while production support managers, network engineers, admins, DBAs and developers all possess similar skills to performance engineers, they are not trained (or equally importantly, practiced) in identifying, replicating, isolating and remediating performance bottlenecks. These skill gaps become a major risk to the effective and efficient maintenance of infrastructure and tools.

WHAT TO DO? Designate discrete performance roles and responsibilities.

It is critical to dedicate individuals whose sole job is to ensure the scalability, availability, and responsiveness of your systems. Embrace an organizational mindset that values performance as an integral and discrete part of the team, aligning roles and responsibilities appropriately. According to ITIL principles, an organization should ideally delegate a performance manager as well as a capacity manager. Beyond safeguarding day-to-day performance, the capacity manager looks to the future, making important decisions about buying and building. They ensure the organization is not only providing scalability and responsiveness to satisfy user needs, but doing so while efficiently utilizing existing infrastructure. The challenge here is integrating these processes in a way that protects both velocity and the customer experience. Take advantage of collaboration tools to increase agility and maintain visibility across teams.

In this 4 part series, we outline the most common obstacles to achieve effective APM and how to address them to save money, increase efficiencies, and protect the user experience (UX).

When done right, Application Performance Management (APM) gives companies increased visibility that reduces risk, enables better decision-making and provides peace of mind. However, many companies face organizational barriers that prevent them from fully harnessing the predictive power this discipline can bring.

Roadblock #3 Lack of Actionable Performance Data

Achieve Effective APM—Overcoming Common Obstacles (Part 3)Many organizations collect only veneer-level, observational data (such as page load or click response time) that only peripherally reflects real-world user activity and usage patterns. If data is not collected on virtual user activity modeled after the end-user experience, the output could mislead your team, providing the state and capabilities of an application that does not represent reality – and basing business intelligence off misleading data can lead to poor decisions in terms of development, deployment and infrastructure spend.

WHAT TO DO? Model usage patterns; measure behavior patterns.

It is critical to marry end user experience to the utilization of infrastructure. Begin with a thorough model of usage patterns—what are users doing, when, how and any combination of behaviors they might do. Next, outline the right metrics to capture these behavior patterns and utilize the data to frame and inform your performance testing strategy. Then, continue to track these metrics in production and monitor for trends over time. Finally, incorporate “what-if” testing of potential infrastructure changes to understand impacts, and be sure to monitor in test as you expect to in production, using the same environments and tools. Real, user-centric data can be turned into actionable intelligence, enabling IT to support the business more efficiently. Furthermore, any baseline data gathered and properly modeled becomes the gold standard to which all future performance tests are compared – meaning all future test data will also be valuable, as it is based on comparison to a truly representative scenario.

In this 4 part series, we outline the most common obstacles to achieve effective APM and how to address them to save money, increase efficiencies, and protect the user experience (UX).

When done right, Application Performance Management (APM) gives companies increased visibility that reduces risk, enables better decision-making and provides peace of mind. However, many companies face organizational barriers that prevent them from fully harnessing the predictive power this discipline can bring.

Roadblock #4 Treating Performance as a One-Time Act

Achieve Effective APM—Overcoming Common Obstacles (Part 4)Often times performance testing, monitoring and planning are one-time acts conducted by a single specialist operating in isolation. This activity commonly occurs at the last minute or reactively after a failure. Even if the numbers look acceptable at any given moment, changes are inevitable. Performance must be evaluated continuously to respond to code and infrastructure changes, new functionality, and fluctuating usage patterns. Additionally, the performance impact of transient events and the effort and coordination it takes to effectively test and prepare for them is often underestimated. For example, extraneous loads like batch processing eat up server bandwidth and causes seemingly inexplicably poor performance. This is fixable and avoidable, as long as performance is evaluated continuously.

WHAT TO DO? Implement continuous tuning, testing, optimization, and monitoring strategies.

Performance is a moving target. Track and monitor as a team organic growth and changes in usage patterns to inform continuous tuning, testing, optimization and monitoring strategies. By focusing on future growth as opposed to merely sustaining current usage, you build predictive performance into each iteration. Furthermore, include performance in each sprint’s definition of done. Even though functionality is often a high priority when getting an application out the door, performance ‘ilities’ are just as relevant to end users. Sufficient functionality is not enough. Companies who treat performance as a continuous event with ongoing participation from the internal community can develop and release better applications that work and perform well for users.

In Conclusion

As organizations realize the impacts of poor performance on employee productivity, customer retention, brand reputation and the bottom line, they must put more emphasis on application and system performance. An enterprise-wide performance management discipline can mitigate risk and protect the end user experience. Success in this discipline requires IT organizations to think about performance differently: view it not just as a testing event that generates load against a system, but as an end-to-end, continuous effort that is tied back to business initiatives. This starts by embracing best practices in performance management, treating them as critical, and investing in infrastructure, culture change and role shifts to support the transformation.

Ineffective performance management is often less about a lack of internal skills and more about proper coordination of the right skills. Often companies have far more expertise than they give themselves credit for, but people remain underutilized and the coordination of efforts is not effective. Optimizing existing performance capabilities and establishing an end-to-end performance discipline are investments that will, over time, save your business money and improve the overall customer experience.

 

Learn how SQA can help you implement an effective application performance management strategy.

Additional Articles