Most technology folks have heard Marc Andreessen’s provocative statement, “Software is eating the world.” Whether you agree fully or not, you’re realizing that your business critical software applications increasingly drive both the top-line revenue growth and the bottom-line operational efficiency of your company – and often form the pillar of your business identity.
Legacy monitoring systems you have in place, capturing and alerting on scores of infrastructure level metrics, have helped protect your technology investment to some degree. I’ve worked for two leaders in that space, HP and BMC, so can personally attest to the real benefits of server, network and database monitoring that clients achieve. However, as consumer demand for superior services and faster innovation accelerate, we see that the applications and associated business transactions are what end-users ultimately care about. You can no longer afford slow response time, let alone application outage situations, as customers will delay or abandon purchases – or worse yet switch to a competitor when you have unacceptable application performance. And unfortunately these “Yellow Light” or slow performance situations are the most challenging to detect and fix!
So you’ve come to the conclusion that you need a full-fledged application performance management (APM) solution. The question some companies wrestle with at this point is: “Should we invest in an 3rd party APM solution or build it ourselves?”
Four key considerations should be:
Upfront Costs – such as Initial Project Build & Software License cost.
Ongoing, Annual Solution Costs – such as Server / Storage footprint, administrative maintenance & support, & agile development / release activities.
Solution Capabilities Driving Benefits – chiefly, the ability to drive down the number of performance defects in production, as well as the MTTR when issues do occur.
Opportunity Costs – personnel resources working on in-house APM, versus are there mature 3rd party APM solutions available for purchase.
1. Upfront Costs
It’s difficult to estimate exactly how long it would take a company to develop a basic application monitoring tool in-house – but we’ll give it a logical shot. Of course, on the plus side, the company would avoid spending money on a “commercial off-the-shelf” (COTS) 3rd party software application. Based on experience for design, development, testing, and release, a good estimate for an in-house Initial Project Build is a team of 2-3 Engineers about 6 months to have a basic, log parsing and alerting tool ready. A more robust tool for a medium to large sized deployment may be 2-3x this size and investment. A gaming company we work with, when assessing an in-house build situation, estimated an APM product development lifecycle in the 12 to 18 month range. Why? APM functionality that involves tracing the user experience of distributed transactions, where every call needs to be traced across each service layer, is non-trivial technical work. Also, you’ll need to factor in one-time hardware and prerequisite software purchasing costs. So a ballpark cost from $400K to well into seven figures is reasonable.
What would be the upfront software licensing cost of a 3rd party APM solution? Probably in a similar range, perhaps higher in certain cases. Also, many APM companies offer lower annual SaaS subscription costs as an alternative to full upfront licensing payments – which add up to the same licensing fees over 3-5 years. However, you should take into consideration that some solutions such as AppDynamics, which can be downloaded and installed via self-service within hours, provide immediate Time-to-Value versus waiting for a full software development lifecycle to occur for a custom built solution.
Advantage: Cost = In-house (slight? depends on robustness of APM solution built), Time-to-Value = 3rd Party APM
2. Ongoing, Annual Solution Costs
First, let’s determine the hardware & storage footprint required for the solution. Typical in-house developed solutions architect for over-capacity as a rough estimate because of unknowns, and to avoid encountering limitations & performance issues. A good estimate per environment (Dev, Test, Prod) may be 2 Large Servers and 16 TB of Storage for a starter in-house APM solution. This cost might run in the $100K to $135K range per year.
For 3rd party APM solutions, the specs are well-known, validated, and published. A leading APM solution like AppDynamics has been built and tuned via R&D by specialists over several years. The footprint for a similar medium-sized deployment would be 1 Medium Server and 6 TB of Storage, for a rough cost of about $40-50K per year – or less than half of the in-house cost.
From an FTE support perspective for the in-house solution, you have to understand the administrative, support, & enhancement / new development labor required. A good admin & support estimate would run about 1-2 FTEs, and new development might run 2 engineering FTEs to keep up with enhancement requests and coverage for new applications & technologies. Remember, users will not expect the APM solution to stay static! You might start with basic metric stores and time series data, but this will quickly run out of steam. Next, you’ll want to build a baseline engine for the metric store based on load patterns and percentiles of metrics, as examples. Demand for dashboarding and security access control requirements come into play, and require much design and testing work especially as the solution scales. So this annual labor cost would run in the $375K plus range.
On top of that, in today’s Agile DevOps world, there are additional maintenance / revision labor costs each time a business application is released to production. Appliances and/or monitoring agents need updating, and both application and business transaction topology maps likely need to be revised manually. As the frequency of application release grows, often to a bi-weekly application release schedule, these are not insignificant tasks. We estimate in a medium sized deployment, this could require about 2,000 labor hours per year to keep up, or about $100K.
In the AppDynamics APM world, these types of capabilities are already built into the solution. So the maintenance per application release is zero since there is automated application discovery, mapping, and business transaction flows out of the box. The ongoing FTE administrative & maintenance requirements for a medium-sized deployment are 1 FTE, or about $125K/year. And new development is covered in the license costs via the hundreds of R&D professionals contributing to the various releases of the 3rd party software.
Advantage: 3rd Party APM (large, especially adding up multiple years)
3. Solution Capabilities Driving Benefits
Next we look at the ability of an APM solution to provide benefits to your enterprise – which can be grouped into reducing costs, mitigating risks, and increasing or protecting revenue. Two key performance metrics we suggest for measuring impact on cost, risk, and revenue are:
# defects released to production
Mean time to repair (MTTR) per performance issue
By leveraging AppDynamics in Pre-Production, our clients often report reduction in performance issues released to Production of 40%. And by watching every line of code executed in Production, and measuring & scoring each transaction, we provide a “3 clicks to resolution” approach that often reduces MTTR per performance issue by 65% or more. This is true of small application environments, as well as large deployments over 20,000 JVMs.
For an in-house solution, you have to assess what it would take to build similar APM capabilities to achieve these levels of defect and MTTR reduction. How many years, developers, and dollars? (And, as one client executive recently told us, “If I could do this, why wouldn’t my company be competing in the APM software space?!”) Or alternatively and more likely, “let’s stitch something low-cost together” in-house. Admittedly this sacrifices capability for cost, which translates into fewer features to address the MTTR and # of performance issue challenges you face.
For ballpark purposes, then, let’s credit the in-house solution in helping reduce both # of defects and MTTR up to 20%. If we use an industry average cost per minute of slowness / downtime equating to $500 (inclusive of both labor and revenue protection factors), and there is one Sev1 performance issue per application per quarter – the difference between the in-house solution versus an APM solution would equate to over $1M per year for a medium sized deployment.
Advantage: 3rd Party APM (not close; and these add up year over year, too)
4. Opportunity Costs
These costs deal chiefly with choosing what is most valuable for your developers to spend their time on. Especially in today’s high-technology enterprises, there are excellent engineers capable of building fantastic tools across a wide range of areas – so it is tempting to initiate an in-house APM build project and get something out the door. However, APM is not these engineers’ specialty and their talents are often better utilized on alternative software projects related to the core goods & services your company sells to your end-use customers that drive revenue.
This is an area we won’t attempt to quantify, as it’s more of a qualitative assessment and business decision specific to your organization. But with a fairly mature and continually developing 3rd Party APM market, for most enterprises it’s logical to say….
Advantage: 3rd Party APM
While the initial, upfront set of costs for an in-house vs. 3rd party APM solution purchase may be about the same (license vs build) – which leads some organizations to consider a “Do It Yourself” approach – there are significant ongoing annual costs for the care and feeding of an in-house APM solution compared to the 3rd party APM alternative. These include the infrastructure footprint, as well as labor costs associated with administration, maintenance & enhancements.
The biggest differential in cost is typically related to the chief purpose of an APM solution – how often does it proactively reduce the number of production defects, and how fast does it help you resolve performance issues when they do inevitably occur?
For a medium sized deployment, the total cost / benefit advantages of a 3rd party APM solution easily exceed $1M per year when compared to the in-house build alternative. This benefit accumulates year over year. And it’s worth mentioning here at AppDynamics, we achieve magnitudes of benefit even beyond other 3rd party APM solutions with lesser capabilities. We’ve leveraged the feedback of our over 1,000 customers during the past several years to drive R&D and greater benefit realization.
For AppDynamics, these advantages stem from:
The way our solution is architected to require minimal setup, upkeep and Time-to-Value, while providing ongoing Ease of Use.
Key capabilities – such as transaction tracing across complex, distributed applications, in your data center and the cloud – which lead to significant improvement in KPIs such as # performance defects and MTTR.
Our ability to intelligently scale to support the most complex and largest Pre-Production and Production environments.
Thought-leadership expanding into our “Application Intelligence” platform with a host of new modules and capabilities.
So when assessing an in-house vs 3rd party APM solution, consider a multi-year TCO horizon and not just a short-term initial cost estimate. Our personnel at AppDynamics standby to provide you help in not only getting a deep-dive on the APM market and our solution features, but also to analyze the value of APM choices via a detailed ROI assessment.
Thinking of trying a next generation APM solution rather than build it yourself? Try AppDynamics for free today!