Summary (TL;DR)
Uncle Bob proposes that TDD's green phase uses Transformations, behavior-changing operations that move code from specific to generic. These include (nil->constant), (constant->scalar), (unconditional->if), (if->while), and others. He argues transformations have a priority order based on complexity, and preferring simpler ones avoids impasses. Using the Word Wrap kata, he shows how a test sequence forcing a low-priority transformation leads to an impasse, while a different sequence using higher-priority transformations avoids it. He suggests this could enable tool support and formal proofs of correctness.
Public access expired
Save this link to your readplace queue and read every link without expiration.
Save to My Queue