商品分类同步流程
赛狐系统与ERP系统之间的商品分类双向同步
▶
触发条件 (Start)
- • 赛狐运营人员新增/修改/删除商品分类
- • ERP产品开发人员创建产品并选择分类
- • 系统定时同步任务触发(如有)
◼
结束状态 (End)
- ✓ 赛狐分类树完整同步至ERP,可供产品开发选择
- ✓ ERP产品分类回写至赛狐商品列表,显示正确分类
- ✓ 同步延迟 ≤ 3秒,双系统数据一致
核心需求
1
分类同步到ERP
赛狐3级分类树实时推送至ERP,保持结构一致
2
产品开发选择分类
必填字段,必须选择末级(第3级)分类
3
分类回写赛狐
产品开发完成后同步回赛狐商品列表展示
业务流程图
graph LR
subgraph 赛狐系统
A[分类变更] --> B[触发同步]
end
subgraph 同步层
B --> C{实时推送}
C --> D[ERP接收]
end
subgraph ERP系统
D --> E[存储分类树]
E --> F[产品开发选择]
F --> G[提交产品]
G --> H{回写赛狐}
end
subgraph 赛狐系统2[赛狐系统]
H --> I[商品列表展示]
end
style A fill:#dbeafe
style I fill:#d1fae5
关键指标
≤ 3s
同步延迟SLA
3级
分类层级
双向
数据流向
15项
待确认问题
角色池(本流程涉及的所有角色)
👤
赛狐运营管理员
分类维护者
负责商品分类树的创建、编辑、删除,是分类数据的源头管理者
👨💻
ERP产品开发专员
主模拟角色 ⭐
负责在ERP创建产品,必须选择商品分类,是分类的主要消费者
🔧
IT系统运维
同步保障者
监控同步状态、处理同步失败告警、维护系统稳定性
📊
采购经理
分类查看者
查看商品分类进行采购决策,关注分类的业务含义和产品归属
👨💻
李明 | ERP产品开发专员
本次场景模拟的主角色
📈 KPI / 动机
- • 日录入产品数:≥ 20个
- • 产品信息完整率:100%
- • 返工率:< 5%
- • 核心动机:快速完成录入,不想因为"分类问题"被打回
🔐 权限与限制
- • 可读 分类树(来自赛狐同步)
- • 可选 末级分类绑定产品
- • 禁止 新增/修改/删除分类
- • 禁止 选择非末级分类
👁️ 典型盲点
- • 不知道分类来自赛狐同步,以为ERP自己管理
- • 不知道"刚选的分类"可能在提交瞬间被删除
- • 不知道分类树的同步延迟可能导致选项不是最新
- • 不理解"末级"的业务定义(是层级=3还是无子节点?)
⚡ 压力情境
- • 月底冲量,需要批量录入50+产品
- • 新分类刚发布,急需使用但同步未到
- • 已录入20个产品后发现分类选错了,需批量修改
- • 系统提示"分类已失效",不知如何处理
✅ 李明已知的信息
- • 分类是必填字段,不填无法提交
- • 必须选择三级分类(末级)
- • 分类数据从赛狐同步过来
❓ 李明不确定的信息
- • 分类多久同步一次?是实时还是定时?
- • 如果分类被删除,之前绑定的产品怎么办?
- • 选错分类后能否修改?修改后赛狐会更新吗?
📝 User Story
作为 ERP产品开发专员李明,
我想要 在创建产品时快速、准确地选择商品分类,
以便于 产品信息完整合规,回写到赛狐后运营同事能正确筛选管理。
我想要 在创建产品时快速、准确地选择商品分类,
以便于 产品信息完整合规,回写到赛狐后运营同事能正确筛选管理。
操作步骤模拟
以李明(ERP产品开发专员)视角,模拟完整操作流程。每步包含 ❓ 标记的分支问题。
1
⚠️ 有卡点
打开产品开发编辑界面
| 用户操作 | 心理预期 | 实际可能发生 | 卡点/分支 |
|---|---|---|---|
| 点击"新建产品" | 页面加载,所有字段可编辑 | 分类选择器:① 正常显示 ② 显示"同步中..." ③ 空列表 | 初始状态不确定 |
| 等待页面加载 | 2秒内完成加载 | 分类树>1000节点时,可能5-10秒 | 性能瓶颈 |
❓ 分支问题
- ❓ 分类数据加载失败时,用户看到什么?能否继续填写其他字段?
- ❓ 分类正在同步中时,是否显示loading状态?用户能否等待或刷新?
2
🔥 UI未定义
点击分类选择器
| 用户操作 | 心理预期 | 实际可能发生 | 卡点/分支 |
|---|---|---|---|
| 点击"商品分类"输入框 | 弹出可选择的分类列表 | ① 级联三列面板 ② 树形下拉 ③ 搜索+树形混合 | UI形态未定义 |
| 尝试查找"娱乐类&乐器" | 快速定位目标分类 | 10+一级分类,无搜索功能需滚动查找 | 查找效率低 |
❓ 分支问题
- ❓ 分类选择器的具体UI形态是什么?级联/树形/搜索?
- ❓ 是否支持搜索?搜索范围是全树还是当前层级?支持拼音搜索吗?
3
✓ 主流程
逐级展开并选择三级分类
| 用户操作 | 心理预期 | 实际可能发生 | 卡点/分支 |
|---|---|---|---|
| 点击"娱乐类&乐器"一级 | 展开二级分类列表 | ✅ 正常:显示"娱乐"等二级分类 | 正常 |
| 点击"娱乐"二级 | 展开三级分类列表 | ✅ 正常:显示发动机模型、拼图、刮刮乐等 | 正常 |
| 点击"刮刮乐/刮刮卡"三级 | 选中并显示完整路径 | 显示格式待定:仅名称 or 完整路径? | 待确认 |
❓ 分支问题
- ❓ 选中后输入框显示什么?仅"刮刮乐/刮刮卡" 还是 "娱乐类&乐器 > 娱乐 > 刮刮乐/刮刮卡"?
- ❓ 如果某个分类只有2级没有3级,能选择吗?"末级"的定义到底是什么?
4
🔥 关键风险
填写其他字段并提交
⚠️
同步延迟窗口期问题
如果用户选择了一个「刚被赛狐删除但ERP尚未同步」的分类,提交时会发生什么?
| 用户操作 | 心理预期 | 实际可能发生 | 卡点/分支 |
|---|---|---|---|
| 填写产品名称、价格等 | 正常填写 | ✅ 正常流程 | 正常 |
| 点击"提交"按钮 | 成功跳转列表页 | ① 成功 ② "分类已失效" ③ 网络超时 ④ 回写赛狐失败 | 多种失败场景 |
| 看到"分类已失效"报错 | 懵逼,刚才明明选了 | ❓ 刷新重选 or 联系管理员 or 系统自动刷新? | 恢复路径不明 |
❓ 分支问题
- ❓ 提交时分类已被删除,报错文案是什么?用户该如何操作?
- ❓ 是否有"分类版本号"校验机制?冲突时如何提示用户?
5
⚠️ 待明确
查看ERP列表确认
| 用户操作 | 心理预期 | 实际可能发生 | 卡点/分支 |
|---|---|---|---|
| 返回产品列表页 | 看到刚创建的产品 | 分类列显示:① 完整路径 ② 仅末级名称 ③ 分类ID | 显示格式待定 |
| 检查分类是否正确 | 与刚才选择的一致 | 数据来源:存储快照 or 实时查询分类表? | 数据来源不明 |
❓ 分支问题
- ❓ 列表页分类列的数据来源是什么?分类名称变更后列表会自动更新吗?
- ❓ 分类被删除后,已绑定产品的分类列显示什么?空白/标红/原名称?
6
📤 系统行为
分类回写到赛狐
| 系统动作 | 预期结果 | 实际可能发生 | 卡点/分支 |
|---|---|---|---|
| 产品保存成功 | 触发回写赛狐 | 回写时机:① 同步触发 ② 异步队列 ③ 定时批量 | 同步策略待定 |
| 赛狐接收分类信息 | 商品列表显示分类 | 关联字段:① SPU ② ASIN ③ 产品编码 ④ 其他 | 关联字段不明 |
| 回写失败 | 用户不知道 | ❓ 静默重试 or 通知用户 or 人工介入? | 失败处理不明 |
❓ 分支问题
- ❓ ERP产品与赛狐商品的关联字段是什么?SPU/ASIN/其他?
- ❓ 回写失败时的处理策略是什么?用户能感知到吗?有补偿机制吗?
质量检查清单
✅
每个步骤包含 ≥ 2 个分支问题(用 ❓ 标注)
✅
覆盖了"用户操作-心理预期-实际发生-卡点"四列
✅
明确了触发条件和结束状态
✅
识别了4个相关角色,主角色有完整设定
✅
User Story 格式完整(作为...我想要...以便于...)
✅
产出待确认问题清单(15项)
待确认问题清单(15项)
P0 阻塞级
必须在开发前确认
1
分类选择器的UI形态是什么?
级联三列 / 树形下拉 / 搜索+列表?→ 影响前端开发
2
"末级分类"的定义是什么?
层级=3(固定三级)or 无子节点(动态末级)?→ 影响业务规则
3
分类删除后,已绑定产品如何处理?
保留标红 / 清空 / 迁移到其他分类?→ 影响数据迁移策略
4
赛狐允许删除"有商品绑定"的分类吗?
影响删除校验逻辑和接口设计
5
"实时同步"的SLA是多少?
1秒 / 3秒 / 最终一致性?→ 影响技术选型(WebSocket/MQ)
6
提交时分类已失效,如何处理?
报错文案?用户操作引导?是否有版本校验机制?
P1 重要级
影响用户体验
7
是否支持分类搜索?搜索范围?
全树 / 当前层级?支持拼音?→ 影响查找效率
8
ERP与赛狐商品的关联字段是什么?
SPU / ASIN / 产品编码?→ 影响数据模型设计
9
回写失败的处理策略是什么?
静默重试 / 通知用户 / 人工介入?→ 影响异常处理设计
10
历史"未分类"商品如何迁移?
批量导入 / 逐个编辑?→ 影响上线计划
11
分类数据加载策略是什么?
全量加载 / 懒加载 / 分页?→ 影响性能
12
列表页分类显示格式是什么?
仅末级名称 / 完整路径?→ 影响UI设计
P2 一般级
可后续迭代
13
同步失败时有降级方案吗?
如允许临时手动输入?
14
分类名称允许特殊字符吗?
如"&"符号,影响存储和XSS防护
15
是否需要分类变更通知机制?
分类删除时通知已绑定产品的负责人?
漏掉的分支流程(9项)
边界
分类树为空时的处理
首次同步未完成,用户看到什么?能否保存?
边界
分类名称重复时的处理
不同路径下有同名分类,如何区分?
异常
分类层级变更的处理
原三级分类下新增了四级,已绑定产品怎么办?
异常
分类移动的处理
A分类从X父级移到Y父级,已绑定产品的路径如何更新?
并发
并发编辑冲突
两人同时选择同一分类后,分类被删除
并发
批量导入产品的分类校验
Excel导入时分类ID/名称不存在如何处理?
体验
分类修改后的历史追溯
产品的分类变更历史是否需要记录?
体验
分类使用频率排序
常用分类是否置顶?支持收藏?
运营
分类同步监控和告警
同步延迟超过阈值时如何告警?谁负责处理?
📊 模拟报告统计
4
识别角色
6
模拟步骤
6
P0 问题
6
P1 问题
9
漏掉分支
📋 下一步行动建议
PM
召集赛狐+ERP产品对齐,确认15项待确认问题
UX
输出分类选择器原型(正常/空/加载/错误态)
架构
确定同步技术方案(推/拉/MQ),评估SLA可行性
后端
设计分类表结构(版本号、软删除、父子关系)
前端
调研树形选择器组件,评估大数据量渲染方案
QA
基于9项漏掉分支设计测试用例,覆盖同步延迟窗口期