Write implementation ↓ Run tests ↓ Read failure ↓ Modify implementation ↓ Run tests again