BN.com Gift Guide

Extreme Programming Explained: Embrace Change / Edition 2

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $16.88
Usually ships in 1-2 business days
(Save 62%)
Other sellers (Paperback)
  • All (11) from $16.88   
  • New (8) from $25.50   
  • Used (3) from $16.88   

Overview

"In this completely revised introduction to Extreme Programming (XP), Kent Beck describes how to improve your software development by integrating these concepts into your daily development process. The first edition of Extreme Programming Explained is a classic. It won awards for its then-radical ideas for improving small-team development, such as having developers write automated tests for their own code and having the whole team plan weekly. Much has changed in five years. This completely rewritten second edition expands the scope of XP to teams of any size by suggesting a program of continuous improvement." Whether you have a small team that is already closely aligned with your customers or a large team in a gigantic or multinational organization, you will find in these pages a wealth of ideas to challenge, inspire, and encourage you and your team members to substantially improve your software development.
Read More Show Less

Editorial Reviews

Booknews
Beck, who owns and operates his own software company, wants to encourage readers to reexamine their preconceptions of how software development ought to occur. He does just that in this overview of Extreme Programming XP, a controversial approach to software development which challenges the notion that the cost of changing a piece of software must rise dramatically over the course of time. This book covers the basics of XP, including the integration of testing throughout the whole system, beginning projects with a simple design, and expanding and changing it as you go along. XP asserts that programmers should participate at every phase of a project, rather than specialize, and it encourages face-to-face communication with two programmers at a screen. Annotation c. Book News, Inc., Portland, OR booknews.com
Read More Show Less

Product Details

  • ISBN-13: 9780321278654
  • Publisher: Addison-Wesley
  • Publication date: 11/16/2004
  • Series: XP Series
  • Edition description: REV
  • Edition number: 2
  • Pages: 256
  • Sales rank: 286,232
  • Product dimensions: 7.26 (w) x 9.36 (h) x 0.47 (d)

Meet the Author


Kent Beck owns and operates First Class Software, Inc., where he focuses on his two greatest interests, patterns and Extreme Programming. He has helped pioneer patterns for software development, CRC cards, the HotDraw drawing editor framework, the xUnit unit testing framework, and the rediscovery of test-first programming. He is the author of more than 50 articles on programming and the books The Smalltalk Best Practice Patterns (Prentice-Hall) and Kent Beck's Guide to Better Smalltalk: A Sorted Collection (Cambridge University Press).
Read More Show Less

Read an Excerpt

The goal of Extreme Programming (XP) is outstanding software development. Software can be developed at lower cost, with fewer defects, with higher productivity, and with much higher return on investment. The same teams that are struggling today can achieve these results by careful attention to and refinement of how they work, by pushing ordinary development practices to the extreme.

There are better ways and worse ways to develop software. Good teams are more alike than they are different. No matter how good or bad your team you can always improve. I intend this book as a resource for you as you try to improve.

This book is my personal take on what it is that good software development teams have in common. I’ve taken things I’ve done that have worked well and things I’ve seen done that worked well and distilled them to what I think is their purest, most “extreme” form. What I’m most struck with in this process is the limitations of my own imagination in this effort. Practices that seemed impossibly extreme five years ago, when the first edition of this book was published, are now common. Five years from now the practices in this book will probably seem conservative.

If I only talked about what good teams do I would be missing the point. There are legitimate differences between outstanding teams’ actions based on the context in which they work. Looking below the surface, where their activities become ripples in the river hinting at shapes below, there is an intellectual and intuitive substrate to software development excellence that I have also tried to distill and document.

Critics of the first edition have complained that it tries to force them to program in a certain way. Aside from the absurdity of me being able to control anyone else’s behavior, I’m embarrassed to say that was my intention. Relinquishing the illusion of control of other people’s behavior and acknowledging each individual’s responsibility for his or her own choices, in this edition I have tried to rephrase my message in a positive, inclusive way. I present proven practices you can add to your bag of tricks.

  • No matter the circumstance you can always improve.
  • You can always start improving with yourself.
  • You can always start improving today.
Read More Show Less

Table of Contents

Ch. 1 What is XP? 1
Sect. 1 Exploring XP 9
Ch. 2 Learning to drive 11
Ch. 3 Values, principles, and practices 13
Ch. 4 Values 17
Ch. 5 Principles 23
Ch. 6 Practices 35
Ch. 7 Primary practices 37
Ch. 8 Getting started 55
Ch. 9 Corollary practices 61
Ch. 10 The whole XP team 73
Ch. 11 The theory of constraints 85
Ch. 12 Planning : managing scope 91
Ch. 13 Testing : early, often, and automated 97
Ch. 14 Designing : the value of time 103
Ch. 15 Scaling XP 111
Ch. 16 Interview 119
Sect. 2 Philosophy of XP 123
Ch. 17 Creation story 125
Ch. 18 Taylorism and software 131
Ch. 19 Toyota production system 135
Ch. 20 Applying XP 139
Ch. 21 Purity 145
Ch. 22 Offshore development 149
Ch. 23 The timeless way of programming 153
Ch. 24 Community and XP 157
Ch. 25 Conclusion 159
Read More Show Less

