A/B测试平台需求文档

目录

A/B测试平台需求文档 1

1、实现业务目标 1

2、分流算法: 2

3、后台需求 4

1、实现业务目标

一部分用户使用a,另一部分使用使用b,科学实验,通过数据驱动产品设计和运营。

A/B测试平台需求文档插图
  • 纯客户端ab实验
A/B测试平台需求文档插图1

以搜索框ui样式为例,创建搜索ui实验,实验组1搜索框在红色,实验组2搜索框为绿色,对照组为不参与实验,保持线上。

A/B测试平台需求文档插图2

请求:设备id、是否登录、渠道号、版本号、操作系统

返回:实验id、实验组id

客户端根据预定义的组id,展示对应的ui。同时上报神策数据:

Events表 ,公共属性abtest_flag【STRING】,格式为json,key为实验id,value为实验id下的实验组id。如:{‘test01’:’01’,’test02’:’02’}

ab服务端判断逻辑如下:

A/B测试平台需求文档插图3

2、分流算法

层间流量正交,层内各实验间流量互斥,实验分为实验组n和对照组,实验内流量比例可配置。

分流引擎确保多个实验并行时,每个独立试验为一层,为保证各层之间不相互影响,一份流量穿越每层试验时,会再次随机打散,且随机效果离散,这一过程叫正交,这样的试验叫正交试验。

A/B测试平台需求文档插图4
A/B测试平台需求文档插图5

流量分配函数算法如下:

当请求流经一个流量层时,只会命中层内一个实验,即同一个用户同一个请求每层最多只会命中一个实验。

murmurhash2算法对层id+实验id+设备id做哈希处理,然后对 1000 求余之后+1,最终得到 1 到 100 之间的数值。

3、后台需求

A/B测试平台需求文档插图6

1)实验层列表

A/B测试平台需求文档插图7
A/B测试平台需求文档插图8
字段类型备注
实验层idString系统生成,自增
实验层名称String必填
描述String选填
创建人String 
创建时间Datetime 
更新时间Datetime最后一次操作时间
操作 实验层下已经有实验了,则不可删除

2)实验列表

A/B测试平台需求文档插图9
字段类型备注
实验名称String不可重复
实验idInt系统自动生成,拼接方式为:实验层id-自增id
所属实验层idInt 
所属实验层名称String 
创建人String 
创建时间Datetime 
结束时间Datetime状态为已结束则显示
备注String可不填
状态/操作String状态图如下
  

点击新建/编辑实验,如下:

A/B测试平台需求文档插图10
字段类型备注
实验名称String不可重复
实验层String下拉选择
选取用户 默认为自定义规则组,默认为全部,可选择操作系统、版本、渠道号。【多选框】。可切换为自定义人群包,上传csv文件,一列设备id
备注String选填

3)实验组列表

A/B测试平台需求文档插图11
A/B测试平台需求文档插图12
字段类型备注
实验组名称String不可重复
实验组id 系统生成
所属实验idString 
流量比例int实验内各个组加起来为100
备注String 
添加设备/早鸟用户Txt文本框,一列为设备id

4)实验结果评估

搜索评估指标为搜索点击率。假设对照组获取搜索的人数为1000人,点击了334人,点击率为33.4%,实验组1获取搜索的人数为1000人,点击了335人,点击率为33.5%。

A/B测试平台需求文档插图13

Z=(0.335-0.334)/SQRT((0.334*(1-0.334)/1000)+(0.335*(1-0.335)/1000))=0.0473928

95%的置信度下,za/2=1.96,z<za/2,不显著。即不能说明实验组效果更好。

A/B测试平台需求文档插图14

点击数:25

浙公网安备 33092102000174号

浙ICP备20027030号-1