매우 짧은 개발 서클의 반복에 의존하는 소프트웨어 개발 프로세스.개발자는 요구되는 새로운 기능에 대한 자동화된 테스트케이스를 작성하고 해당 케이스를 통과하는 가장 짧고 가독성이 좋고 유지보수성이 뛰어난 코드를 작성한다. 테스트 통과된 코드를 작성하고 상황에 맞게 리팩토