Skip to main content

Extreme Software Engineering: A Hands-On Approach

March 3, 2004

{cs.r.title}

Book Excerpts


Book coauthored




Extreme Software Engineering: A Hands-On Approach can be used by professionals looking to learn eXtreme Programming (XP) or by students in a software engineering class. This book explains the practices and the methodology of XP and provides a sequence of tutorials for experimenting with some of the core practices. We present two of those tutorials as downloads.

The first download is Chapter 10, "Test First: Learning a New Way of Life." This tutorial uses Conway's Game of Life to illustrate the process of test-first development in an extended but simple example. Usually, when you start to write Life, you begin by thinking of the GUI -- you need to see whether a cell is alive or dead, and you click on a cell to change its state. With test-first development, the GUI remains thin and is added later.

The second download is Chapter 14, "Customer-Written Tests: Automating the Acceptance Process". This tutorial was written during the early days of the Fit framework. It takes you through an example of building a testing framework that allows the customer to write and run acceptance tests against your code. You get an understanding of how this contributes to a succesful developer/customer relationship.

These book excerpts are from Extreme Software Engineering: A Hands-On Approach, by Daniel H. Steinberg and Daniel W. Palmer, ISBN 0130473812, copyright 2003. All rights reserved.

These chapters are posted with permission from Prentice Hall.

We are presenting these book excerpts as two PDF downloads. The Chapter 10 file size is a little over 100K. Download Chapter 10: "Test First". The Chapter 14 file size is a little under 200K. Download Chapter 14: "Customer Written Tests".

Daniel H. Steinberg runs dimsumthinking.com and is former editor-in-chief of java.net.
Chet Haase I'm a graphics geek. I worked at Sun, Adobe, and Google, always on the UI side of things.
Related Topics >> Education   |   Extreme Programming   |   GUI   |   Testing   |