The TDD process and rules have been propossed initially by Robert C. Martin as the first way to achive professionalism. He states that these are the three rules that every professional should observe to make sure that any product does exactly what he says:
With this rules, we protect others from unitentional bugs, we ensure that what we deliver is exactly what our client wants, but also, and most important, we ensure that our code can be maintained in the future.
See also: