No matter what industry you’re in, you can’t afford to stand still. Expanding into new market segments, attracting new clients, and meeting the changing expectations of your existing clients all require your company to evolve, and mission critical business applications need to change along with you. This evolution usually results in version updates that change application behavior and allow for a greater range of customizations. You might even need to integrate new apps such as CRM or ERP into your existing application suite.
Every upgrade has the potential to create problems and disrupt your work, and good business practices are only part of the solution. Putting regularly scheduled updates through a thorough regression and scalability test process is essential but not sufficient, and bugs that are found after release endanger the entire company. When you also have to account for software vendor patches and upgrades and the possibility of conflicting customizations and configurations, the risk to your company is very real.
Managing customizations and updates becomes even more difficult when there are multiple development teams involved in different phases of the process. When you consider the full complexity of the problem, it’s no surprise that end users learn to dread updates and the uncertainty that comes with them.
Application Performance Management (APM) is a critical tool to minimize the risks associated with application upgrades – it can even accelerate the timeframe for each upgrade, lowering costs and improving end user experience.
Understanding End User Experience
The first step is to help key decision makers and application architects understand the end users’ actual application usage at the screen/view level and the business process level. There is often a divide between how developers imagine their software being used, and what users actually do with the applications in front of them.
Monitoring tools document usage, such as click flows and business processes, to determine what features are being used and prioritize future changes. Keeping track of adoption rates also gives developers a way to document what changes have proven themselves in the field, and what has been rejected by end users as impractical.
Next, APM measures application performance, behavior, and end user experience and automatically sends reports to team leaders. Users are often resistant to any changes to applications they use on a daily basis and will have extremely high standards for new features. Anything that does not work as intended may be rejected as end users revert to older features and workarounds that they are more comfortable with, even if those methods are less efficient.
The APM tool helps by accurately reporting clear statistics on availability, crashes, errors, and other performance issues before and after an upgrade. Hard evidence of an application upgrade’s impact on productivity cuts through conflicting perceptions that can distract the IT and business communities from the objective task of giving users the best possible applications to work with.
The final step is to incorporate the APM tool into your pre-release testing procedures, leveraging the information it gives you to correct performance issues before end users even see it. Engineers can use the APM tool to perform regression analysis and compare the usage and performance profile of key business processes, clicks, and transaction across several releases. Development and testing teams use this information to identify issues, and managers can prioritize problems that must be resolved before the upgrade is released into production. Most importantly, if an upgrade would seriously compromise business processes, the release date can be delayed until the issue is resolved.
There is always some risk involved in making changes to your most important applications, but application performance management takes the guesswork out of the testing and development process and gives your development team the information they need to deliver high quality upgrades and help your company maintain its competitive edge.
What's your experience? Use the comments to tell us about the role of APM in managing changes in your project(s)!