Extreme Programming in Practice

by Addison-Wesley Professional

$29.99
buy from amazon.com
Average Rating: * * * - -
Sales Rank:1271845 (lower is better)
Price Used:$0.88
Shipping:Free Shipping on most orders over $25*
Availability:
Label:Addison-Wesley Professional
Pages:224
Binding:Paperback
Publication Date:2001-06-05
Published By:Addison-Wesley Professional
ASIN:0201709376
Category:Book

Authors

Editorial Reviews and Product Descriptions

Product Description

Extreme Programming (XP) is a lightweight methodology that enables small teams of developers to achieve breakthrough productivity and software quality, even when faced with rapidly changing or unclear requirements. In this new book, top object-oriented consultants James Newkirk and Robert Martin walk through an entire XP project, chronicling the adoption of XP by a team that has never used it before. Along the way, they show how to overcome the obstacles facing XP adopters, and present realistic XP best practices virtually any development organization can benefit from. The case study in this book is real, driven by the needs of a real customer. The artifacts, code, user stories, and anecdotes are all real, drawn from videotaped meetings throughout the project's development process. The result: an exceptionally true-to-life narrative, complete with mistakes and false starts, and reflecting the ebb and flow of a real project. For organizations considering XP, this may be the most realistic and useful guide ever produced. For project managers, developers, software engineers, XP customers, and upper-level managers.
Amazon.com Review

For any organization or team considering adopting the Extreme Programming (XP) software methodology, Extreme Programming in Practice provides a downright fascinating glimpse of XP in action for a small real-world project. Short and to the point, yet filled with plenty of real details, this book can show you what works and what doesn't when it comes to using one of today's hottest approaches to successful programming.

Like today's reality TV shows, this title walks you through a real software project in real time. After introducing the reader to the basics of the XP software method (using such shibboleths as paired programming, lightweight documentation, continual refactoring, and the like), the book jumps right in with an actual project built with Java servlets and JDBC. First, the authors disclose their software design for retooling a Web site with login and security features. The scope of this project is necessarily really small, but the win is that the authors go into real detail as to how it is designed and implemented. (While most titles on software engineering hedge on the details, this book gives you the inside scoop on actual design decisions and even problems encountered along the way.)

The authors cover the design process where customer "stories" are partitioned off into deliverables (small ones are called "iterations," which are combined into larger "releases"). The authors give you sample project estimation for how long it will take for each step. They provide the details of the code that does the work for each step, along with sample automated tests. (In XP, code is not "accepted" by clients until it can be verified with tests.) The authors also show off how their initial estimates sometimes went wrong. (Most readers will be struck that almost in all cases, initial estimates for programming time are overestimated by the authors.) However, they do share a significant snag in the process of a typical miscommunication with their client about promised functionality, which is sure to resonate with many readers. By the end of the book, they share their final thoughts on what works and what doesn't in XP, along with some advice for "scaling" XP onto larger projects and teams.

Candid, concise, (and a very interesting read), Extreme Programming in Practice gives valuable insight into today's XP. Whether or not you are evaluating XP for your shop or just want to see what all the fuss is about, this text provides an excellent glimpse into the advantages of XP for creating robust software within budget and on time. --Richard Dragan

Topics covered:

  • Quick overview of Extreme Programming (XP)
  • The XP process: planning, iterations, and releases
  • Developing "stories" with stakeholders
  • Case study for a Web application (including logon and security features)
  • Prioritizing stories and features
  • Team velocity defined
  • Iterations and tasks (staffing and planning)
  • Writing tests (including using proxies to simulate database activity)
  • XP and refactoring
  • "Working backwards"
  • Infrastructure versus code that works right now
  • Communication between customers and developers
  • Steering
  • Scaling small projects with XP to larger projects
  • Sample stories, code, tests, and project-planning documents
  • Hints for successful adoption of XP in real projects

Customer Reviews

Easy to read introduction to XP - Reviewed on 2003-10-03
* * *
2 customers found this review helpful, 2 did not.

The book is written as a story describing a small XP project which makes it easy to read from start to end. It gives a good view of how XP can be applied in a certain kind of project and therefore demonstrates some of the ideas of XP.
I see this book as a "Hello, world!" for XP. It gives a simple example to get started, but it is far from an exhaustive description on how to apply XP in real projects.
An ideal book to have in your hand when trying to explain XP - Reviewed on 2003-09-01
* * * * *
1 customer found this review helpful, 1 did not.

I have spoken and corresponded with a lot of people about Extreme Programming (XP). I've encouraged them to read "Extreme Programming Explained - Embrace Change" and the other XP books that followed it. I've shown them some products produced using XP techniques. But somehow it's always been really hard to explain. Now I know what was missing. I needed this book.

It's not a big book, but it powerfully expresses how XP works and, more importantly, what it feels like. The authors kept detailed notes when they first implemented Extreme Programming with a fairly simple web/Java/database project, and they give a blow-by-blow account of it. This is not an idealised case study; they made plenty of mistakes, but they show how the team learned from them. All the Java code for the project is shown as it is refactored. All the user story cards and task/time tracking are shown as the project progresses.

If you have read or heard about XP but want to know what it's really like, this is the book. It's not much of a reference, but its a terrific introduction.

Fine book to start, but reading needs to be complemented - Reviewed on 2003-08-16
* * * *
1 customer found this review helpful.

I have recently finished reading the book and I'm going through it again as I develop my first XP project. I wasn't very familiar with XP before reading it but still I was able to understand the principles of XP complementing the reading with articles from the web.

Although they try to justify their decisions and explain their mistakes, I would like it to have more explanations about why they make some decisions and not others. I have found also that some things in their project are a bit "ideal" and not as "real" as in the projects and organizations I've worked in. For example, their times don't seem to be very realistic as they never spend more time than they planned in their first XP project.

A good over-the-shoulder look at XP - Reviewed on 2002-07-05
* * * *
2 customers found this review helpful, 2 did not.

This is good book if you've already learned the basic theory of eXtreme Programming, and want to see XP in practice from a developer's point of view. You won't learn the theory from this book, but you will watch as pairs of programmers works with their customer to prioritize and estimate stories, and as the pairs proceed through the work, making mistakes as they go, and recovering from them. The focus is on planning, unit testing, and refactoring.

The application they've taken on is simple, but non-trivial. It helps to know Java and be familiar with the JUnit testing framework, and have familiarity with servlets. I picked up a couple of useful testing techniques from their examples.

Not Much Practical Information - Reviewed on 2002-01-17
* *
5 customers found this review helpful, 3 did not.

I bought this book mainly because XP theory is everywhere, but examples of applying it to the development process are pretty scarce. I admit I was also persuaded by the authors' reputations.

The book is very disappointing. It reads like a Socratic dialogue, only Socrates forgot to show up and left it to two of his freshman students to hash things out. Needless to say, they bumble along and in the meantime do not enlighten the reader much. If you waste your time reading this book, you'll probably realize that you're a more disciplined developer than you thought. To some people that might be worth the [PRICE].

For good practical information on XP coding and testing, I highly recommend Rick Hightower's book "Java Tools for Extreme Programming". This is a great guide to using open source tools like Ant and JUnit to do XP development in a Java shop. Might be too practical for Socrates to have written, but Aristotle would have loved it.

Read More Customer Reviews »
Go To Amazon Product Page

* - See Amazon Product Page for shipping and pricing details.


Book Subjects