Always Learning

Extreme Programming Explained: Embrace Change
Kent Beck

ISBN-10: 0201616416
ISBN-13:  9780201616415

Publisher:  Addison-Wesley Professional
Copyright:  2000
Format:  Paper; 224 pp
Published:  10/05/1999
Status: Out of Print


We're sorry, this product is no longer available.
Please contact your Pearson rep if you are using this product and need instructor resources.


Print this content

In this section:


Description

The new concept of Extreme Programming (XP) is gaining more and more acceptance, partially because it is controversial, but primarily because it is particularly well-suited to help the small software development team succeed. This book serves as the introduction to XP that the market will need. XP is controversial, many software development sacred cows don't make the cut in XP; it forces practitioners to take a fresh look at how software is developed. The author recognizes that this "lightweight" methodology is not for everyone. However, anyone interested in discovering what this new concept can offer them will want to start with this book.


Features

  • XP is a lightning rod for discussion in the software development community; it is rapidly gaining acceptance and momentum.
  • Kent Beck is one of the most respected names in software development and the father of XP.
  • XP was conceived and developed to address the specific needs of software development conducted by small teams in the face of vague and changing requirements.
  • XP is financially-focused; it recognizes that software projects have to work to achieve reductions in cost and exploit those savings.
  • The book was recipient of Software Development magazine's JOLT Product Excellence Award.


Table of Contents



Foreword by Erich Gamma.


Preface.

I. THE PROBLEM.

1. Risk: The Basic Problem.

Our Mission.

2. A Development Episode.

3. Economics of Software Development.

Options.

Example.

4. Four Variables.

Interactions Between the Variables.

Focus on Scope.

5. Cost of Change.

6. Learning to Drive.

7. Four Values.

Communication.

Simplicity.

Feedback.

Courage.

The Values in Practice.

8. Basic Principles.

9. Back to Basics.

Coding.

Testing.

Listening.

Designing.

Conclusion.

II. THE SOLUTION.

10. Quick Overview.

The Planning Game.

Small Releases.

Metaphor.

Simple Design.

Tesing.

Refactoring.

Pair Programming.

Collective Ownership.

Continuous Integration.

40-Hour Week.

On-Site Customer.

Coding Standards.

11. How Could This Work?

The Planning Game.

Short Releases.

Metaphor.

Simple Design.

Testing.

Refactoring.

Pair Programming.

Collective Integration.

Continuous Integration.

40-Hour Week.

On-Site Customer. @@AHEADS = Coding Standards.

Conclusion.

12. Management Strategy.

Metrics.

Coaching.

Tracking.

Intervention.

13. Facilities Strategy.

14. Splitting Business and Technical Responsibility.

Business.

Development.

What to Do?

Choice of Technology.

What If It Is Hard?

15. Planning Strategy.

The Planning Game.

Planning in a Week.

16. Development Strategy.

Continuous Integration.

Collective Ownership.

Pair Programming.

17. Design Strategy.

The Simplest Thing that Could Possibly Work.

How Does Designing Through Refactoring Work?

What Is Simplest?

How Could This Work?

Role of Pictures in Design.

System Architecture.

18. Testing Strategy.

Who Writes Tests?

Other Tests.

19. Adopting XP.

20. Retrofitting.

Testing.

Design.

Planning.

Management.

Development.

In Trouble?

21. Lifecycle of an Ideal XP Project.

Exploration.

Planning.

Iterations to First Release.

Productionizing.

Maintenance.

Death.

22. Roles for People.

Programmer.

Customer.

Tester.

Tracker.

Coach.

Consultant.

Big Boss.

23. 20-80 Rule.

24. What Makes XP Hard.

25. When to Try XP.

26. XP at Work.

Fixed Price.

Outsourcing.

Insourcing.

Time and Materials.

Completion Bonus.

Early Termination.

Frameworks.

Shrinkwrap Products.

27. Conclusion.

Expectation.

Annotated Bibliography.

Glossary.

Index.

0201616416T04062001



Back to top

Print this content

In this section:


Author Bios

Kent Beck consistently challenges software engineering dogma, promoting ideas like patterns, test-driven development, and Extreme Programming. Currently affiliated with Three Rivers Institute and Agitar Software, he is the author of many Addison-Wesley titles.




Backcover Copy

Software development projects can be fun, productive, and even daring. Yet they can consistently deliver value to a business and remain under control.

Extreme Programming (XP) was conceived and developed to address the specific needs of software development conducted by small teams in the face of vague and changing requirements. This new lightweight methodology challenges many conventional tenets, including the long-held assumption that the cost of changing a piece of software necessarily rises dramatically over the course of time. XP recognizes that projects have to work to achieve this reduction in cost and exploit the savings once they have been earned.

Fundamentals of XP include:

  • Distinguishing between the decisions to be made by business interests and those to be made by project stakeholders.
  • Writing unit tests before programming and keeping all of the tests running at all times.
  • Integrating and testing the whole system--several times a day.
  • Producing all software in pairs, two programmers at one screen.
  • Starting projects with a simple design that constantly evolves to add needed flexibility and remove unneeded complexity.
  • Putting a minimal system into production quickly and growing it in whatever directions prove most valuable.

Why is XP so controversial? Some sacred cows don't make the cut in XP:

  • Don't force team members to specialize and become analysts, architects, programmers, testers, and integrators--every XP programmer participates in all of these critical activities every day.
  • Don't conduct complete up-front analysis and design--an XP project starts with a quick analysis of the entire system, and XP programmers continue to make analysis and design decisions throughout development.
  • Develop infrastructure and frameworks as you develop your application, not up-front--delivering business value is the heartbeat that drives XP projects.
  • Don't write and maintain implementation documentation--communication in XP projects occurs face-to-face, or through efficient tests and carefully written code.

You may love XP, or you may hate it, but Extreme Programming Explained will force you to take a fresh look at how you develop software.



0201616416B04062001

Back to top

Log in to the Instructor Resource Center

Login name: 

  Password: 

Forgot login/password?  |  Need to redeem an access code?

        

Instructor Resource Center File Download

This work is protected by local and international copyright laws and is provided solely for the use of instructors in teaching their courses and assessing student learning. Dissemination or sale of any part of this work (including on the World Wide Web) will destroy the integrity of the work and is not permitted. The work and materials from this site should never be made available to students except by instructors using the accompanying text in their classes. All recipients of this work are expected to abide by these restrictions and to honor the intended pedagogical purposes and the needs of other instructors who rely on these materials.

Cancel     I accept, proceed with download

Print this content

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.

Back to top