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