본문 바로가기
AB TEST

[A/B 테스트] 13장. 계측

by Delants 2023. 8. 22.

본 내용은 [A/B테스트, 론 코하비 저] 교재를 활용하여 작성되었습니다.

https://product.kyobobook.co.kr/detail/S000060625360

 

A/B 테스트 | 론 코하비 - 교보문고

A/B 테스트 | 신뢰도 높은 실험을 설계하는 가이드를 제공한다. 특히 각각 과정이 더욱 정확하게 측정가능한 온라인을 대상으로 한다. 구글, 링크드인과 마이크로소프트의 빅테크 기업에서 전 세

product.kyobobook.co.kr


본문

13장. 계측 (P. 231 ~ 235)

 

 

1. 개요

 실험을 실행하기 전, 사용자와 시스템에 발생한 상황을 기록할 수 있는 도구가 있어야 한다.  또한, 모든 비즈니스는 시스템의 작동 방법과 어떻게 사용자들이 이와 상호작용하는지에 대해 이해하여야 한다. 이를 위해 계측이 필요하다.

 


2. 클라이언트 계측과 서버 계측

 계측 시에는 클라이언트 측과 서버 측에 어떤 일이 발생하는지 이해하는 것이 중요하다.

 

클라이언트 계측의 초점은 사용자가 보고 수행하는 것을 포함해서 사용자가 경험하는 것이다. 예를 들어 다음과 같은 것이 있을 것이다.

 

1) 사용자 행동

- 클릭, 머물기, 스크롤 등 사용자가 수행하는 활동은 무엇인가?

- 이러한 활동은 언제 이루어지는가?

- 서버와 통신 없이 클라이언트에서 어떤 작업을 수행하는가?

 

2) 성능

- 페이지가 나타나거나 상호작용할 수 있을 때까지의  시간은 얼마나 걸리는가?

 

3) 오류 및 충돌

- 클라이언트 소프트웨어에서 오류는 어떤 식으로 발생하는가?

 

 시스템 측 계측은 다음을 포함해 시스템이 수행하는 작업에 초점을 둔다

 

1) 성능

- 서버가 응답을 생성하는데 시간이 얼마나 걸리는가?

- 어떠한 구성 요소가 가장 오래 걸리는가?

 

2) 시스템 응답 속도

- 서버가 사용자로부터 몇 건의 요청을 받았는가?

- 서버는 몇 페이지를 제공했는가?

- 재시도는 어떻게 처리되었는가?

 

3) 시스템 정보

- 시스템에서 몇 개의 예외 또는 오류가 발생했는가?

- 캐시 적중률은 얼마인가?

 

 클라이언트 측 계측은 사용자가 보고 수행하는 작업을 관찰할 수 있게 해주므로 유용하다. 하지만 데이터 정확도 및 사용자 비용 측면에서 단점이 존재한다.

 

자바스크립트 기반의 클라이언트 문제점

 

1) 클라이언트 측 계측은 상당한 cpu사이클, 네트워크 대역폭을 사용하고 배터리를 소모시키므로 사용자 경험에 영향을 줄 수 있다.

이러한 사용자 경험은 재방문 여부에도 영향을 줄 수 있다.

 

2) 자바스크립트 계측이 손실될 수 있다. 웹 비콘은 사용자가 링크를 클릭해 새 사이트로 이동하는 경우와 같이 사용자 상호작용을 하는데 자주 사용된다. 그러나 다음과 같은 경우 비콘이 손실될 수 있다.

 

- 웹 비콘 전송이 성공하기 전에 새 사이트가 로드될 경우

- 새로운 사이트가 로드된 이후 웹 비콘이 전송될 경우

- 응용 프로그램에 따라 두 가지 시나리오 중 하나를 구현하지 않을 경우

- 클라이언트 시계를 수동 또는 자동으로 변경하지 못할 경우

 

 서버 측 계측은 이러한 문제가 덜한 편이다. 여기에서는 사용자가 실제로 하고 있는 일을 덜 명확하게 보여주지만, 시스템 내부에서 발생하는 일과 이유에 대해 더 세분화해서 보여준다. 예를 들어 html페이지를 생성하는데 드는 시간을 측정하거나, 응답에 요청하는 실제 서버 또는 데이터 센터를 기록해서 불량 장치를 고치거나 과부하를 받고 있는 데이터 센터를 찾을 수 있을 것이다.

 


3. 여러 소스에서 로그 처리

 다음과 같은 서로 다른 계측 스트림으로부터 여러 로그가 있을 수 있다.

 

- 다른 클라이언트 유형(pc브라우저, 모바일 웹브라우저 등) 로그

- 서버의 로그

- 사용자별 상태 

 

 후속처리를 통해 관련 로그를 쉽게 활용하고 결합할 수 있어야 한다. 먼저 로그를 결합할 방법이 있어야 하는데, 이상적인 방법은 모든 로그에 대해 결합 키 역할을 할 수 있는 공통 식별자를 사용하는 것이다. 결합 키는 어떤 이벤트가 같은 사용자 또는 랜덤화 단위에 대응하는지 보여주어야 한다. 또한 특정 이벤트에 대한 결합 키가 필요할 수도 있다. 클라이언트 이벤트와 서버 측 이벤트가 있을 수 있는데, 결합 키를 사용하면 이 두 이벤트가 동일한 사용자에 대한 동일한 이벤트를 표시하는 뷰인 것을 확인할 수 있게 된다.

 

 다음으로 후속 처리를 보다 쉽게 하기 위해 공유 형식을 사용하는 것이 좋다. 이 공유 형식은 공통 필드(타임 스탬프, 국가 등) 및 사용자 정의 필드일 수도 있다. 공통 필드는 종종 분석 및 타겟팅에 사용되는 세그먼트의 기초이다.

 


4. 계측 문화

 계측은 실제 현장에서 중요히 여겨져야한다. 적절한 계측이 없다면 정확한 과정을 바탕으로 하고 있는지 여부에 대해 알 수 없다. 실제로 계측의 가장 어려운 부분은 엔지니어가 처음부터 계측하도록 하는 것이다. 이 어려움은 코드 작성 시점부터 결과 검토 시 까지의 시간 지연과 직무적 차이에서 비롯된다. 이러한 직무적 분리를 개선하는 방법은 다음과 같다.

 

- 문화적 규범을 확립한다. 계측 없이는 아무것도 배포할 수 없다는 것을 주지시켜야 한다.

- 개발 중 장치의 테스트에 투자하라.

- 가공 전 수집 그대로의 기록 품질을 모니터링하라.

- 주요 관측치 및 지표에서 특이값을 탐지할 수 있는 도구가 있는지 확인하라. 만일 이러한 이상값이 탐지되면 개발자들은 즉시 문제를 수정해야 한다.

 

끝.


퀴즈

1. 다음 설명 중 옳지 않은 것을 모두 고르시오.

 

1) 클라이언트 측 계측은 '클릭, 머물기, 스크롤 등 사용자가 수행하는 행동은 무엇인가?'와 같이 사용자가 경험하는 것에 대한 계측이다.

2) 시스템 측 계측은 시스템이 수행하는 작업에 초점을 두는 것으로, 그 예로 시스템 응답속도, 오류 및 충돌이 있다. 

3) 서버 측 계측은 시스템 내부에서 발생한 일과 이유에 대해 더 세부적으로 보여준다.

4) 클라이언트 시계를 수동으로 변경할 경우 비콘이 손실될 수 있다.

5) 직무적 분리를 개선할 수 있는 하나의 방법으로는 가공 전 그대로의 기록 품질을 모니터링하는 것이 있다.

 

 

 

 

정답: 2, 4 드래그하면 정답이 보입니다.

 

 

 

 

 

 

댓글