Ads by TechWords

See your link here
Receive the latest technology news and information.
Application/Web Development
Computerworld Daily News (First Look and Wrap-Up)
Computerworld Blogs Newsletter
The Weekly Top 10
Cloud Computing
View all newsletters




Privacy Policy
 

Extreme Programming

December 3, 2001 12:00 PM ET

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).

XP’s 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 other’s 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; there’s 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.

Since then, advocates of XP have cropped up like kudzu and sparked a maelstrom of debate among programmers and project managers who either love or love to hate its ideas.

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 code—is also a core doctrine.



Jump to comments

Software Development

Additional Resources

WHITE PAPER
Approximately 60 percent of data migration projects overrun time or budget, while some fail completely. Download this white paper, "Enhancing Your Chance for Successful Data Migration," to learn the critical steps you need to take to execute a data migration project with minimum cost and risk to your business.
WHITE PAPER
Read the Gartner research note to learn why the TCO of a server-based computing deployment used to deliver all applications to users is around 50% lower than that of an unmanaged desktop deployment.
WHITE PAPER
Economic downturns have a tendency to accelerate emerging technologies, boost the adoption of effective solutions, and punish solutions that are not cost competitive or that are out of synch with industry trends. This IDC White Paper presents the results of an IDC survey of 330 companies in Western Europe, Asia/Pacific and the Americas that measures the receptiveness to Linux and takes into consideration changing views driven by the disruptive economic environment that businesses face today.

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.  

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!  

Advancing the Economics of Networking
For more information download it today!