article thumbnail

AoAD2 Practice: Test-Driven Development

James Shore

To share your thoughts, join the AoAD2 open review mailing list. This excerpt is copyright 2007, 2020, 2021 by James Shore and Shane Warden. Test-driven development, , or TDD, is a rapid cycle of testing, coding, and refactoring. Done well, TDD eliminates an entire class of programming errors. Why TDD Works.

article thumbnail

AoAD2 Practice: Fast, Reliable Tests

James Shore

This excerpt is copyright 2007, 2021 by James Shore and Shane Warden. With TDD, you run the tests as often as one or two times every minute. If they don’t, you won’t be able to get feedback within 1-5 seconds, and that’s crucial for the TDD loop to work effectively. Buy it now! Simulate Nonlocal Dependencies.

Insiders

Sign Up for our Newsletter

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

article thumbnail

AoAD2 Practice: Refactoring

James Shore

To share your thoughts, join the AoAD2 open review mailing list. This excerpt is copyright 2007, 2020, 2021 by James Shore and Shane Warden. To illustrate this point, I’ll continue the example started in “A TDD Example” on p.XX. Perform little refactorings as you use TDD and bigger refactorings as part of your slack.

article thumbnail

AoAD2 Practice: No Bugs

James Shore

To share your thoughts, join the AoAD2 open review mailing list. This excerpt is copyright 2007, 2020, 2021 by James Shore and Shane Warden. How about a real-time embedded system? Confirm that the software does what it needs to do with frequent customer reviews and stakeholder demos. Prevent Systemic Errors.

article thumbnail

AoAD2 Practice: Blind Spot Discovery

James Shore

To share your thoughts, join the AoAD2 open review mailing list. This excerpt is copyright 2007, 2020, 2021 by James Shore and Shane Warden. You’ll often do so via the user interface, but you can also use tools to explore APIs and network traffic, and you can also observe hidden parts of the system, such as logs and databases.

article thumbnail

AoAD2 Practice: Incremental Design

James Shore

To share your thoughts, join the AoAD2 open review mailing list. This excerpt is copyright 2007, 2020, 2021 by James Shore and Shane Warden. Next, review the design and make improvements. Again, review the design, simplify, and clarify. As “A TDD Example” on p.XX Your feedback is appreciated! This isn’t enough.

article thumbnail

AoAD2 Practice: Feature Toggles

James Shore

To share your thoughts, join the AoAD2 open review mailing list. This excerpt is copyright 2007, 2020, 2021 by James Shore and Shane Warden. Eventually, of course, you’ll want to see the code run, either to fine-tune the user interface (which can be difficult to test-drive), for customer review, or just to double-check your work.