A software development approach where tests are written before code, guiding implementation and validation.