Programming Books C Java PHP Python Learn more Browse Programming Books
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Extreme Programming in Practice Paperback – June 5, 2001


Amazon Price New from Used from
Paperback
"Please retry"
$16.31 $0.65

NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Series: XP
  • Paperback: 224 pages
  • Publisher: Addison-Wesley Professional; 1st edition (June 5, 2001)
  • Language: English
  • ISBN-10: 0201709376
  • ISBN-13: 978-0201709377
  • Product Dimensions: 9.2 x 7.4 x 0.6 inches
  • Shipping Weight: 1.1 pounds
  • Average Customer Review: 3.1 out of 5 stars  See all reviews (18 customer reviews)
  • Amazon Best Sellers Rank: #679,004 in Books (See Top 100 in Books)

Editorial Reviews

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

From the Inside Flap

This book is a case study describing a Web-based software project developed using a development process known as Extreme Programming (XP). The project is real, driven by the needs of a real customer. The artifacts presented in this book are real. The code is real, the user stories are real, and the anecdotes are real. We videotaped all our meetings and development episodes so that we maintained an honest and objective chronicle of the events. We wanted our readers to have as true-to-life an experience as possible. At first we thought we might have to keep the scope of the project artificially small enough to fit into this book. However, it turned out that the size of the first XP release of the project was both useful to our customer and the ideal size for this book. So even the size of the release is real. Before this project, none of us had used XP in its entirety. So this book also chronicles the adoption of XP by a team that is relatively unfamiliar with it. Our goal in writing this book is to help demonstrate how a real XP project works. We have chosen to do this by example, rather than by explanation. The examples are real. They chronicle the thought processes of the team as it struggles with the concepts of XP. You will see us make mistakes and then correct them. You will see us have insights and then find them to be invalid. You will see the ebb and flow of a real development project. This book is written for developers, managers, customers, and anyone else involved in the development of software. We welcome any feedback and can be reached at the following e-mail addresses:

James Newkirk–jnewkirk@thoughtworks Robert C. Martin–rmartin@objectmentor

0201709376P05102001


More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

3.1 out of 5 stars
Share your thoughts with other customers

Most Helpful Customer Reviews

8 of 8 people found the following review helpful By A Customer on August 22, 2001
Format: Paperback Verified Purchase
My biggest disappointment is that the authors did not write automated acceptance tests, which is one of the XP practices that people who are seriously trying to adopt XP have the most questions about. The fact that their development work was sporadic also did not help present the 'normal' usage of XP.
Otherwise it is not a bad book, but I would buy all the other XP books first before buying this one -- particularly "Extreme Programming Installed", "Planning Extreme Programming", and "Extreme Programming Explained".
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
40 of 53 people found the following review helpful By Jake Well on July 22, 2001
Format: Paperback
I've read 100 pages into the book so far, and I would have to say it is not that amazing. The book basically runs through a project that they did using XP and they share their stories and experiences. The project they talk about is very typical to most websites (a way to register, login, get a forgotten password, etc.)
I was very surprised to see that the project was estimated at 25 days. Even some functions like creating one table was estimated to take 4 hours. It seemed that the developers were not very capable individuals, or perhaps they simply expected an incompetent crowd to be reading the book. There is actual proof of my claim too since even taking their 4 hours to make the table, they had still forgetton to create the 'password' attribute within the table. They realized this when they tested their code. Leaving out those architectural details are we?
I also did not agree with the book's statements in not considering architectural details - in fact none were considered at all, even when it came down to iteration planning. I know this is an element of the XP methodology, but some of their reasons for not doing a model indicated that they didn't understand the problem enough. The only valid reason I found for not planning for future change was that the customer may not request the features required by the more robust architecture. That is valid, but let's think about repeat business. Let's assume they come back in a year's time to make those changes and you'll probably be thanking yourself you did make it scalable. It's less time for you and your staff and less you have to charge your client. Everyone is much happier.
Another instance of terrible design is on page 103.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
6 of 7 people found the following review helpful By Sasha Ketko on August 8, 2001
Format: Paperback
I fully agree with points of Ken Egervary's review - and would like to add a few more points (related to technical as well as other issues) in no particular order of importance:
- while it is OK to use a new terminology to describe old concepts, I don't think it is a good idea to make readers believe that these very concepts are new and unique to XP. I refer to "spikes" and "spoofing" - which are concepts as old as programming itself;
- of course diagrams are easier to understand than code unless the there is very little of very simple code. Should we forget about UML? What about leaving clients a bit more documentation than source code and API docs?;
- concept of refactoring seem to be used only in relation to coding - what about refactoring of analysis and design models (not that there are any in the book)? In fact, there seem to be no analysis and design anywhere in the book - although "backing into the code" concept does sound like a poor-man version of analysis to me;
- arguable concepts such as use of return codes versus exceptions are introduced in by-the-by manner without any argumentation. One could strongly argue that using exceptions for error-handling is a better option because: 1) unlike return code, they cannot be ignored and must be handled or at least consciously ignored; 2) generic error handling and logging mechanisms can be easily implemented especially considering that exceptions - unlike return codes - are automatically propagated and therefore can be handled at different levels as desired; Etc.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
5 of 6 people found the following review helpful By Charles Ashbacher HALL OF FAMETOP 500 REVIEWERVINE VOICE on July 21, 2001
Format: Paperback
Extreme Progamming or XP is proving to be a very useful blueprint to follow in the construction of software. In this book, you are led through a project as the authors build an online registration page using the XP principles. Of course they work, and the site functions once they are done. It is true that XP is a solid process for building smaller projects, of which this is one, and that the authors do a good job in explaining how they performed their tasks within the constraints of the XP model. Finally, the authors quite naturally tout the positive aspects of using XP to develop software.
The problem that I have with the book is the point where the authors begin. In chapter 1, they briefly describe how they tried and failed to build the project the first time. In closing the chapter, they state: "We realized we needed to employ a process for making changes to our web site. In hindsight: Duh." I have no problem with this, but note that anything that forces you to plan would be a success after the initial approach. To say that we had no plan and failed and then used the XP plan and succeeded is weak evidence in favor of XP. Given the mounting evidence, few doubt that XP will steer you to success in projects on the smaller end of the scale. The key question is: how does it compare to other processes that you could use? That is the one question that all project managers are really interested in and one that I wish they would have tackled. A book like that would be something to rave about.
That aside, this is a book where you can learn the principles of XP and follow how it is used from the tickle in the head to the robust active page. However, that only makes it good and not great.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Customer Images

Most Recent Customer Reviews