Home > Software Quality All-in-One Guides > Optimizing Performance in the Enterprise > Application performance management & monitoring > Application performance management today, part 1: Problems and solutions
All-in-One Guides: Optimizing Performance in the Enterprise:
EMAIL THIS
 START   PERFORMANCE MGMT. & MONITORING   SOA PERFORMANCE   JAVA PERFORMANCE   JAVA PERFORMANCE TIPS   TESTING   
Application performance management & monitoring

<< PREVIOUS | NEXT >>: Application performance management today, part 2:...

Application performance management today, part 1: Problems and solutions

By Jack Vaughan, Managing Editor
11 Feb 2008 | SearchSoftwareQuality.com

Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google

Application performance management is everywhere at once. No other discipline so fully spans the gamut of the software life cycle. As such, it is often the meeting place for teams comprising development, QA and operations personnel.

The big recent trend is to focus much more on the end-user experience.
Bernd Harzog
CEO, APM Experts

Does this sound like a recipe for finger pointing? Of course, performance has been something of a blame game over the years. "It's a network problem!" "It worked on my machine!" "It's the database calls!" These old sayings still are heard.

But increasing use of automated testing, more event logging and monitoring, and better reporting have given enterprise teams something objective with which to work when it comes to slogging through performance problems. Teams less frequently "throw hardware at the problem," and more often, if they do, it is because that is a valid solution.

As distributed heterogeneous systems have flourished, the causes of poor performance have become more complicated. As well, they have become more difficult to diagnose and fix. In turn, tools for test and performance management have become more varied.

Solving performance problems has not gotten any easier as distributed Web systems, at least compared to their mainframe forbearers, are marked by many more "moving parts." The advent of the Web, which requires customers to take on the input role once assigned to "key operators" has caused even further disruption.

Performance, test tools available
Test tools that play a role in achieving optimal performance range from classic developer-oriented tools that simply ensure that software works -- unit testers, functional testers and regressions testers -- to load, Web traffic and stress testers that simulate traffic before, after and during the tense "smoke test" that decides if an application is going to be ready to go into production. In recent years, the tool chest has come to include software that traces a transaction from user click to database update -- and back -- and tools that break down each task kicked off by a user interaction.

Article series: Application performance today

Part 1: Problems and solutions

Part 2: Role of Java developer groups

Part 3: SOA performance management requires new strategy

Part 4: The challenges of Ajax performance testing

Probes and profilers are used in the developer group to identify bottlenecks created by overused objects, incorrectly applied methods or extravagant database calls. When problems are found as applications are tested for production, developers work with system administrators to identify areas of their code that may be causing problems.

Monitoring application performance
In many cases, both before and after applications go into production, software agents are added to monitor activity -- tracking how system elements respond when the full system is exercised. Analysis and event correlation become key, and the software suites that report such activity can in themselves become complex -- and expensive.

System and system use patterns are always changing, so on occasion monitoring agents disclose emerging performance bottlenecks that sometimes require developers take another look at their original code practices. Several tools today attempt to roll up problem reports in such a way that issues can be assigned back more efficiently to the development team, if their work is the contributor to the bottleneck.

The list of vendors offering general or specialized application performance management software is extensive. It includes BMC Software Inc., CA, Compuware Corp., Hewlett-Packard, IBM Corp., Sun Microsystems Inc., AVIcode Inc., Borland, ClearApp, Cordiant Inc., dynaTrace Software, Empirix, and Quest Software Inc. In addition, open-source tools such as PustToTest TestMaker and GlassBox are now found in the application performance management world.

Some of the larger companies buttressed their application management portfolios in recent years via notable acquisitions: HP with its purchase of Mercury Interactive; CA with its buy of Wily Technology; or Borland with its purchase of Segue Software. The consolidating trend saw a reversal recently when security and storage giant Symantec Corp. spun off the application performance management software concern it acquired along with backup specialist Veritas.

The spin-off reformed Precise Software, based largely on the Java management software that Precise, which had become part of Veritas, created.

