만약에 시간이 많고 투자 가능한 자원도 충분히 존재한다면 짝비교를 통해 전체 이용자를 조사 하는 방법을 이용할 수 있을 것이다. 그렇게 된다면 각기 다른 이용자들의 특성을 고려하지 않아도 되고, 해당 서비스의 다름만을 평가할 수 있을 것이다.
이러한 평가 방법은 실제로는 불가능하다. 일단 비용과 시간이 너무 많이 발생한다. 이러한 특성은 우리의 개발방식인 애자일 방식과 상호 충돌한다. 우리는 빠르게 피드백 받고 다음 주기를 반복해야 하는데, 그러지 못하기 때문이다.
A/B test는 서로 다른 모집단에 대한 가정을 하고 그 모집단이 서로 다른지 판단하는 통계적 방법이다. 자세한 설명은 아래에서 참조하는 것이 좋다.
https://ko.wikipedia.org/wiki/A/B_%ED%85%8C%EC%8A%A4%ED%8A%B8
우리의 기존 서비스를 조금 더 개선한 방식으로 바꾸고 싶다고 가정해보자.
그러나 우리가 바꾸고 싶다고 바로 바꿀 수 있는 것이 아니다. 이용자의 특성을 우리가 고려하지 않고 개발을 했거나, 서로의 피드백을 듣고 만든 결과물이 서로 달랐을 수도 있기 때문이다.
때문에 기간을 정하고, 우리는 우리의 사이트를 방문할 때 기존의 결과물과 새로운 결과물을 표현하는 세션을 랜덤하게 할당하여 데이터를 수집한다.
이러한 할당 비중을 처음엔 0.99:0.01 로 진행하다가 우리가 설정해 놓은 유의미한 결과가 나온다면 0.9:0.1로 높이고 계속해서 유의미한 결과가 나온다면 점진적으로 바꿔 나가는 것이다.
이러한 test 방식은 애자일 방식과도 일맥상통한다. 짧은 주기와 즉각적인 피드백!
A/B test는 매력적인 테스트 방법이다. 하지만 몇가지 우리가 주의해야 할 점이 존재한다.
우리는 결과를 보고 갑자기 끼워 맞추기를 하는 유혹을 느낀다. 이러한 것들을 지양해야 한다.
위의 짝비교 보다는 아니지만 이러한 대규모 집단 조사 자체가 비용이 많이 든다.