TDD and Formal Design
A Massively Experienced TDD Team
Do you like this product?Internally, the project is called the Greatest Hits project, for historical reasons.The people who wrote it, and the people who created this content, are altogether the most experienced TDD'ers in the world. If anyone was going to tell you to
eliminate formal design from your process, we would be the ones to do it, without doubt.
Of all the design practices in the previous page, there are only four that are not widely used in developing the Greatest Hits project.
- Drawing pictures
- Writing prose
- Talking to the customer about their needs and problems
- Building a prototype/proof-of-concept
- Coding a "baby" solution
- Writing code to exercise some new technology
- Whole-team reviews of design decisions
- Sketching wireframes/screenshots
- Creating a requirements document
- Studying a requirements document
- Creating detailed architectural documents
- Designing the full database schema
- Preparing a two-page summary architecture document
- Creating stories
- Using CRC cards to explain something
- Using the whiteboard to explain something
- Asking a colleague why something was done a certain way
- Explaining a problem to your (disinterested, but patient) spouse
(Reading...)
Formatting Hints:
To format... | use this markup: |
---|---|
source code | {source:lang=java|lineNumbers=false}...{source} (Supported languages: java, cpp, csharp, c, python.) |
bold text | __some text__ |
italicized text | ~~some text~~ |
underlined text | @@some text@@ |
a method or class name | ``myMethod(...)`` |