by Larry O'Brien, author. Intel Corp.
Agile processes, exemplified by eXtreme Programming (XP), have captured the imagination of the software development world in the past few years. These processes emphasize small teams collaborating intensely, very short development cycles driven by user-prioritized "user stories" (essential use cases), and an approach to coding that includes writing tests first, doing "the simplest thing that could possibly work," and refactoring. Part of the popularity of agile processes is just the predictable pendulum swing away from more formal processes such as the Rational Unified Process, but agile processes provide real benefits for software teams developing Web services.
Performance Increases
Some developers and managers fear that non-functional requirements such as performance fall by the wayside with agile processes, but experience has shown that agile processes actually can lead to significant performance increases. The trick is simply to ensure that performance, or scalability, or other non-functional requirements are included in the user stories (essential use cases), which are the agile replacement for formal requirements documents. Then, just as with any other requirement in an agile process, add tests to the test suite and never check in code until all tests in the test suite run perfectly. The one area where this can be problematic is scale testing, since your development systems aren't going to have the same capacity as your deployment servers and redlining even a simulated deployment is not a casual project; scale testing is an area where the agile assumption that testing is cheap does not hold and the traditional project management disciplines of risk analysis and mitigation have to be followed.
For most performance issues, though, automated tests can be created easily. The JUnit testing framework, originally developed by Erich Gamma and Kent Beck for Java, has been ported to .NET by Philip Craig.
![]()
![]() | The 64-bit tipping point from Intel Corp. For more than a decade, 64-bit architectures have ... |
![]() | Getting the bubbles out of code: designing for the Itanium 2 processor by Andrew Binstock, principal analyst, Pacific Data Works LLC. Intel C... |
![]() | Intel C++ Compiler 8.1 for Windows free evaluation software This product provides tools for Windows software developers to creat... |
If you're interested in this topic, these articles may be helpful:
![]() | Chronicle of malware detected during the first half of 2005 from Panda Software There were no significant epidemics during th... |
![]() | Developing your site for performance: principles and techniques of cost-effective Web site acceleration, part 1 by Thomas A. Powell, president, PINT Inc., and Joe Lima, director of... |
![]() | Software piracy by Vincent Alder, Fingoo Ltd. Basic software distribution When we ... |
![]() | A high-performance architecture for distributed object computing by Douglas C. Schmidt, professor, Vanderbilt University Distributed... |
![]() | Discovering mobilized software: supporting the Mobilized Software Initiative from Intel Corp. What is the problem? Computer users are increasin... |
![]()
Related Jobs:
![]() | Project Lead #2796 - IL - Chicago - aQuantive, Inc. Project Lead Job ID: 2796 Business Unit: AA | RF Location: US-... |
![]() | Java Architect #1018 - OH - Westerville - Sogeti USA LLC Java Architect Req. ID: 1018 # Positions: 1 Location: OH-Weste... |
![]() | Software Developer #3687 - CA - Santa Clara - Webex, Inc. Position Overview: Strong understanding of XML Applications and XDQ... |
![]() | TDW/EDW Principal Business Intelligence Analyst #002KV - TX - Dallas - Sabre Inc. TDW/EDW Principal Business Intelligence Analyst 002KV Jo... |
![]() | Software Engineer #535783 - CA - Foster City - Visa Software Engineer Department: CAS,Treasury, Member Information ... |
![]() | Project Lead #2645 - IL - Chicago - aQuantive, Inc. Project Lead Job ID: 2645 Business Unit: AA | RF Location: US-... |
![]() | Lead Software Engineer - .net Migration Team - CA - Pleasanton - E-LOAN E-LOAN is headquartered in Pleasanton, CA. As we continue our expansio... |
![]() | Senior .Net developer - CA - Beverly Hills - MySpace Social Networking is one of the hottest sectors on the web in recent y... |
![]() | Manager, Database Administration #GS 4029 SD - NC - Charlotte - SunGard Reference No.: GS 4029 SD Opening Date: May 15, 2007 Job Title: Ma... |
![]() | Sr. PC Web Developer #61536 - FL - Tallahassee - Affiliated Computer Services, Inc. Description A senior-level professional, the Systems Development S... |


