电商用户行为分析需求分析说明书
项目名称: 电商用户行为分析
修订时间: 2021-05-28
修订版本: 3.0
一、引言
1.目的
通过编写需求分析文档,对基于电商数据的用户行为分析系统进行介绍,使得文档的目标阅读人员能够对需求有一个清晰的认知。同时,方便开发人员为接下来的系统设计与实现打下基础。
本文档的预期读者是:需求分析人员、设计人员、开发人员、测试人员、目标用户。
2.项目信息
项目的名称:电商用户行为分析
项目的提出者:小组成员
开发者:zsw
用户:电商用户分析人员
3.缩写说明
缩写 | 说明 |
---|---|
ODS | 操作数据存储(Operational data storage) |
DWD | 细节数据层(data warehouse detail ) |
DWS | 服务数据层(data warehouse service) |
ADS | 应用程序数据存储(Application Data Store) |
OLAP | 联机分析处理(Online Analytical Processing) |
4.术语定义
术语 | 说明 |
---|---|
离线分析 | 对用户产生的数据以日或周为单位更新进行批处理 |
实时分析 | 对用户实时产生的数据进行实时处理 |
流量指标 | 与商品浏览量、在线人数等流量相关的指标 |
销售转化指标 | 在浏览量的基础上,对用户各种行为比例的分析 |
用户行为活跃率 | 分析用户活跃度,分析活动效果 |
用户价值 | 分析不同用户价值,更精准推送 |
热门统计 | 对热门商品统计 |
监控指标 | 对安全相关的指标统计 |
用户画像 | 多维度用户的占比分析和多维度指标分析 |
实时分析 | 对实时产生数据的重要指标实时分析 |
5.参考资料
电商用户行为数据分析 - 知乎 (zhihu.com)
6.版本信息
编号 | 修改日期 | 修改人员 | 版本号 | 修改位置 | 修改内容 |
---|---|---|---|---|---|
1 | 2021.05.28 | zsw | 1.0 | 全部 | 添加全部内容 |
2 | 2021.05.31 | zsw | 2.0 | 多处 | 添加用户画像部分 |
3 | 2021.06.04 | zsw | 3.0 | 多处 | 原型界面完善 |
二、任务概述
1.系统定义
1.1项目背景
当今社会,互联网飞速发展,网上购物成为更多人的购物选择,淘宝、京东、拼多多,苏宁等一大批网上商城随之崛起,为人们提供各种各样的网上购物平台,在人们上网购物的同时会产生大量的用户数据,这些用户数据对于这些公司来说非常重要,他们需要针对用户的线上访问时的购物行为,消费行为,业务操作行为进行统计分析,数据挖掘来支撑整个公司的业务运营,精准画像营销、个性推荐等来改善公司的运营效果,这些需求需要我们构建一个基于电商数据的用户行为分析系统来支持。
1.2项目要达到的目标
我们主要针对用户的线上访问行为,业务操作行为进行离线和实时两部分的统计分析,对于离线分析,系统需要分析最近一段时间内用户行为的各项指标,例如流量指标、销售转化率指标,用户行为活跃率,热门商品统计等,对于实时分析,系统需要实时展示当前时间段的安全指标和订单分析数据。通过离线和实时两部分的数据分析支撑公司的业务运行提高业务转化率,改善公司运营效果。
1.3项目整体功能结构
1.4用例图
2.运行环境
2.1设备环境
设备处于稳定、电源充足的地方运行。
2.2硬件环境
普通PC机:处理器英特尔七代i5以上,内存4GB以上,存储空间128GB以上。
2.3软件环境
搭载了hadoop、hdfs、zookeeper、kafka、flume、flink、hive、clickhouse、python、java等环境的linux系统
2.4网络环境
正常的网络连接。
2.5操作环境
普通PC浏览器打开网页登录即可。
3.条件限制
3.1软件开发工作的假定和约束
项目需要在两个月内开发完成。
3.2软件的最终用户、用户的教育水平和技术专长
软件的最终用户:电商公司的用户分析师。
用户的教育水平:大学本科及以上。
技术专长:擅长利用数据进行用户分析,制定相应策略。
3.3软件的预期使用频度
公司的用户行为分析员需要用户行为数据的分析情况来作为公司决策的重要依据。故分析员需要每天至少使用10次本系统。
三、数据描述
1.数据
UserBehavior,存储用户行为数据。
扩展后的UserBehavior
用户登录数据,LoginLog
订单数据,OrderLog
2.数据特征描述
扩展后的UserBehavior
特征 | 说明 |
---|---|
第一列:userid | 用户id,用户的唯一标识 |
第二列:itemid | 商品id |
第三列:categoryId | 商品类别id |
第四列:behavior | 用户行为,pv(点击)、buy(购买)、cart(加入购物车)、fav(收藏) |
第五列:time | 时间 |
第六列:day | 产生的某一天 |
第七列:hour | 产生的小时数 |
第八列:gender | 性别(0女,1男) |
第九列:age | 年龄 |
第十列:occupation | 职业(0-7八种职业) |
第十一列:province | 省份(0-33表示34个省) |
用户登录数据,LoginLog
特征 | 说明 |
---|---|
第一列:userid | 用户id |
第二列:ip | 用户ip地址 |
第三列:eventype | 事件类型,成功或失败 |
第四列:time | 登陆时间 |
订单数据,OrderLog
特征 | 说明 |
---|---|
第一列:userid | 用户id |
第二列:orderid | 订单id |
第三列:type | 行为类型create(创建),pay(支付) |
第四列:money | 订单金额 |
第五列:time | 时间 |
3.数据说明
三表数据都会有一部分历史数据存在clickhouse数据库中,除了实时分析外,指标的分析都通过这些历史数据完成。这三种数据也会实时产生,重要的指标会进行分析,通过实时大屏展示。实时产生的数据会先存放在mysql中,以天为单位定时运行程序同步到clickhouse中成为历史数据。
4.数据库说明
MySQL :是一种开放源代码的关系型数据库管理系统(RDBMS)
ClickHouse:Yandex开源的数据分析的数据库,名字叫做ClickHouse,适合流式或批次入库的时序数据。ClickHouse不应该被用作通用数据库,而是作为超高性能的海量数据快速查询的分布式实时处理平台,在数据汇总查询方面(如GROUP BY),ClickHouse的查询速度非常快。
四、功能需求
1.功能划分
1.1系统功能组成
主要功能模块:
1.流量指标
2.销售转化指标
3.用户行为活跃率
4.用户价值
5.热门统计
6.监控指标
7.用户画像
8.实时分析
1.2功能编号和优先级
编号 | 名称 | 优先级 | 主要发起者 |
---|---|---|---|
0101 | 独立访客数 | 重要 | 用户 |
0102 | 浏览量 | 重要 | 用户 |
0103 | 当前在线人数 | 重要 | 用户 |
0104 | 平均访问量 | 重要 | 用户 |
0105 | 回访数 | 重要 | 用户 |
0106 | 跳失率 | 重要 | 用户 |
0201 | 收藏转化率 | 重要 | 用户 |
0202 | 购物车转化率 | 重要 | 用户 |
0203 | 购买转化率 | 重要 | 用户 |
0301 | 时间段活跃率 | 重要 | 用户 |
0302 | 日活跃率 | 重要 | 用户 |
0401 | 重复购买次数 | 重要 | 用户 |
0402 | 复购率 | 重要 | 用户 |
0403 | 累计购买客户数 | 重要 | 用户 |
0501 | 热门商品统计 | 重要 | 用户 |
0502 | 热门商品类别统计 | 重要 | 用户 |
0601 | 恶意登录 | 重要 | 用户 |
0602 | 登陆警告 | 重要 | 用户 |
0603 | 失效订单监控 | 重要 | 用户 |
0701 | 多维度用户占比 | 重要 | 用户 |
0702 | 多维度指标分析 | 重要 | 用户 |
0801 | 实时大屏 | 重要 | 用户 |
2.功能描述
0101 独立访客数
统计每天的,所有的访客数量(用userid划分)。
0102 浏览量
统计每天的,pv行为的全部数量。
0103 当前在线人数
至少有两次行为称为有效在线人,即统计每天的两次行为的访客数量。
0104 平均访问量
统计每天的,浏览量/独立访客数。
0105 回访数
对一个页面(即同一个商品id)至少有两次pv行为的访客数量。
0106 跳失率
统计每天的,只有一个pv行为的访客数/总访客数。
0201 收藏转化率
统计所有的,有收藏行为数/总行为数。
0202 购物车转化率
统计所有的,有购物车行为数/总行为数。
0203 购买转化率
统计所有的,有购买行为数/总行为数。
0301 时间段活跃率
时间段内有3次动作的用户成为时段活跃用户。每小时的活跃人数/该小时的总人数。
0302 日活跃率
一天中有5次动作的成为日活跃用户,每日活跃人数/总人数。
0401 重复购买次数
统计所有的,有两次及以上的购买行为的人数。
0402 复购率
统计所有的,有两次及以上的购买行为的人数/总人数。
0403 累计购买客户数
统计每天的,有购买行为的总人数。
0501 热门商品统计
统计拥有最多行为的top10商品。
0502 热门商品类别统计
统计拥有最多行为的top5商品类别。
0601 恶意登录
在loginlog中一个ip地址连续5次登录失败,视为恶意登录。
0602 登陆警告
在loginlog中一个账号连续5次登录失败,是为警告登录。
0603 失效订单监控
在orderlog中提交订单后10分钟内没有支付视为失效订单。
0701 多维度用户占比
统计所有用户的年龄、职业、年龄段、省份分布情况
0702 多维度指标分析
融合在其他分析指标中,加入用户的年龄、职业、年龄段、省份限制条件进行指定信息查询和对比
0801 实时大屏
在实时产生的数据基础上,对重要指标实时分析、大屏展示。指标:总销售额、今日销售额、总浏览量、今日浏览量、恶意登录、警告登录、失效订单
五、性能需求
1.数据精确度
严格验证每个数据的录入保证数据录入的无误,显示用户数据要和原始数据一样无差别。
2.时间特性
在网络通常的情况下用户点击网页后5s内必须出结果。
3.适应性
网页支持主流浏览器的正常加载显示,控制可视化图表和报表显示正常。
六、界面需求
1.选用技术
springboot和echarts
2.界面风格
简洁、统一、不低龄化即可
3.界面草图
3.1登录
3.2主界面
3.3分析界面
流量指标
销售转化指标
用户行为活跃率
用户价值
热门统计
监控指标
用户画像
实时大屏
修改统计指标弹窗
七、其他要求
1.易用性
系统交互需要做到简洁易用,能够让工作人员简单上手,降低学习成本。分析任务的结果都以图形界面进行展示,做到直观明了。对于开发人员,代码需要符合规范、填写注释、提供良好的交互接口,方面系统的维护和二次开发,这也兼顾了系统的可维护性。
2.可扩展性
基于大数据的电商用户行为分析系统是基于大数据相关生态组件。基于此构建的构建的系统具有极强的扩展能力,开发人员可以无需大量配置增加机器数量。除此之外,该系统提供的工具和功能需要设计良好的数据交互接口。开发人员能够方便地根据这些工具对系统进行扩展。
3.安全性
电商用户行为分析系统需要使用严谨的开发流程,在代码编写上要严格符合规范,具有一定的风险抵御能力,且对数据库要设置明确的读写权限,预防数据泄露。在程序开发上对内存的进行合理的分配,避免产生内存泄漏等问题。
3.健壮性
该系统需要经过多次测试,避免程序发生无法预期的错误,并且有一定的自我恢复和反馈功能。