린 애자일 기법을 활용한 테스트 주도 개발

    ATDD는 무엇인가?

    누구나 겪을 수 있는 상황 개발을 하다 보면 요구사항이 명확하지 않거나 부족한 경우에 많은 고민을 해본 적이 있을 것이다. 기획자에게 물어보거나 같이 요구사항을 해석하면서 개발하면 고객이 원하는 결과물이 아닐 경우가 높다. 기획자와 같이 요구사항을 재확인하여 수정해야 한다. 이런 상황을 예방하고 올바른 요구사항을 충족하려면 고객에게 질문해야 한다. 전화를 하거나 이메일 보내도 고객이 실시간으로 확인하는 것 아니기 때문에 응답에 시간이 걸린다. 답변을 받아도 이해하기 힘들 경우에 다시 정리해서 요청하기도 한다. 개발은 점점 딜레이 되고 고객의 불만이 조금씩 쌓인다. 문제의 원인은 서로 생각하는 관점이 다르기 때문이다. 괴리감을 해결하기 위해선 커뮤니케이션이 필요한데 전화 & 이메일은 한계가 뚜렷하다. 결과..

    ATDD를 접하게 된 과정

    많은 곳에서 TDD(테스트 주도 개발)를 하고 있으며 관련 도구가 많이 보인다. 좀 더 테스트 주도 개발을 알고 싶어서 최근에 관련 서적을 읽었다. 위의 두 서적은 제목처럼 TDD 내용이 다뤄진다. 그러나 두 서적 모두 핵심 내용은 TDD를 한 단계 더 확장시킨 ATDD가 중심이다. 생소한 ATDD를 접했지만, TDD와 흡사해서 금방 익숙해질거라 생각했다. 하지만 오래된 서적이라 예제 코드가 이해하기 힘들었거나, 코드없이 설명하니 ATDD를 제대로 이해하기 힘들었다. 좀 더 알고 싶어서 NEXTSTEP에서 진행하는 실습 위주의 교육과정을 수강했다. ATDD와 함께 클린 API로 가는 길 edu.nextstep.camp 서적만으로 이해하기 부족했던 부분을 실습 교육을 통해서 보완을 했다. 이제서야 배운 A..