Planning Extreme Programming
The hallmarks of Extreme Programming--constant integration and automated testing, frequent small releases that incorporate continual customer feedback, and a teamwork approach--make it an exceptionally flexible and effective approach to software development. Once considered radical, Extreme Programming (XP) is rapidly becoming recognized as an approach particularly well-suited to small teams facing vague or rapidly changing requirements--that is, the majority of projects in today's fast-paced software development world.
Review By: Jeff Bay
09/11/2002This book explains the process by which an XP project achieves predictable schedules and releases, as well as allocating work on a day-to-day basis. The book uses driving a car as an effective metaphor for software project management, and uses this metaphor in many places to explain the “why” of XP. It also contains very detailed information on how to go about implementing and executing the planning methodology of XP introduced in a related book, Extreme Programming Explained. It then goes on to explain issues not covered in EPE, including, for example, incorporating bug resolution into the planning process and bootstrapping a project into the XP planning process.
This book is a must-read for anybody seriously interested in XP. The book is witty, charming, and chock-full of useful information. It is very accessible. I read the whole book in about five hours over several evenings while beginning to seriously implement XP in my project team, and each time I found the new information both extraordinarily helpful and very easy to utilize.
As a programmer and former full-time test suite and test tools developer, I found many of the practices of XP to be intuitive and easy to implement. The brief discussion of XP planning in other books has left me without a firm grasp on how I was supposed to be doing release planning and workflow allocation. This book steadily improved my project as we were able to create more and more predictable schedules and definable releases. At the same time, it also improved our job satisfaction as visible plans allowed us to accomplish larger tasks and stay focused on a day to day level.
If you are purely a test developer, or QA member, this book might not be terribly useful for you. On the other hand, if you are interested in seeing how very simple concepts can be applied to dramatically decrease the brittleness of project plans and the chaos of normal software development, this book is definitely for you!
There are three books currently in publication that deal directly with XP practices: Extreme Programming Explained, Extreme Programming Installed, and Planning Extreme Programming. Extreme Programming Explained is directed at a person in almost any role who is interested in the ideas of XP. The book currently being reviewed is best suited for a project team member where the methodology is either being seriously considered, or is already implemented.