Planning Extreme Programming 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Frequently bought together
Simplicity is the watchword of the XP software process. This book is virtually devoid of traditional software-engineering jargon and design diagrams, and yet does a good job of laying the foundation of how to perform XP--which is all about working with a customer to deliver features incrementally.
The terminology in the book is commonsensical. (In the terms of XP, each iteration adds certain new features, or stories. It's up to the customer to decide what functionality is more important and will be delivered first. By never letting a working build get out of sight, the XP process virtually ensures that software will be close to what the customer wants.)
Early chapters borrow analogies from everyday experience--like planning a trip or driving a car--to set the stage for XP process planning. The book has plenty of advice for dealing with the stakeholders (customers) of a project. Because of confidentiality agreements, however, we don't get many details from the real world, although the discussion is anchored by a hypothetical project for planning the Web site of the future for travel, with some specifics.
There is plenty of advice for planning projects, based on individual and team "velocity" (a measure of productivity) and the like--practical suggestions for running daily, short status meetings (in which all of the participants stand up, to keep them short). Clearly, there's a culture that surrounds many XP teams, and this text does a good job of conveying some of this to the reader.
At fewer than 150 pages, Planning Extreme Programming is notably concise, and that's probably the whole point. Most shops today work on Internet time, which doesn't wait for extensive project analysis and design documents. In XP, you create working software from the very start. This book is an essential guide to anyone who's working in XP shops or who might be interested in what this innovative, iterative software process can offer. --Richard Dragan
- Introduction to planning
- Risk management in software
- "Driving" as a metaphor for software development
- Roles for software development: business vs. technical people
- Four variables for project planning: cost, quality, time, and scope
- Predicting future programmer productivity, based on past performance
- Project scope and estimation
- The XP process: software releases, iterations, stories, collecting, and writing stories (features)
- Hints for ordering features
- Tips on planning and status meetings
- Using visual graphs to monitor project progress
- Tracking and fixing bugs
- Project red flags
From the Inside Flap
This is a book about planning software projects. We are writing it mostly for project managers--those who have to plan and track the correspondence of the planning with reality. We also are writing it for programmers and customers, who have a vital role to play in planning and developing software. Planning is not about predicting the future. When you make a plan for developing a piece of software, development is not going to go like that. Not ever. Your customers wouldn't even be happy if it did, because by the time the software gets there, the customers don't want what was planned; they want something different.
Like so many, we enjoy Eisenhower's quotation: "In preparing for battle I have always found that plans are useless, but planning is indispensable." That's why this isn't a book about plans; it's about planning. And planning is so valuable and important, so vital, that it deserves to go on a little every day, as long as development lasts.
If you follow the advice in this book, you are going to have a new problem to solve every day--planning--but we won't apologize for that, because without planning, software development inevitably goes off the rails. The scope of this book is deliberately narrow. It covers how to plan and track software development for XP projects. It's based on our experience as consultants and coaches, together with the experience of the growing band of early adopters who are using XP.
As a result this isn't a book about the whole of project management. We don't cover typical project manager jobs such as personnel evaluation, recruiting, and budgeting. We don't address the issues of large projects with hordes of developers, nor do we say anything about planning in the context of other software processes, or of planning other activities. We think there are principles and techniques here that everyone can use, but we have stuck to the parts of the process we know--getting everybody on the team pointed in one direction, discovering when this is no longer true, and restoring harmony.
XP (Extreme Programming) is a system of practices (you can use the m-word if you want to; we'd rather not, thank you) that a community of software developers is evolving to address the problems of quickly delivering quality software, and then evolving it to meet changing business needs.
XP isn't just about planning. It covers all aspects of small team software development--design, testing, implementation, deployment, and maintenance. However, planning is a key piece of the XP puzzle. (For an overview of XP, read Extreme Programming Explained: Embrace Change. While you're at it, buy copies of all of the rest of our books, too.)
XP addresses long projects by breaking them into a sequence of self-contained, one- to three-week mini-projects. During each iteration
Customers pick the features to be added. Programmers add the features so they are completely ready to be deployed. Programmers and customers write and maintain automated tests to demonstrate the presence of these features. Programmers evolve the design of the system to gracefully support all the features in the system.
Without careful planning, the process falls apart.
The team must choose the best possible features to implement. The team must react as positively as possible to the inevitable setbacks. Team members must not overcommit, or they will slow down. The team must not undercommit, or customers won't get value for their money. Team members must figure out clearly where they are and report this accurately, so that everyone can adjust their plans accordingly
The job of the daily planner is to help keep the team on track in all these areas.
We come by our project planning ideas by necessity. As consultants, we are usually introduced to projects when they are mostly dead. The projects typically aren't doing any planning, or they are drowning in too much planning of the wrong sort.
The resulting ideas are the simplest planning ideas we could think of that could possibly work. But above all, remember all the planning techniques in the world, including these, can't save you if you forget that software is built by human beings. In the end keep the human beings focused, happy, and motiviated and they will deliver. Kent Beck, Merlin, Oregon
Martin Fowler, Melrose, Massachusetts martinfowler
I have a cunning plan.
- Publisher : Addison-Wesley Professional; 1st edition (October 16, 2000)
- Language : English
- Paperback : 158 pages
- ISBN-10 : 0201710919
- ISBN-13 : 978-0201710915
- Item Weight : 9.2 ounces
- Dimensions : 9.21 x 7.36 x 0.45 inches
- Best Sellers Rank: #303,427 in Books (See Top 100 in Books)
- Customer Reviews:
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
- How exactly to plan releases? What if frequent releases aren't appropriate and marketing demands to release once a year?
- How exactly to write user stories, and how to handle them? Although the reader may find some sample stories in "Extreme Programming Installed" by Ron Jeffries, Ann Anderson and Chet Hendrickson, the stories in the "Planning Extreme Programming" are used as core elements in the whole planning process, shown as example.
- How exactly to build the iteration plan and the release plan? How to track an iteration?
I would also like to recommend "Extreme Programming Applied: Playing to Win" by Ken Auer, Roy Miller, Ward Cunningham. I think this is the most practical book on XP ever written.
I would also like to recommend the titles about individual XP aspects:
- Design Improvement: "Refactoring: Improving the Design of Existing Code " by Martin Fowler;
- Test-Driven Development: "Test Driven Development: By Example " by Kent Beck;
- Sustainable Pace: "Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency" by Tom DeMarco;
- Pair Programming: "Pair Programming Illuminated" by Laurie Williams and Robert Kessler;
- Whole Team: "Agile Software Development" by Alistair Cockburn;
- Planning Game: "Planning Extreme Programming" by Kent Beck, Martin Fowler;
- Small Releases: "Software Project Survival Guide" by Steve C McConnell.
The content of the book covers all aspects of planning, managing and tracking progress on an XP (Extreme Programming) project and is a worthy companion to Kent Beck's anthemic XP Explained. Hard stuff missed out from the earlier work such as how to estimate how long things will take, how to write user stories and how to organize the details of iterations and releases is explained in a straightforward way. It also introduces a few new key XP concepts, showing that this radical methodology didn't spring fully formed into the mind of Beck, but is still evolving. One such key is "Yesterdays Weather", the idea that you can't go far wrong by using past performance as an initial guess for future results.
If you are at all intrigued by the new "agile" methodologies, read XP Explained and then this one. Then buy a few more copies for your management.
While the XP process sounds great, and I would love to try it, I do not think it is realistic for most projects. For one, it requires the dream client, who is knowledgeable of the problem domain, patient, decisive, documentation-averse, and trusting. A second precondition is a project of small to moderate size and complexity. (The authors speculate on how the process may be extended to teams greater than 10 in size.) The third precondition is that the team should be staffed with the most motivated, creative, team-oriented, and skilled developers. (At least that is what I deduce from what the developers must do.)
With all these preconditions satisfied, then of course a stripped down process will work!! Unfortunately, most of us live in a different world.
That said, I did find the book worth a couple of hours, as it reinforces some concepts, provides a few new ideas, and gives you a complete overview of this latest fad.