Test Driven Development: By Example