Want your business running 24/7? Probably the answer will be yes. So in terms of quality assurance you’ve been doing everything that depends on you: proper QA at development phase, acceptance testing and finally monitoring. Now you’ve got full circle QA, each process works on 100% and everything is seems to be ok… or not?
Let’s figure it out, what are your monitoring and what are your expectations? Usually you apply hardware monitoring or something equivalent to get sure that your server wouldn’t run out of free disk space or memory. But what can you expect from such approach? Probably that your product, as well as your business, is running. Will it be informative? Certainly not. The only information that could be gathered depending on hardware monitoring is hardware status, not your application status, so the full circle QA looks more like a Pac-man. Yet to avoid this, the best practices of QA outsourcing would tell you to look at the entire pyramid:
In terms of business it might seem ok to monitor only the top of application pyramid – business level. It could be implemented via slightly modified automated tests from development phase or other special tools that can interact at application level. With such monitoring approach you can be sure that the most critical part of your business is well functioning. But this will be never enough in fact. This is the only way to make sure that everything is good for now, but to prevent problems you should go deeper.
The main reason for that is feedback. The quicker is the feedback, the quicker would be reaction in case of emergency. Deeper in this case means faster, but sometimes less relevant. At business level if something goes wrong – it’s absolutely wrong. At application level if something goes wrong – it’s probably wrong, or will go wrong in near future.
If something goes wrong at hardware level it could be either absolutely wrong or not important, with “would go wrong somewhere in the future” between them. So if you want to be sure that your business is up and running – consider extending monitoring from one level of application pyramid to at least two of them, to have faster feedback along with high relevance of result.
The article is prepared by Yan Gabis