27 November 2008
More example, reworking the process
Labels: book, growing object-oriented software
23 September 2008
Reordering chapters
We've cut down the introduction and moved some of the material into a new section, Examining the Process. Check it out and let us know what you think. More content to follow soon.
Labels: book, growing object-oriented software
04 September 2008
Chapter 9. Passing the First Test
We've posted another episode from our long worked example.
At the start of every test run, we need our test script to start up the Openfire server, create accounts for the Sniper and Auction, and then run the tests. Each test will start instances of the application and fake auction and test their communication through the server.
We've also made some changes in response to comments on the discussion list
Labels: book, growing object-oriented software
28 August 2008
Long Worked Example
We've posted the first couple of chapters of the long worked example from our book, Growing Object Oriented Software Guided by Tests. It's work in progress: some of the diagrams have not been finished quite yet. As ever, feedback is welcome via the discussion group.
Labels: book, growing object-oriented software
21 August 2008
New Table of Contents Online
Labels: book, growing object-oriented software
Chapter 5. An Introduction to the Tools
We have put a new chapter of the book online: Chapter 5. An Introduction to the Tools.
What happened to chapter 4? We've moved some chapters around after reading people's comments in the discussion group and will publish chapter 4 as soon as we've finished it and polished it up. We'll put the new table of contents up ASAP.
You can give comments and feedback via the discussion group or as blog comments.
Update: explained why we are only giving a cursory introduction to the tools. Improve explanation of why we chose JUnit and include where you can download it from.
Labels: book, growing object-oriented software
06 August 2008
Chapter 3. Kick-Starting the Test-Driven Cycle
We have put a new chapter of the book online: Chapter 3. Kick-Starting the Test-Driven Cycle.
You can give comments and feedback via the discussion group or as blog comments.
Update: added a sidebar about kick-starting "brownfield" development.
Labels: book, growing object-oriented software
25 July 2008
Chapter 2. Test-Driven Development with Objects
We are now publishing chapters of our book, Growing Object-Oriented Software Guided by Tests in a separate section of the site. We will publish news about new content in the blog but will not include the entire contents of each chapter as blog posts.
We have updated Chapter 2, Test-Driven Development with Objects in response to feedback from blog comments and the discussion group and improved some of the diagrams. More comments are always welcome.
Labels: book, growing object-oriented software
16 July 2008
Book Discussion Group
We have created a Yahoo Group to host feedback and discussion about the book we're working on. If you have any feedback we'd love to hear from you.
Labels: book, growing object-oriented software
14 July 2008
Chapter 1. What's the point of Test-Driven Development?
We are now publishing chapters of our book, Growing Object-Oriented Software Guided by Tests in a separate section of the site. We will publish news about new content in the blog but will not include the entire contents of each chapter as blog posts.
We have updated Chapter 1, What's the Point of Test-Driven Development? in response to feedback from blog comments and the discussion group and improved some of the diagrams. More comments are always welcome.
Labels: book, growing object-oriented software
13 July 2008
Growing Object-Oriented Software, Guided by Tests
We have been working for some time on a book about our approach to developing software test-first. We've been working at it long enough that we though it was time to start putting up some material to get some feedback which, after all, is a technique we go on and on about. We'll start with chapters in HTML, then add some PDFs on the side as the material grows.
Here's our opening.
A Deceptively Simple Idea
Test-Driven Development (TDD) is a deceptively simple idea: write the tests for your code before writing the code itself. We say “deceptively simple” because this reversal fundamentally changes the role that testing plays in the development process and challenges the industry's assumptions about what testing is for. Testing is no longer just about keeping defects from the users, instead it's about helping the team to understand the features that the users need and to deliver those features reliably and predictably. When followed to its conclusions, TDD radically changes the way we develop software and, in our experience, dramatically improves the quality of the systems we build, in particular their reliability and their flexibility in response to new requirements.
Test-Driven Development is widely used in “agile” software development methods. It is a core practice of Extreme Programming (XP) [Beck99], is recommended by Crystal Clear [Cockburn04] and often used in Scrum™ [SB01] projects. If you're going to work on an agile project, you will probably use TDD. We've used TDD on every agile project we've been involved in and have snuck the practises in to non-agile projects. We've even found it useful in pure R&D projects that explore possibilities rather than meet customer needs and so have no need of the customer-facing project management practices of agile methods.
More...
The Table of Contents links to the published chapters.
Feedback and Discussion
If you want to give us feedback on what we've written so far and see what other people think about it, please join the discussion group.
Labels: book, growing object-oriented software
© The authors
