Some introduction to Test Driven Development