No One Is Immune: How Protected are the Applications that Run Your Business?
By Steve Feloney | July 8, 2015
No business is immune to computer "glitches," network connectivity problems, or technical difficulties. Today, United Airlines grounded all U.S. flights for more than an hour because of an "automation" issue, the same "issue" that grounded their planes a month ago, the New York Stock Exchange ran into "technical difficulties" that unexpectedly halted trading, and the Wall Street Journal had connectivity issues for readers on east coast. If these three large high profile companies can run into problems that shut down their entire operations on the same day, how protected are the applications that run your business?
While no one is completely immune to application problems, you should do what you can to protect yourself. Proper testing—functional, performance, and security—is a necessity, as well as properly monitoring your systems once the applications are deployed. These steps can help protect yourself from a full on catastrophe.
Step 1: Part of proper testing means full functional end-to-end testing on an infrastructure that closely mimics production.
The closer it mimics production, the more likely you will find production style issues. Performance testing with the appropriate mix of mobile and desktop users will help highlight the load limits your infrastructure can handle. If you ignore your mobile users, then your tests will be invalid and open yourself up to potential disaster.
Step 2: Disaster recovery is also an important area to test.
A disaster can occur while an application is fully deployed in production or during the deployment process. A vast majority of companies don’t test for massive failures during the deployment process. They just cross their fingers and hope the deployments happen without incident. Testing to see how your systems react to deployment failures as well as production outages is vital to ensure limited customer impact.
Only after you are confident in your pre-production testing should you release to production. Many companies today like to assume risk by releasing with little to no testing, but you need to understand how much risk your company is willing to accept. Companies don’t necessarily understand how vulnerable they are leaving themselves by limiting their testing. While releasing quickly and often is important, companies need to weigh the risks and they need to employ more automated testing to help alleviate part of the risk.
Step 3: Once in production, real-user monitoring as well as synthetic monitoring should be used to quickly detect current and potential problems to minimize any issues that might arise.
It is important to have a monitoring system that can alert you to anomalies that may cause problems, but are not issues yet. Having the ability to possibly head a problem off at the pass may help prevent a total “grounding of your planes.”
Step 4: Don’t forget about your third party services.
More and more sites and applications heavily rely on third party services. Over 30% and as high as 90% of network traffic of applications come from third party services. These services need to be properly vetted before adding them to an application, tested before deployment, and monitored once in production to help maintain a good customer experience. There is nothing worse for an application than to have a major performance or availability problem caused by a third party service that you have no control over.
I have heard people say, “If you can prevent all issues then what is the point in putting in all the effort?” But think about it, do you buy auto insurance? Do you lock your car? Do you regularly change the oil? Do you check the air pressure in your tires? All of those actions will not prevent all accidents, stop all burglars, and prevent all car problems, but you do what to can to minimize issues from occurring and to help you get back to normal when problems do happen.
We don’t know the reasons United Airlines, the New York Stock Exchange and the Wall Street Journal faced challenges today, but the resulting impact on businesses and consumers around the globe stole the news today. What’s important to remember is that having good policies in place for proper testing and monitoring could help prevent and minimize the impact of these types of problems.