Test Driven Development
Test driven development is an agile software development method. Using this method the developer first writes a software test for the requested behavior of the future component. This functionality does not exist in the actual code so that the test case initially is not fulfilled. For the next step the developer adjusts the code of the existing software solution with the result that the related function is provided and the test case is fulfilled. In the third step the code is finally optimized, refactored and adjusted to the state of the art code conventions. The proper behavior of the new function thereby is tested using the test case written in the first step.
With the application of test driven development high code coverage is assured in the early implementation phase. This guarantees a good maintainability of the software solution as side effects after system changes can be recognized very quickly. Besides that the method motivates developers to develop complex solutions by means of simple designs and to trust the tested solution.