Similar to how TDD forces you to first figure out the API of your code due to the test code being its first client.