# A/B and How to Be

**URL:** <https://discuss.dataengineercafe.io/t/a-b-and-how-to-be/473>\
**Category:** 97 Things Every Data Engineer Should Know\
**Tags:** testing, experiment\
**Created:** [December 13, 2022, 12:20pm UTC](https://discuss.dataengineercafe.io/t/a-b-and-how-to-be/473 "2022-12-13T12:20:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![zkan](https://yyz1.discourse-cdn.com/flex035/user_avatar/discuss.dataengineercafe.io/zkan/32/2_2.png) [@zkan](https://discuss.dataengineercafe.io/u/zkan)\
**Post date:** [December 13, 2022, 12:20pm UTC](https://discuss.dataengineercafe.io/t/a-b-and-how-to-be/473/1 "2022-12-13T12:20:26Z")

</div>

โดย [Sonia Mehta](https://www.linkedin.com/in/mehtamehta/)

A/B testing หลัก ๆ แล้วเป็นวิธีการ หรือ experiment ในการเปรียบเทียบของระหว่าง 2 เวอร์ชั่น แล้วดูว่าเวอร์ชั่นไหนที่ทำงานได้ดีกว่า หรือมีประสิทธิภาพดีกว่า ซึ่งไม่ว่าจะเป็นด้วยขนาด และรูปแบบของ experiment ที่ทำแล้ว ศาสตร์ด้าน data engineering ก็มักจะมีส่วนร่วมในทุก ๆ สิ่งตั้งแต่การเตรียมจนไปถึงการติดตามวิเคราะห์ผลที่ออกมา

ในเรื่องนี้เราก็ควรที่จะดูด้วยว่ามีเครื่องมือตัวไหนที่ตอบโจทย์ในการทำ experiment ของเราบ้าง หรือเราจะพัฒนา in-house solution ขึ้นมาเอง ตรงนี้มีความสำคัญมากที่เราจะต้องมาดู พูดคุย ตกลงร่วมกันว่าเราจะนำเอาไปเก็บข้อมูล และทำ experiment กันอย่างไร

ในการตรวจสอบพวกค่า metrics ต่าง ๆ ในการทำ experiment ปัญหาที่เราจะต้องดูก็จะมีพวก sample sizes, start and stop dates, user in both groups หรือ context-specific restrictions

ถ้าเมื่อไหร่ก็ตามมีการเปลี่ยนแปลงเกิดขึ้นกับกระบวนการ experiment ของเราในฝั่ง backend เราก็อาจจะต้องทำ A/A test ก่อน เพื่อให้แน่ใจว่าที่เราเตรียมมา และการเก็บข้อมูล มีความถูกต้องตามที่เราคาดไว้ ก่อนที่จะรัน A/B test ต่อ

ตอนที่เราทำ experiment ก็ให้คาดหวังไว้เลยว่าจะ fail ซึ่ง Netflix ก็บอกไว้ว่า 90% แหละ ผิดแน่ ๆ และให้เราคาดหวังว่าจะมีคำถามมากมายจากสิ่งที่เกิดขึ้น ทั้งในเรื่องความแม่นยำ และการเก็บข้อมูล ยิ่งถ้าเราเห็นว่ามีผลลัพธ์ที่ดีมาก ๆ ก็ยิ่งต้องสงสัยไว้ก่อนเลย และให้ลองประเมินผลลัพธ์ใหม่ หรือไม่ก็ไปทดสอบเพิ่มเติมใหม่อีกรอบทั้งหมด
