Programming Books C Java PHP Python Learn more Browse Programming Books
Design Driven Testing: Test Smarter, Not Harder and over one million other books are available for Amazon Kindle. Learn more
Qty:1
  • List Price: $59.99
  • Save: $20.44 (34%)
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
FREE Shipping on orders over $35.
Condition: Used: Very Good
Comment: *\INTERNATIONAL SHIPPING AVAILABLE/*- Clean pages with tight binding.
Access codes and supplements are not guaranteed with used items.
Sell yours for a Gift Card
We'll buy it for $2.00
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Design Driven Testing: Test Smarter, Not Harder Paperback – September 17, 2010

ISBN-13: 978-1430229438 ISBN-10: 1430229438 Edition: 2010th

Buy New
Price: $39.55
22 New from $32.99 17 Used from $6.07
Amazon Price New from Used from
Kindle
"Please retry"
Paperback, September 17, 2010
$39.55
$32.99 $6.07
12%20Days%20of%20Deals%20in%20Books
NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Paperback: 368 pages
  • Publisher: Apress; 2010 edition (September 17, 2010)
  • Language: English
  • ISBN-10: 1430229438
  • ISBN-13: 978-1430229438
  • Product Dimensions: 7.4 x 0.8 x 9.2 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 3.1 out of 5 stars  See all reviews (11 customer reviews)
  • Amazon Best Sellers Rank: #1,433,850 in Books (See Top 100 in Books)

Editorial Reviews

About the Author

Matt Stephens is a Java developer, project leader, and technical architect with a financial organization based in central London. He's been developing software commercially for over 15 years, and has led many agile projects through successive customer releases. He has spoken at a number of software conferences on object-oriented development topics, and his writing appears regularly in a variety of software journals and websites, including The Register and ObjectiveView. Matt is the co-author of Extreme Programming Refactored: The Case Against XP (Apress, 2003) with Doug Rosenberg, Agile Development with ICONIX Process (Apress, 2005) with Doug Rosenberg and Mark Collins-Cope, and Use Case Driven Object Modeling with UML: Theory and Practice with Doug Rosenberg (Apress, 2007). Catch Matt online at www.softwarereality.com.

More About the Author

Matt Stephens is a software consultant with a financial organization based in Central London. He's been developing software commercially for 20 years, and has led many agile projects through successive customer releases. He has spoken at a number of software conferences on OO development topics, and his writing appears regularly in a variety of journals and websites, including The Register and ObjectiveView.

Matt is also the founder of independent book publisher Fingerpress: www.fingerpress.co.uk

Catch Matt online at: http://articles.softwarereality.com

Customer Reviews

Test smarter, not harder: the number of tests explodes with DDT!
R. Wenner
Before reading this book I'd not heard too much about DDT and even now it doesn't seem to be generating a huge amount of noise.
I. Chishty
What I got instead was an uninformed screed against TDD, XP, and other Agile practices.
R S Shaffer

Most Helpful Customer Reviews

11 of 12 people found the following review helpful By I. Chishty on September 22, 2010
Format: Paperback
'Design Driven Testing: Test Smarter, Not Harder' is the second book that I've read by authors Doug Rosenberg and Matt Stephens, the other being 'Use Case Driven
Object Modelling with UML Theory and Practice'. Once again I've been impressed, not only by the content but also, by the manner in which concepts are presented. I have a technical background and spend a considerable amount of time reading journals, blogs, articles and books and I especially enjoy it when the author screams out with passion for his/her subject, as in this case.

Before reading this book I'd not heard too much about DDT and even now it doesn't seem to be generating a huge amount of noise. I think this is maybe because a lot of people and organisations have spent vast amounts of time, money and hard effort investing in TDD.

I've been fortunate to have used TDD on many projects and it never surprises me the number of times when 'TDD' projects are not actually 'TDD'. From a high-level it seems really simple but then again simple things are not always what they seem.
By reading the accounts of Rosenberg and Stephens it's amazing how much one can learn not just about DDT but also TDD. It was also fascinating to learn that a lot of things I've done in the past have been very compatible with the DDT approach, such as robustness analysis and testing `hot-spots'.
I'm not sure if I'll be making the move to a pure DDT approach, but nonetheless it's shown flaws in past TDD projects that I've been part of (e.g. chasing code coverage, lack of design and not thinking deeply about acceptance testing).
The book is a good read and I appreciated the examples and simple concepts such as top 10's. I highly recommend the book even if you're not likely to use DDT because, like me, it's made me think long and hard about TDD and how to get the most out of it.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
18 of 24 people found the following review helpful By R. Wenner on February 26, 2012
Format: Paperback
Chapters 1 and 2 have many misconceptions about TDD. The authors have not seen proper TDD and from that they deduct that TDD is bad. Here are just a handful of the gems:

- "TDD produces a lot of [unneeded] tests." -- How so?

- "the sheer hard work of refactoring your way to a finished product, rewriting both code and tests as you go." Yes, that's right, the authors apparently don't even understand the difference between refactoring and rewriting.

- Their TDD code has an AccountingValidatorFactory without a single test for it, much less the need for it.

On the one hand the authors acknowledge that TDD is only part of some agile practices like XP, on the other hand they complain that TDD does not do design documentation (that would be a specific task in XP), does not include acceptance testing, and does not cook breakfast. They are comparing apples to oranges and are proud of it.

The above makes the book irritating to read. If your DDT is so great, just explain it and let me draw my own conclusions. I do not need your trash talking. It would also help to show TDD of the same quality as the TDD code. Instead the tests in chapter 2 are poorly named, do too much too fast, have unneeded code, and generally look like beginner's work. Of course, this does
not happen to the counter examples for DDT that follow.

Some DDT ideas sound promising, but the authors don't live up to their claims:

- Generating acceptance and unit tests from designs: DDT / the book cannot fulfill these promises, it only generates (crappy) code skeletons. Eighties CASE tools, anybody?

- Test smarter, not harder: the number of tests explodes with DDT!
Read more ›
4 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
3 of 3 people found the following review helpful By A. Sattar on January 11, 2011
Format: Paperback
I'm very glad I came across this book. I'm new to the space of Test Driven Development(TDD) and was having a hard time wrapping my head around the concepts. It seemed to me that the goal of TDD was to unit test every function written by the application and seemed to be getting away from the purpose of the application itself. To me, it appeared as if there was little emphasis on the customers goals for the application and acceptance criteria. Just making sure all your code works does not necessarily mean the application has achieved the criteria set out by the client. The tests driving the design also didn't make much sense to me, because it doesn't really address the needs of the users for whom the application is intended and suggests a design geared to functionality and not usability.

Design Driven Testing(DDT) is a very neat philosophy that gives equal consideration to the technical folks developing the software and the client for whom it is intended.

Design Driven Testing by Matt Stephens and Doug Rosenberg begins appropriately by comparing and contrasting these two philosophies using a "real world" example. It clearly details where the philosophies diverge and is a great setup for the rest of book, which continues to indicate exactly why and how DDT is so much better. The style of writing is clear, concise and very easy to read. The authors illustrate their point of view by using real world coding examples. The simplicity of the examples themselves is a great advertisement for DDT.

As a consultant, acceptance testing is very important to me and the focus in the latter part of the book on Controller Testing is great. To me, this is where TDD fails and I was very glad to see an emphasis here on the higher level purpose of the application and not just making sure the code doesn't generate an exception.

Overall, this is a great read and a good starting place for anyone getting into Design Driven Testing or even Test Driven Design.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews