my dog learned polymorphism
The moose likes Beginning Java and the fly likes Agile Java: Extreme Programming Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Agile Java: Extreme Programming" Watch "Agile Java: Extreme Programming" New topic

Agile Java: Extreme Programming

marc weber

Joined: Aug 31, 2004
Posts: 11343

My understanding is that Test-Driven Development (TDD) is also a fundamental tenet of Extreme Programming (XP).

How does the Agile model differ from the Extreme model? Is one a subset of the other? Or are these perhaps just two terms for the same thing?

"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer
Jeff Langr
Ranch Hand

Joined: May 14, 2003
Posts: 799
Greetings Marc,

"Agile" refers to a body of software development methods with similar ideals and values. See for lots more information. The basic premise is that agile methods prefer:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

Extreme programming (XP) is one of the many agile methods. Others include Scrum, Crystal, Feature-Driven Development, and possibly the Rational Unified Process (RUP). Most of the agile methods don't prescribe a lot of detail when you get down to the nuts and bolts of what developers do daily. They are more geared toward how to manage a project in an agile fashion. XP, however, has some very specific programmer disciplines, or practices.

Test-driven development (TDD) is one such XP practice. But like most of the other XP practices, such as pair programming, you can always get benefit from TDD without doing anything else from XP. I was doing TDD, and nothing else XP, in a dot-com over five years ago with great success. The Agile Java book really doesn't say much at all about XP, but it says a lot about TDD.

Some people have stated that TDD can itself be considered a standalone agile method.

I hope this helps!

[ March 09, 2005: Message edited by: Jeff Langr ]

Books: Pragmatic Unit Testing in Java, Agile Java, Modern C++ Programming with TDD, Essential Java Style, Agile in a Flash. Contributor, Clean Code.
marc weber

Joined: Aug 31, 2004
Posts: 11343

Originally posted by Jeff Langr:
... I hope this helps!

Definitely! Now I'm interested in reading the book (since XP strikes me as a bit too "X" at the programmer level ).

Thanks for the response.
Ilja Preuss

Joined: Jul 11, 2001
Posts: 14112
Originally posted by marc weber:

XP strikes me as a bit too "X" at the programmer level


The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Surasak Leenapongpanit
Ranch Hand

Joined: May 10, 2002
Posts: 341
See this thread.
I agree. Here's the link:
subject: Agile Java: Extreme Programming
It's not a secret anymore!