The spin-off of Precise is seen in some circles as a statement that the application development group's role in application performance remains crucial, perhaps even greater than the role of data center IT staff, the usual target for Symantec's backup and storage offerings.

Developer, architect performance areas
The people most versed in the application remain the developers, but they must work across organizational disciplines to measure performance. They are part of a larger group, but an important part.

This is in part due to the complexity of new, composite applications. "Today you can't tell the IT staff whom to go to when there is a production performance problem," said Jeff Cobb, senior vice president of product strategy for the Wily Division of CA. "There is more dependence on the developer who understands how things are supposed to fit together. But the developer doesn't work for IT."

Cobb indicated creating reports that quickly pinpoint developer performance areas of interest is a driving force behind CA's application performance management tool strategy.

Yet developers and architects have much to learn from production monitors placed on their creations. The places are many where things can go wrong in distributed applications centered on Java servers (perhaps including Web services or composite applications).

"It's like death by a thousand cuts," said Bernd Greifeneder, CEO of application performance diagnostics company dynaTrace. "Software architects very often don't know the mismatch between what they designed and how it behaves."

End-user experience as a performance indicator
There is a sea shift in application performance management today, indicated Bernd Harzog, CEO of the APM Experts consultancy. Mainframe-centric tools evolved into Java- and .NET-centric management tools, but the user experience is quickly becoming the true arbiter of performance.

"Most of what we call application performance management has been around for a long time. The tools look at how applications use resources, and they see misuse of a resource as an indicator of a problem," Harzog said.

He continued: "That was how application performance management was done on the mainframe. That's the way Java probes started. They answered questions like 'Is it out of threads?' or 'Is it using too much memory?' But the big recent trend is to focus much more on the end-user experience."

Since the focus on end-user experience is fairly new, Harzog said, every avenue of application performance management needs to make progress on the end-user experience front. The need may become more marked, he added, as virtualization assumes a greater role in distributed system and CPU clocks become harder to use as a gauge of performance.

To help to describe performance practices today, SearchSoftwareQuality.com has begun to engage a number of practitioners, experts and vendors in a dialogue on application performance management. Topics we plan to focus on in an ongoing series on application performance management include SOA performance, Ajax and rich Internet application (RIA) performance, .NET performance, and testing performance. The kick-off of the series is a look at Java server issues, highlighting how Java server developers work these days within the organization to create better applications.



Tags: Performance monitoringSoftware quality managementApplication performance management & monitoringVIEW ALL TAGS

Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


<< PREVIOUS | NEXT >>: Application performance management today, part 2:...
VIEW ALL IN THIS CATEGORY


RELATED CONTENT
Performance monitoring
CA's APM solution helps JN Data address performance issues
10 steps to acing Web app security assessments
TD Ameritrade gets proactive about application performance problems
Spherion cuts costs, boosts application performance with Foglight
CareGroup solves application performance issues with APM tool
Don't let bad website performance ruin e-commerce sales
Java application performance tips and tricks
Application performance looms large for today's businesses
APM moves up in the development life cycle
Java performance and data-driven Web applications

Software quality management
VisibleThread aims to boost IT documentation quality, improve processes
Winning responses to "Why is QA always the bottleneck?"
Using virtual lab management tools to stop developer, QA conflicts
VMLogix LabManager adds support for vSphere 4, Hyper-V R2
Surgient 7's self-provisioning promises software testers quick IT resource access
Transitioning from AJAX to .NET what changes to expect in RIA's
The QA team's role in application performance evaluation and management
Adaptation in project management through agile
Budget-friendly Web app performance testing, monitoring tips
New requirements definition tools focus on chronic flaws

Application performance management & monitoring
Application performance looms large for today's businesses
APM moves up in the development life cycle
How to be proactive about performance monitoring
SOA application performance monitoring explained
How to select a performance monitoring tool
Java performance best practices evolving
Case study: Monitoring JVM-based applications in production
Application performance management today, part 2: Role of Java developer groups

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Software Development Methods - Extreme Programming, Agile Programming, Scrum
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts