What you get out is not a product, but it's a highly-functionality prototype. You can then hone it and refine it. Once it gets relatively good and everything basically works, you can hand it off to your architect (or architect it, yourself) and he can rewrite the code.

He can even open a new repo, copy-paste in the .feature files, and then build a completely new, clean software program that passes the same tests.

Reply to this note

Please Login to reply.

Discussion

The key is that you hone it and refine it OVER THE FEATURES, never directly in the implementation. Otherwise, the business logic gets wiped out, when it changes code. You have to hard-break between the behavior and the implementation.