Home > Software Quality News > Continuous integration meets application performance management
Software Quality News:
EMAIL THIS

Continuous integration meets application performance management

By Jack Vaughan, Managing Editor
04 Mar 2008 | SearchSoftwareQuality.com

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

Agile development styles centered on continuous integration are leading to new ways of thinking about various parts of the software development life cycle (SDLC). Requirements gathering and project management have been affected. Now, the Agile emphasis on continuous processes is being heard more widely in performance testing and management.

More information on continuous integration
How continuous integration improves software quality

Continuous integration on the rise in .NET

Continuous Integration: Improving Software Quality and Reducing Risk -- Chapter 2, Introducing Continuous Integration

Continuous performance management -- or continuous performance testing -- applies the principles of performance testing to the practice of continuous integration, according to Steven Haines, Java domain expert at Quest Software. Quest and Haines have fashioned a tool kit, now in beta and available to the Quest community, that embodies some of the ideas of continuous performance management.

Performance testing should be integrated into automated continuous integration builds, Haines and others advise. That means having tight test script incorporation within a continuous integration server.

Continuous performance management in Haines' view is closely associated with test-driven development (TDD). Both methodologies, he has indicated, can lead to shorter development cycles, faster triaging and greater confidence in deployments. Haines, author of Pro Java EE 5 Performance Management and Optimization (Apress), has written extensively about TDD, continuous performance management and other matters of application tuning.

Load- and unit-testing secondary builds
Achieving Agile goals requires some juggling. There is a consensus that individual commit builds, if they are to be done often, cannot consume too much time.

"There are a lot of shortcuts one may take to keep the commit build under, say, 10 minutes," Haines said. "But a more extensive secondary build test can be planned for another time interval." Such a test would be expected to find more problems than the simpler tests.

"If we have a commit build that does the functional, smoke testing, then the secondary build is a cool place to bring in performance testing," he said.

In a first phase, teams should consider going through test cases and profiling them in three ways, according to Haines.

  1. Do a memory profile of each test's case.
  2. Do code performance profiling to find the number of lines a piece of code may execute, how much time is spent executing each line, how much time is spend executing each method, and so on.

  3. Do a coverage study to see what percentage of code is executed.

In a second phase, performance load testing should be applied to the secondary build, Haines indicated. This is different than integration testing, he noted.

"The difference here is that the integration test is interested in only a single request at a time," Haines said.

Meanwhile, performance load tests, naturally, show what new problems arise when load is applied. "Load has a funny way of making little problems that you don't really see into big gaping holes," Haines said.

Haines said the developer kit Quest is creating for continuous performance efforts parses through code, finds test cases and configures the company's JProbe tool to capture the memory, code and coverage profiles thus described. The kit will take results and builds a single aggregate report.

Continuous chorus
Quest and Haines are not alone in arguing that performance management has to be considered in the context of continuous processes.

Some of this has to do with the advent of service-oriented architecture (SOA), in which diverse services are gathered to form unique applications.

Test software vendors such as iTKO Inc. have discussed the need for a continuous form of validation of SOA applications, which constantly change. In addition, SOA tester MindReef Inc. discusses a regimen of continuous validation that is part testing and part performance.

Also, writers such as Cody Menard, now general manager for Microsoft Business efforts at ThePlanet.com, have discussed the paramount importance of continuous performance as long ago as 2003.

Jason Barry, performance architect at DeCare Systems in Ireland, has worked on developing new Agile approaches to continuous performance management with Quest's technology. He said health system builder DeCare needs to monitor applications in production and is working with Quest technology to build an optimal professional services model to ensure full life-cycle support between development and operations.

"The idea of continuous performance management links up between our continuous integration environments and performance management. It allows developers to be proactive rather than reactive," Barry said.



Tags: Software testing models and approaches (Context-driven, Factory, Analytic, Quality, IV&V)Software development fundamentalsTest-driven development (TDD)Software performance, load and stress testingVIEW ALL TAGS

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



RELATED CONTENT
Software testing models and approaches (Context-driven, Factory, Analytic, Quality, IV&V)
Put a stop to software espionage by watermarking source code
Testing databases, how online testing communities can ramp up skill sets
Software Testing: New software testing technologies bring new challenges
Software Testing Ezines
Recognizing appropriate scenarios for context testing
Rich Internet applications security testing checklist
Seven steps for a quality change and configuration management program
How to create performance testing workload models
How to apply modeling techniques to support software testing
Transitioning from AJAX to .NET what changes to expect in RIA's

Software development fundamentals
Software expert on Agile's rise, avoiding project management mistakes
Waterfall versus iterative development misconceptions
Agile development growing, but problems remain
Common mistakes in real-time Java programming
Hamish Reid, software engineer, Perforce Software
Agile, IBM tools boost Merge Healthcare's software quality
Extending application lifecycle management to the enterprise
Quiz: Open source software development
Help with development life cycle metrics
How to develop secure applications

Test-driven development (TDD)
Testers debate differences between waterfall, Agile test automation
Accelerating Agile testing with computer assistance
Accelerate your agile software testing
Five tips from the Agile trenches
Developing test design driven software
Parasoft Concerto targets policy-driven development
Leaner test cases speed test planning, design
How to achieve peak performance during integration testing
Agile development growing, but problems remain
The challenges of test-driven development (TDD)

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
black box  (SearchSoftwareQuality.com)
context-driven testing  (SearchSoftwareQuality.com)
load testing  (SearchSoftwareQuality.com)

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