The basic ingredients for a modern business application are a web front-end, several API's on the application & middleware layer, agile development and a multitude of end-user devices with different OS versions. Despite these levels of complexity, the business keeps pushing for a shorter time-to-market for new apps.
Even with an agile development process that runs like clockwork, this may be a challenge and the development team may consider skipping some of the non-functional, more QA type of testing or decrease the amount of test runs and the size of the test set. Assuming your next app will be as successful as you hope: how do you prevent an app performance gap after release?
When the app is put into production, it will be all-hands-on-deck if it turns out to be a success, especially when the load that comes with that success is not be handled properly. Turnaround times on fixing troublesome code becomes even more important and having an Application Performance Management (APM) solution that captures all transactions is practically mandatory. However, having such a big data approach is not really helpful if the APM solution isn’t capable of presenting only the things that are relevant to solving the app performance gap.
Where to start
One of the roles within an agile team is the lead developer who is responsible for merging the different modules as delivered by the rest of the developers. Once this merging is finished, he or she then reaches out to the test team for some functional, and non-functional and pre-production type of tests. Having the right APM solution in place helps the lead developer and testers to quickly analyze the outcome of these tests. Best practices have shown that this analysis start with a high level overview of the test results, for example:
- a dependency map of the application,
- the overall test results by transactions,
- and the different types server response times and delays.
What is causing the app performance gap?
When the underperforming transaction is identified, we can further drill down. We get insight into the number of times the transaction type is executed during the given reporting period, as well as the biggest contributor to the delays experienced by the users.
Let’s assume the server delays are indicating that the biggest contributor is the actual application code, time for an even further dive into the code details. Doing so results in an overview of the processing time and the methods that are executed for the given reporting period. The lead architect then shares the results with the development lead so it can be added to the backlog for further evaluation, prioritizing and code analysis.
Benefits of early app performance management
Making Application Performance Management an integrated part of your application development cycle can results in significant improvements in release speed and release quality. Applications can easier be scaled to keep up with demand and usage. New releases can be brought into production faster and with higher quality. DevOps teams can use APM to detect problems earlier, release them and prioritize them in the sprint back-log.
Learn more on preventing an app performance gap
– Contact us to discuss how we can help you, or arrange for a test of these capabilities in your own environment.
– Or read our best practice ‘How Application Performance Management helps the lead developer’. You will receive if you leave your name and e-mail address here below.