The new battleground in Analytics Part 1: Transforming APM into Application Intelligence

As a relative newcomer to the world of Application Performance Management (APM) and the larger category of Application Intelligence, I knew I had a lot to learn. I came into this market having spent the last 15 years in the Analytics space. The idea of taking large volumes of disparate data and turning it into actionable insight is something I’ve always found compelling. Though people generally think of a flashy dashboard, Analytics is so much more. At Business Objects I got to be part of the evolution from standardized reporting through ad hoc analysis, data exploration, and predictive analysis.  There was still a significant barrier though to making it work in the real-world where data volume, variety and velocity were too much to handle at the application level. Data had to be extracted and transformed before being made available in a data warehouse or mart where it became available to an end user. That’s an expensive and time consuming process that only offered the insight you’re looking for hours, days or even weeks later. However, at SAP our customers were finally able to realize the promise of these new capabilities with the introduction of SAP HANA (High-performance Analytic Appliance). That in-memory platform delivered amazing computing power capable of simplifying the infrastructure of application environments while giving the business real-time insight.

The business impact derived with the right information at the right time is staggering to the point that customers have been willing to pay SAP handsomely for these capabilities. Companies can drive huge revenue increases, save millions in cost, and reduce their risk substantially by better leveraging their data assets. I have great passion for the space and helping customers use insights to change their business.

Given my background, getting into the APM space seemed like a huge leap. My impression was I’d be working with IT organizations more than the business owners. I’d be in a much more technical space, solving technology problems more than business issues. Clearly, I had a lot to learn. I started the learning process by focusing on two things: learning the product and understanding how it drives value for our customers.

First, I began to familiarize myself with the product and learn how the features provide benefit. As an APM tool, AppDynamics can help people quickly find bad code, inefficient code, database problems and a host of other things that negatively impact the experience for end users of applications. I don’t want to discount the value of deep knowledge and experience in the APM space, but after watching a demo or two and playing with the software a bit I felt like I could use AppDynamics to find problems and performance bottlenecks in an application. It was simple and instantly compelling.

The second phase of learning was digging into customer use cases and how they realize value with AppDynamics. There are some amazing stories of real business impact. Here are a few of my favorites:

FamilySearch:  Using AppDynamics FamilySearch saved $4.8M in infrastructure and related costs over two years by making their applications more efficient. With help from AppDynamics they scaled the use of their application 10x without growing their infrastructure!

Fox News:  After deploying AppDynamics they reduced their MTTR (mean time to resolution) from weeks to under a few hours. They decreased the number of support tickets by 90%, and they stabilized new releases in hours compared to the full week it used to take them.

Edmunds.com:  With AppDynamics they went from having 10 people working on a single problem for several days to fixing things in a few hours. That’s a huge productivity improvement and a dramatic reduction in lost revenue.

During a proof-of-value implementation with a large prospect we helped them immediately identify a bug they knew existed but couldn’t find. 30 minutes later the problem was resolved. Later, over dinner and drinks they were noticeably excited and acknowledged they had worked around this bug by adding 2,000 additional servers to their environment. Those 2,000 servers were no longer needed. That’s an unbelievable cost savings and it took less than an hour!

You can learn more about how these and other companies are getting impressive value out of AppDynamics at http://www.appdynamics.com/case-studies.

After immersing myself with these learning exercises it suddenly occurred to me Application Performance Management is simply another form of Analytics. It turns large amounts of data into information you can use to take quick action. It can help you drive revenue, reduce costs and mitigate risks. The results can be incredibly exciting.  Our customers are seeing it every day!

With that realization, it was time for me to take the next step and dig into Real-Time Business Metrics, Transaction Analytics and the corresponding transformation of APM into Application Intelligence.  By being plugged directly into an application’s code you can get real-time analytics without the challenges and costs associated with traditional analytics. It’s a game changer for business and IT, and this will be the focus of the upcoming Part 2 in this series.

Introducing Real-Time Business Metrics

I’ve been looking forward to writing this blog for some time.  I have worked with many enterprise customers to document the pain they solved using AppDynamics and a common question I always ask is “What was the actual business impact of that slowdown or outage?”, the result is that most customers guesstimate the revenue impact of slow performance, and are generally nervous about calculating such number.

They’re nervous because they might expose to the business how much revenue they are costing them each year thru incidents and outages. That’s definitely one way to look at things. However, if you flip this problem around IT could actually show the business how much revenue it created as a result of agile releases or initiatives such as SOA, Cloud and Virtualization.

Imagine if a new application feature suddenly caused a 5% increase in revenue? Wouldn’t it be cool for IT to share this fact with the business? With AppDynamics new real-time business metrics IT can do just that. Here’s how it works…

1. Monitoring Business Transactions

A business transaction is a type of user request in your application. AppDynamics can auto-discover these and monitor the response time of such requests, this allows IT to see the real end user experience and detect problems instantly as they happen. For example, below is a Checkout transaction from one of our customers that was requested 4,639 times, it had 53 errors and over 700 were classified as slow from their normal performance baseline.

1

2. Extracting Revenue Metrics from Business Transactions

Once you starting discovering and monitoring the performance of business transactions, the next step is to define which key business data you want to extract and report on. In AppDynamics you can define “Information Points” which are essentially custom metrics from extracting method parameters in application code. For example, in the below screenshot I created an information point called “Checkout Revenue” and specified the application code where AppDynamics should extract the revenue values, in this example it was the method signature:

com.online.business.action.CheckOut.confirm() 

I then created a custom metric called Checkout Revenue based on a SUM operation on the getter chain:

getShoppingCart().getAdjustedTotal().getAmount().intValue()

AppDynamics will now extract all the checkout revenue values from every transaction and make this available as a new metric “Checkout Revenue” which can be reported in real-time just like any other AppDynamics metric.

Business Metrics Wizard

3. Correlating Application Response Times with Application Revenue:

Now that AppDynamics is monitoring the performance and revenue of your business transactions, its possible to correlate and report these metrics over-time so IT can understand their relationship. Take the below example, which shows the revenue per minute vs. the response time per minute of the application. As the screenshot shows, its pretty clear what the real business impact of this slowdown was to the business. Now imagine the reverse,  imagine if the application got faster and that have a positive impact on revenue and transaction throughput? Wouldn’t it be great to track this information over-time so you can see the real impact of agile release cycles?

Correlating revenue and performance

4. Creating Real-time Business Dashboards

Today nearly every monitoring dashboard is about application response times, or the health and resource of infrastructure. So when something glows red or flashes on a dashboard it denotes something very bad is happening. The reality is that most dashboards glow red everyday when performance and resource spikes. When is a problem really a problem? With real-time business metrics you can now mash and fuse business KPI’s with your application and infrastructure metrics. So when something turns red you can see the revenue impact of such issue.

real-time business metrics dashboard

5. Being Pro-Active with Business Alerts

Looking at monitoring dashboards periodically (like the above) is the first step to being pro-active with business impact. However, if you want to be truly pro-active you need to automate this entire process and let your monitoring solution do the alerting for you. The great thing with AppDynamics is that it can self-learn the normal value of every metric it collects, and create a dynamic baseline (threshold) over-time. This allows it to accurately detect deviations caused by abnormal activity. So just like we can detect deviations in application performance we can now do the same for your application revenue or order throughput. For example, one of our customers Orbitz said:

“If we’ve sold less than $1,000 in five minutes, there is probably a problem, even if it’s 2 o’clock in the morning. If our sales have flatlined, that’s a critical problem. I don’t know how to be any clearer.”

Geoff Kramer, Manager of Quality Engineering at Orbitz Worldwide

The ability to alert on business impact vs. application or infrastructure performance can be a game changer. It helps IT truly align with the priorities and needs of the business, allowing them to speak the same language and manage the bottom line.

You can get started today with real-time business metrics by signing up and taking a free trial of AppDynamics Pro here.