Misstating the Evidence for Agile and Iterative Development

Isaac Gouy, 10th June 2006.

Introduction

Ron Jeffries told me "Craig Larman's book, chapter 6 IIRC, is full of studies, some quite large (tens of thousands of projects)…" and Chapter 6 Evidence is interesting, so interesting that I wanted to know more, so interesting that I actually went to a library and looked at the source material. That's when it changed from interesting to sad.

I'll refer to Craig Larman "Agile and Iterative Development: A Manager's Guide" Addison Wesley Professional (2003) as the book and referenced source material as the source.

The book said "Timeboxing by itself" increases productivity and developer productivity at DuPont was 4x better. Wow! 4x better! I have to learn their techniques! I found some information online but it didn't match the book; and so to a library, to look at the same source material the book referenced.

Oh.

I learned that we cannot trust Chapter 6 Evidence - sometimes we are not given the evidence that's in the source, sometimes the evidence has been changed, sometimes the evidence seems not to be in the source.

Ten Examples

These are just examples, look and you'll find more. Each example has - quotations from the book, corresponding quotations (or summary) from the source, and a quick discussion of how the book misstates the source.

  1. Timeboxing by itself

  2. The report's conclusion?

  3. An iterative lifecycle

  4. with integration and regression testing

    The book refers to "Exploiting Trade-offs between Productivity & Quality in the Selection of Software Development Practices" Working draft submitted to IEEE Software. We only have access to the final published article, and should therefore expect to see some differences.

  5. eight practices… including IID

    The book refers to "Exploiting Trade-offs between Productivity & Quality in the Selection of Software Development Practices" Working draft submitted to IEEE Software. We only have access to the final published article, and should therefore expect to see some differences.

  6. the single largest contributing factor for failure

  7. 47 factors that increase or decrease productivity

  8. as the size of project decreases

  9. Rigorous IID or Evolutionary Prototyping

  10. a statistically significant reduction in defects

Conclusion

When it looks too good to be true, it probably is.

The book says Chapter 6 Evidence provides data. There are examples where the book fails to mention data that would undermine conclusions about timeboxing and an iterative lifecycle. There are examples where the data has been changed, and the changes support conclusions about an iterative lifecycle when the real data does not. There is no easy way to tell which data in Chapter 6 Evidence is incomplete or which data has been changed.

We cannot trust Chapter 6 Evidence of "Agile and Iterative Development: A Manager's Guide" - use that chapter as a reference-list and be sure to read the real evidence.