|By AppDynamics Blog||
|November 2, 2012 03:03 PM EDT||
Welcome back to my series on Deploying APM in the Enterprise. In Part 2 we discussed APM maturity from an unusual perspective as maturity models go. In this blog we are going to discuss the process of getting what you want and need in the way of an APM product.
Warning – This is an astronomically long blog post so make sure you have plenty of time to read it through.
Let’s assume for a minute that you actually read Part 2 – APM Maturity As You’ve Probably Never Seen It Before and have an idea where you and your organization currently are on the maturity scale. To advance to a higher level of maturity you can work on process and people until the cows come home but eventually you are going to want a tool that provides insight your people and processes never will. So that is where I am going to focus the rest of this series while touching on the people and process aspect throughout.
If you have decided you need or want to buy a new software tool here is my tried and proven method for making it happen. Just to make things a little more interesting each step in the process is a song title that relates somehow and that I actually like. So feel free to comment on the blog post and my taste in music if you feel like it.
Throughout this blog post I will share some key lessons learned from my own experience dealing with software vendors. This information will be highlighted in bold red text so it is easier to pick out.
It Hurts So Good – John Cougar
Nobody will agree to spend money on a tool unless there is some problem putting the hurt on your business (lost revenue, productivity impact, customer satisfaction, etc…). Find and document a tangible problem. Preferably an issue with a business/mission critical application like your e-commerce platform, online trading, payment gateway, risk calculation, settlement system, etc… Find some application or service that is impacting your business in a meaningful way due to poor performance and/or downtime and document the following:
- Number of issues and severity level
- Mean Time To Repair (MTTR – usually the average amount of time from first impact to problem resolution)
- Quantifiable measure of impact on business (dollars lost per minute, potential customers lost, trades lost per minute, etc…)
- Average number of employees involved in troubleshooting each issue
- Root cause of each incident
You will use this data in your evaluation document and your business justification down the road.
The World I Know – Collective Soul
“So I walk up on high / And I step to the edge / To see my world below” If you haven’t already done it, you need to take inventory of what you already own and document your findings. You will use this information for years to come as long as you keep it up to date.
- What tools exist and what category should they be put in? (Database Monitoring, Network Monitoring, OS Monitoring, Desktop Monitoring, etc…)
- How many licenses do we have and are the current?
- What are they good at?
- What are they not good at?
- What would be classified as an APM tool?
- If I already have an APM tool why is it not being used properly?
- Put labels on your existing tools and understand what they do!
Down in a Hole – Alice In Chains
Now that you have the overall landscape of your monitoring ecosystem laid out you need to see if there are any gaping holes. AppDynamics is an APM company so we suggest you compare your existing tools to the Gartner definition of APM to see what you might be missing. Here it is paraphrased in my own words:
- End User Experience Monitoring: Measuring the response time of your application all the way to the end user. It’s not good enough to just understand how fast your application runs within the confines of the data center(s).
- Application Topology Mapping: Automatic detection and display of all components involved in the delivery of your application. You need to know what application components are in use at any given time, but especially when there is an issue impacting your users.
- Business Transaction Profiling: Detecting and measuring the response time of all application component activity initiated by a single user request. This is not the same as measuring the response time of a web page!!!
- Deep Application Diagnostics: Detecting and measuring the run time code execution within your application containers. If your current or prospective solution does not load into the application container you will NOT have this important capability.
- Analytics: Intelligence applied to data which provides you with actionable information. This is not the same as reporting and analytics can (and should) be a key differentiator between competing solutions.
You can do this same type of gap analysis for other types of monitoring but you will need to figure out the main aspects of each type for yourself (sorry).
So What’cha Want – The Beastie Boys
So lets assume that you need an APM solution to fill that large void in your monitoring capabilities and to solve that pesky problem which has been lingering for the past 6 months. You know which problem I’m referring to, it’s the one that crops up for a few hours every other week, it wreaks havoc on your business, then it magically disappears after half of your IT staff is on a massive conference call trying to figure out what’s going on. It’s the problem that your boss has to answer for in the daily update calls and can never explain. It’s the problem that will eventually get someone fired or “re-organized” and if you can fix it you will be a hero or a rockstar (you get to choose which term you prefer since you fixed the problem).
In order to pick the right APM solution (picking the wrong one can turn that rockstar potential completely upside down) you need to develop a method for comparing different solutions. First you need to narrow down the crowded list of vendors to a group of 2 or 3 at most to do a Proof Of Concept (POC). This initial narrowing of the field is usually done through feature comparisons (vendor websites), references from people you know, phone calls with vendors, phone calls with analysts (Gartner, Forrester, etc…), crystal balls, voodoo rituals, and possibly animal sacrifice.
Use your favorite spreadsheet program (I always wonder how many people don’t actually use Excel at work) and create a matrix with all of the products you might be interested in (AppDynamics should be first on the list, wink, wink) and compare each product to the level of support they have for each of your requirements. Your requirements at this point should be pretty generic as the detailed requirements are best suited for the POC phase. Here are some requirements to get you started:
- Automatic detection, naming, and monitoring of Business Transactions
- Automatic discovery and deep instrumentation of application code
- End user experience monitoring
- Analytics based alerting
- Automatic discovery and display of my application topology
- Support for my application technologies
- Support for my application architecture (cloud, monolithic, distributed, etc…)
- Open-ness of vendor (did they skirt around my questions?, did they talk in circles?)
- Many more requirements you should add…
One you have this matrix built it should be easy to narrow your choices (hopefully AppDynamics made the short list, wink, wink).
One piece of advice before moving along to the POC requirements section… Be very explicit and detailed with your questions as they apply to your environment. If you get a partial answer from a vendor or a response that is not quite what you are looking for make sure you dig deeper right away to figure out if they are blowing smoke or not. If they keep talking in circle you can be pretty sure they can’t really do what you are asking.
Little Lies – Fleetwood Mac
No, this is not the point where I tell you to start making stuff up so you can get your software purchased. This is the part where I warn you that vendors can get very “creative” with their marketing. Some vendors are worse about this than others but it can be very difficulty to wade through the enormous amounts of BS that are splattered across many vendors websites.
Remember this key principle when dealing with all vendors … Don’t trust anything a vendor tells you, make them show you in a live demo!!!
I’m not saying that vendors are evil liars, but they will give you their best answer to your questions and it might not align with the intent of your question. This has happened to me many times before and I learned the hard way that although a vendors answer was technically true, the answer was far from reality when compared with the intent of my question.
And now back to our regularly scheduled broadcast.
3 is the Magic Number – De La Soul
The POC demands it own set of much more detailed requirements. This is the time to really look under the covers at a product and see what it can do versus what you have already been told. Again, using your favorite spreadsheet tool create a new sheet for each tool in the POC. I prefer to use a weighting and grading scale to help differentiate between tools.
- Weighting: Some requirements will be more important to you than others. I use a Low, Medium, and High scale with associated values of 1, 2, and 3. This is your multiplier for the grade you give each requirement
- Grading: Some tools have better support for a requirement than others. I use a grading scale of None, Poor, Adequate, and Excellent with associated values of 0, 1, 2, and 3.
I also like to break up the POC requirements into categories. This helps keep me organized, ensures I don’t miss testing something on my list, and helps me write the analysis document at the end of the POC. Some examples of categories and requirements are shown below.
- Authentication and Authorization
- Supports Microsoft AD
- Granular Role Based Permission System
- User Interface
- Web based user interface compatible with Internet Explorer 8+
- Displays application topology without administrator or user configuration
- Deep Application Diagnostics
- Automatically discovers and instruments custom code
- Automatically traces complete call stack when performance is abnormally poor
- Automated intelligence to ensure instrumentation does not use excessive overhead
Your list should be much longer and more detailed. This requirements list is the basis of the POC and all follow up documentation so make sure it is thorough and not slanted towards a particular vendor. Think of it as your Christmas list when you were a kid, don’t be afraid to ask for things that might seem impossible but that could be really useful.
Another key lesson learned coming your way… Don’t let the vendor control the POC. You define the environment (Dev, Test, and even Prod if it can be done safely), you do the installation, you do the configuration, you do everything related to the POC. You are the one who has to use the tool after you buy it so be sure to personally do everything during the POC.
Be sure you provide the same playing field for each vendor so that your results are really comparable. Having a successful POC using a team of 5 vendor engineers versus another successful POC using just 1 engineer is comparing apples and oranges.
We Are the Champions – Queen
After you wrap up all of your POCs you should have enough data to pick a winner. Hopefully you built your spreadsheets so that they automatically add up the numbers related to all of the requirements. You will have a statistical winner based purely upon you spreadsheet data and that usually aligns with the overall feeling you have after the POC is complete but sometimes it might not. You may have a vendor/product that is statistically the winner but your gut is telling you to choose a different vendor. In this case you need to figure out exactly why you feel this way. You cannot justify vendor selection based upon a gut instinct with no explanation. Maybe one vendor was just a royal pain to deal with, maybe the solution worked well but was agonizingly painful to deploy. The key here is being able to express why your instinct is pushing you a certain direction and quantify the potential impact. Something similar to the following statement can be used as justification of your position:
“Even though Vendor X Product statistically scored highest in the evaluation there is one overriding factor that prohibits selecting them as the overall winner. Deployment and configuration of Vendor X Product is difficult and time consuming. Based upon the observed deployment and configuration time of 2 weeks for 1 application during the POC it would take approximately 19 years to configure monitoring for the 500 applications which are in scope. Deploying Vendor X Product does not make sense in our environment.”
The information you have been building throughout this entire process should be used to create an overall evaluation document. This document should have the following information at a minimum:
- Description of problem
- Description of proposed solution
- Vendors/Products evaluated
- Evaluation Criterial (Requirements)
- Evaluation Results
- Next steps
It can also be helpful to create a short (3–10 pages) presentation to accompany the evaluation document which you can use to brief management on your findings. This presentation should contain only the most important facts since you have all the detail anyone should ever want in the full evaluation document.
Another important document you can create is the business justification. The business justification cuts out all the technical details related to the product you want to purchase and gets right down to the economics of the matter. I am not going to dive deep into how to write a business justification but to help you get started you should make sure you get a ROI (Return On Investment) calculator from each vendor that participates in your POC. Vendors want to help you buy their solution and have a wealth of information available to help you build your business justification so just ask them for help if you need it. Just make sure that everything in the business justification is factually based and relevant to your business.
Lastly it is really helpful to have broad support for your initiative. Seek out people across your organization that will support your recommendation of product or who will validate the problem that you are trying to solve. If you have full support of an Application Owner whose business is being directly impacted this greatly increases your chances of success.
If you read this entire blog post please accept my gratitude! I know it was a long post but it’s a huge topic to cover. Hopefully you picked up some good information and will return for my next post about deploying the product you just worked so hard to get in the door. As always, your comments are welcome. I’d love to hear your tips for getting new solutions approved or any war stories from your vendor evaluations.
SYS-CON Events announced today that Men & Mice, the leading global provider of DNS, DHCP and IP address management overlay solutions, will exhibit at SYS-CON's 18th International Cloud Expo®, which will take place on June 7-9, 2016, at the Javits Center in New York City, NY. The Men & Mice Suite overlay solution is already known for its powerful application in heterogeneous operating environments, enabling enterprises to scale without fuss. Building on a solid range of diverse platform support,...
Feb. 9, 2016 12:30 PM EST Reads: 177
How Best to Integrate Cloud Foundry into Your Existing Ecosystem By @Gidrontxt | @DevOpsSummit #DevOps
As someone who has been dedicated to automation and Application Release Automation (ARA) technology for almost six years now, one of the most common questions I get asked regards Platform-as-a-Service (PaaS). Specifically, people want to know whether release automation is still needed when a PaaS is in place, and why. Isn't that what a PaaS provides? A solution to the deployment and runtime challenges of an application? Why would anyone using a PaaS then need an automation engine with workflow ...
Feb. 9, 2016 12:15 PM EST Reads: 162
With an estimated 50 billion devices connected to the Internet by 2020, several industries will begin to expand their capabilities for retaining end point data at the edge to better utilize the range of data types and sheer volume of M2M data generated by the Internet of Things. In his session at @ThingsExpo, Don DeLoach, CEO and President of Infobright, will discuss the infrastructures businesses will need to implement to handle this explosion of data by providing specific use cases for filte...
Feb. 9, 2016 12:00 PM EST Reads: 142
Fortunately, meaningful and tangible business cases for IoT are plentiful in a broad array of industries and vertical markets. These range from simple warranty cost reduction for capital intensive assets, to minimizing downtime for vital business tools, to creating feedback loops improving product design, to improving and enhancing enterprise customer experiences. All of these business cases, which will be briefly explored in this session, hinge on cost effectively extracting relevant data from ...
Feb. 9, 2016 11:45 AM EST
SYS-CON Events announced today that iDevices®, the preeminent brand in the connected home industry, will exhibit at SYS-CON's 18th International Cloud Expo®, which will take place on June 7-9, 2016, at the Javits Center in New York City, NY. iDevices, the preeminent brand in the connected home industry, has a growing line of HomeKit-enabled products available at the largest retailers worldwide. Through the “Designed with iDevices” co-development program and its custom-built IoT Cloud Infrastruc...
Feb. 9, 2016 11:45 AM EST
Predictive analytics tools monitor, report, and troubleshoot in order to make proactive decisions about the health, performance, and utilization of storage. Most enterprises combine cloud and on-premise storage, resulting in blended environments of physical, virtual, cloud, and other platforms, which justifies more sophisticated storage analytics. In his session at 18th Cloud Expo, Peter McCallum, Vice President of Datacenter Solutions at FalconStor, will discuss using predictive analytics to ...
Feb. 9, 2016 11:45 AM EST Reads: 384
SYS-CON Events announced today that Pythian, a global IT services company specializing in helping companies adopt disruptive technologies to optimize revenue-generating systems, has been named “Bronze Sponsor” of SYS-CON's 18th Cloud Expo, which will take place on June 7-9, 2015 at the Javits Center in New York, New York. Founded in 1997, Pythian is a global IT services company that helps companies compete by adopting disruptive technologies such as cloud, Big Data, advanced analytics, and DevO...
Feb. 9, 2016 11:45 AM EST Reads: 185
SYS-CON Events announced today that Commvault, a global leader in enterprise data protection and information management, has been named “Bronze Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY, and the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Commvault is a leading provider of data protection and information management...
Feb. 9, 2016 11:30 AM EST Reads: 398
As enterprises work to take advantage of Big Data technologies, they frequently become distracted by product-level decisions. In most new Big Data builds this approach is completely counter-productive: it presupposes tools that may not be a fit for development teams, forces IT to take on the burden of evaluating and maintaining unfamiliar technology, and represents a major up-front expense. In his session at @BigDataExpo at @ThingsExpo, Andrew Warfield, CTO and Co-Founder of Coho Data, will dis...
Feb. 9, 2016 11:30 AM EST Reads: 159
Advances in technology and ubiquitous connectivity have made the utilization of a dispersed workforce more common. Whether that remote team is located across the street or country, management styles/ approaches will have to be adjusted to accommodate this new dynamic. In his session at 17th Cloud Expo, Sagi Brody, Chief Technology Officer at Webair Internet Development Inc., focused on the challenges of managing remote teams, providing real-world examples that demonstrate what works and what do...
Feb. 9, 2016 11:00 AM EST Reads: 251
With the proliferation of both SQL and NoSQL databases, organizations can now target specific fit-for-purpose database tools for their different application needs regarding scalability, ease of use, ACID support, etc. Platform as a Service offerings make this even easier now, enabling developers to roll out their own database infrastructure in minutes with minimal management overhead. However, this same amount of flexibility also comes with the challenges of picking the right tool, on the right ...
Feb. 9, 2016 10:45 AM EST Reads: 130
More and more companies are looking to microservices as an architectural pattern for breaking apart applications into more manageable pieces so that agile teams can deliver new features quicker and more effectively. What this pattern has done more than anything to date is spark organizational transformations, setting the foundation for future application development. In practice, however, there are a number of considerations to make that go beyond simply “build, ship, and run,” which changes ho...
Feb. 9, 2016 10:45 AM EST Reads: 186
SYS-CON Events announced today that AppNeta, the leader in performance insight for business-critical web applications, will exhibit and present at SYS-CON's @DevOpsSummit at Cloud Expo New York, which will take place on June 7-9, 2016, at the Javits Center in New York City, NY. AppNeta is the only application performance monitoring (APM) company to provide solutions for all applications – applications you develop internally, business-critical SaaS applications you use and the networks that deli...
Feb. 9, 2016 10:30 AM EST Reads: 371
Father business cycles and digital consumers are forcing enterprises to respond faster to customer needs and competitive demands. Successful integration of DevOps and Agile development will be key for business success in today’s digital economy. In his session at DevOps Summit, Pradeep Prabhu, Co-Founder & CEO of Cloudmunch, covered the critical practices that enterprises should consider to seamlessly integrate Agile and DevOps processes, barriers to implementing this in the enterprise, and pr...
Feb. 9, 2016 10:00 AM EST Reads: 353
Eighty percent of a data scientist’s time is spent gathering and cleaning up data, and 80% of all data is unstructured and almost never analyzed. Cognitive computing, in combination with Big Data, is changing the equation by creating data reservoirs and using natural language processing to enable analysis of unstructured data sources. This is impacting every aspect of the analytics profession from how data is mined (and by whom) to how it is delivered. This is not some futuristic vision: it's ha...
Feb. 9, 2016 08:45 AM EST Reads: 424
Let’s face it, embracing new storage technologies, capabilities and upgrading to new hardware often adds complexity and increases costs. In his session at 18th Cloud Expo, Seth Oxenhorn, Vice President of Business Development & Alliances at FalconStor, will discuss how a truly heterogeneous software-defined storage approach can add value to legacy platforms and heterogeneous environments. The result reduces complexity, significantly lowers cost, and provides IT organizations with improved effi...
Feb. 9, 2016 08:15 AM EST Reads: 223
Data-as-a-Service is the complete package for the transformation of raw data into meaningful data assets and the delivery of those data assets. In her session at 18th Cloud Expo, Lakshmi Randall, an industry expert, analyst and strategist, will address: What is DaaS (Data-as-a-Service)? Challenges addressed by DaaS Vendors that are enabling DaaS Architecture options for DaaS
Feb. 9, 2016 08:00 AM EST Reads: 337
Cognitive Computing is becoming the foundation for a new generation of solutions that have the potential to transform business. Unlike traditional approaches to building solutions, a cognitive computing approach allows the data to help determine the way applications are designed. This contrasts with conventional software development that begins with defining logic based on the current way a business operates. In her session at 18th Cloud Expo, Judith S. Hurwitz, President and CEO of Hurwitz & ...
Feb. 9, 2016 07:15 AM EST Reads: 217
It's easy to assume that your app will run on a fast and reliable network. The reality for your app's users, though, is often a slow, unreliable network with spotty coverage. What happens when the network doesn't work, or when the device is in airplane mode? You get unhappy, frustrated users. An offline-first app is an app that works, without error, when there is no network connection.
Feb. 9, 2016 07:00 AM EST Reads: 182
The cloud promises new levels of agility and cost-savings for Big Data, data warehousing and analytics. But it’s challenging to understand all the options – from IaaS and PaaS to newer services like HaaS (Hadoop as a Service) and BDaaS (Big Data as a Service). In her session at @BigDataExpo at @ThingsExpo, Hannah Smalltree, a director at Cazena, will provide an educational overview of emerging “as-a-service” options for Big Data in the cloud. This is critical background for IT and data profes...
Feb. 9, 2016 06:45 AM EST Reads: 169