So where do we begin a new application with TDD? Starting with TDD in mind is really no different from beginning any software development project. A developer must have some idea as to the goal of the application. The basic requirements should be understood. Just as we grow our application with tests, the requirements should grow with time.