Extreme Programming
Computerworld - Oftentimes, the little things can make the biggest difference. Consider some of the tenets of a new programming approach: keep the code simple, review it frequently, test early and often, and work a 40-hour week.
Programmer Kent Beck developed extreme programming (XP) while serving as project leader on Chrysler Comprehensive Compensation (C3), a long-term project to rewrite Chrysler Corp.'s payroll application. Beck then spelled out the development methodology in a book titled Extreme Programming Explained: Embrace Change (Addison-Wesley, 1999).
![]()
![]()
XPs 12 Core Practices
1
Customers define application features with user stories.
2
XP teams put small code releases into production early.
3
XP teams use a common system of names and descriptions.
4
Teams emphasize simply-written, object-oriented code that meets requirements.
5
Designers write automated unit tests upfront and run them throughout the project.
6
XP teams frequently revise and edit the overall code design, a process called refactoring.
7
Programmers work side by side in pairs, continually seeing and discussing each others code.
8
All programmers have collective ownership of the code and the ability to change it.
9
XP teams integrate code and release it to a repository every few hours and in no case hold on to it longer than a day.
10
Programmers work only 40 hours per week; theres no overtime.
11
A customer representative remains on-site throughout the development project.
12
Programmers must follow a common coding standard so all the code in the system looks as if it was written by a single individual.
![]()
According to Beck, XP is a lightweight methodology, meaning that it dispenses with much of the usual application development process, such as lengthy requirements definition and extensive documentation, and that it emphasizes keeping development teams small and the code simple.
Instead of creating large functional-requirements documents, an XP project begins by having the end users of the software create user stories describing what the new applications need to do. Functional testing of requirements is done before any coding begins, and automated testing of the code is done throughout the project. "Refactoring"the frequent streamlining of design and improving of codeis also a core doctrine.
Software Development
Additional Resources



Learn the important issues you must consider before starting your next mobility initiative. Get your mobility white paper from IDC now, compliments of Sybase.
White Papers & Webcasts
Network Operating System Evolution
Computerworld and Juniper invite you to download this white paper!
Three IT Strategies to Cut Cost Intelligently
Register for this Webcast! Provided by BMC Software.
How Operating Systems Create Network Efficiency
Computerworld and Juniper invite you to download the full report.
Key Strategies for Managing Data Growth
What are you storage challenges?
Forrester Consulting - Optimizing Users and Applications in a Mobile World
Learn how to successfully deploy a WAN optimization solution that is specifically tuned for a mobile environment!
Extending Client Refresh - 11 Steps to Maximize Savings
Register Now!
Lower the Cost and Complexity of a Mobile Workforce through Automation
Download This Resource Now!
Advancing the Economics of Networking
For more information download it today!
Managing Mobility: Improve Data Security, Compliance and Manageability
Download This Resource Now!