Preface

The goal of Extreme Programming (XP) is outstanding software development. Software can be developed at lower cost, with fewer defects, with higher productivity, and with much higher return on investment. The same teams that are struggling today can achieve these results by careful attention to and refinement of how they work, by pushing ordinary development practices to the extreme.

There are better ways and worse ways to develop software. Good teams are more alike than they are different. No matter how good or bad your team you can always improve. I intend this book as a resource for you as you try to improve.

This book is my personal take on what it is that good software development teams have in common. I’ve taken things I’ve done that have worked well and things I’ve seen done that worked well and distilled them to what I think is their purest, most “extreme” form. What I’m most struck with in this process is the limitations of my own imagination in this effort. Practices that seemed impossibly extreme five years ago, when the first edition of this book was published, are now common. Five years from now the practices in this book will probably seem conservative.

If I only talked about what good teams do I would be missing the point. There are legitimate differences between outstanding teams’ actions based on the context in which they work. Looking below the surface, where their activities become ripples in the river hinting at shapes below, there is an intellectual and intuitive substrate to software development excellence that I have also tried to distill and document.

Critics of the first edition have complained that it tries to force them to program in a certain way. Aside from the absurdity of me being able to control anyone else’s behavior, I’m embarrassed to say that was my intention. Relinquishing the illusion of control of other people’s behavior and acknowledging each individual’s responsibility for his or her own choices, in this edition I have tried to rephrase my message in a positive, inclusive way. I present proven practices you can add to your bag of tricks.

  • No matter the circumstance you can always improve.
  • You can always start improving with yourself.
  • You can always start improving today.
Read More Show Less

Foreword

Extreme Programming (XP) nominates coding as the key activity throughout a software project. This can't possibly work!

Time to reflect for a second about my own development work. I work in a just-in-time software culture with compressed release cycles spiced up with high technical risk. Having to make change your friend is a survival skill. Communication in and across often geographically separated teams is done with code. We read code to understand new or evolving subsystem APIs. The life cycle and behavior of complex objects is defined in test cases, again in code. Problem reports come with test cases demonstrating the problem, once more in code. Finally, we continously improve existing code with refactoring. Obviously our development is code-centric, but we successfully deliver software in time, so this can work after all.

It would be wrong to conclude that all that is needed to deliver software is daredevil programming. Delivering software is hard, and delivering quality software in time is even harder. To make it work requires the disciplined use of additional best practices. This is where Kent starts in his thought-provoking book on XP.

Kent was among the leaders at Tektronics to recognize the potential of man in the loop pair programming in Smalltalk for complex engineering applications. Together with Ward Cunningham, he inspired much of the pattern movement that has had such an impact on my career. XP describes an approach to development that combines practices used by many successful developers that got buried under the massive literature on software methods and process. Like patterns, XP builds on best practices such as unit testing, pair programming, andrefactoring. In XP these practices are combined so that they complement and often control each other. The focus is on the interplay of the different practices, which makes this book an important contribution. There is a single goal to deliver software with the right functionality and hitting dates. While OTI's successful Just In Time Software process is not pure XP, it has many common threads.

I've enjoyed my interaction with Kent and practicing XP episodes on a little thing called Junit. His views and approaches always challenge the way I approach software development. There is no doubt that XP challenges some traditional big M approaches; this book will let you decide whether you want to embrace XP or not.

Erich Gamma

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 2 Customer Reviews
  • Anonymous

    Posted March 29, 2005

    Light reading, too light?

    As an experienced developer, I was looking for a description of the basics of XP, and I found some of what I was looking for. But this text has a number of serious drawbacks: 1) There is too little information and too much informal chatter. I assume this is supposed to make the book more accessible, but it just takes longer to read. 2) There are lectures on the 'morality' of the sofware development process, as if this is the only industry in need of such self investigation, or that somehow right thinking leads to the XP process. Fooey. 3) There are sections on philosophical or psychological topics used to support XP that are less than compelling, and may reflect Mr Beck's personal discoveries. They may not be yours. So it's a quick read with information at a basic level. And who knows, you may find the digressions stimulating.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted January 16, 2005

    An expanded vision of XP

    If the first edition of this book was a warning shot across the bow of heavyweight methodologies, then this new edition is a call to arms for any team that wants to develop better software faster, and have fun doing it. XP is now being used by teams and in contexts unthinkable when the first edition of this book was published. This edition is a completely new version of the book. For example, there are new chapters on Taylorism, lean manufacturing, and the theory of constraints. There are many new ideas and XP is now explained more in terms of its values and principles than through strict adherence to twelve specific practices. In this new edition, Kent Beck expands on the vision of the first and shows us how XP--through the application of its values, principles and practices¿has become more than just a lightweight method for small to medium teams. XP represents an evolving way of thinking about software development. I can think of no better person than Kent Beck to show the way.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 2 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)