Extreme programming goes corporate

As corporations struggle to complete application development projects on time, within budget and without lots of buggy code, IT...

As corporations struggle to complete application development projects on time, within budget and without lots of buggy code, IT managers are taking a closer look at new development methods, such as extreme programming.

But while interest is growing within the ranks, attendees at the Object-Oriented Programming, Systems, Languages and Applications 2001 conference in Florida said that most companies are taking a piecemeal approach to using these developer-driven techniques, instead of implementing them entirely.

Programmer Kent Beck developed the methodology five years ago while serving as the project leader on Chrysler Comprehensive Compensation (C3), a long-term project to rewrite Chrysler's payroll application. Extreme programming calls for putting the customer on-site to work with development teams, sharing code techniques, pairing developers, performing automated unit testing and editing code frequently to keep it simple.

The Stuttgart-based DaimlerChrysler - which had £100bn plus annual sales last year - still uses extreme programming within several application development groups in Germany and the US

But Christian Wege, the company's portal and Web application architect said that DaimlerChrysler's emphasis is on only a few extreme programming concepts, such as testing units frequently and using small development teams.

Corporations are increasingly turning to new techniques to make the most of smaller development teams and to contend with more complex, distributed applications. "For new types of applications, like Web services, the demand for well-structured code increases, and it's not possible to cut corners on design," said Chris Dial, an analyst at Forrester Research.

New York-based entertainment channel Noggin LLC adhered to extreme programming development techniques when it recently launched an interactive Web site that ties into the taping of its shows.

"We kept breaking [the project] down into many smaller projects," said Kenny Miller, vice-president of programming and production at Noggin. "My fear was that the project would collapse under its own weight. [Extreme programming] allowed us to make incremental progress."

But IT managers and developers are less certain of the degree to which they will follow each tenet of the various new development principles, like extreme programming and agile modelling. Most said they were introducing select parts of these methods, but others were taking on the whole methodology.

Capital One Financial Corporation, for example, launched an extreme programming project in the spring to develop call centre applications.

Steve Metsker, software development manager, said the call centre application that the group developed using extreme programming techniques was a success. But, he added, a new project to develop a customer management application at the company would focus less on specific extreme programming techniques.

Capital One is instead adopting more general agile modelling methods, such as delivering working software quickly, using simple code, obtaining rapid feedback and turning in code frequently in small units.

"There are some aspects of [extreme programming] that are extreme, and some wonder whether something extreme is right for their company," said Metsker.

Extreme programming is not considered right for every organisation.

Motorola, for example, used parts of the technique in some of its development organization, but found that it was not useful for global development projects. Ron Crocker, a senior technical architect for the company, said: "[Extreme programming] values small teams, and that's not always possible."

"The problem with [extreme programming] is the name," said one independent development consultant. "After a lot of managers hear the name, it's downhill from there, and they get turned off."

Read more on Software development tools