APM involves profiling and analysis of software applications to identify how they work and how well or otherwise they are performing in terms of successful and timely execution of user or batch transactions.
Initial application profiling involves information capture via network and/or server traces and analysis of these data to identify the discrete transactions occurring within a particular application.
Detailed analysis of transaction execution flows and delivery paths allows any inefficiencies and bottlenecks within software or supporting infrastructures to be identified and mitigated through software redesign and/or tuning and optimisation of server and network hardware, databases, webservers and so on.
Capacity management for applications can be facilitated by APM tools which allow “what if” projections and analyses to be performed to forecast how performance will be impacted as user and transaction volumes vary.