WMS仓库管理系统研发规划说明
作者结合自身对WMS仓库管理系统的产品设计经历,与大家聊聊WMS仓库管理系统研发规划说明,希望对你有所启发。
这个应该是三四年前做的一个小外快,当初仅仅只是负责把产品设计完就没有再关注后续,拿出来给大家看看。因为时间比较早,当初的能力较弱,考虑的可能不周全,有错的可以指出来,谢谢。
01 产品背景
1.1 背景概述
aboss WMS东南亚仓库管理系统是一个基于BigSeller系统的使用基础上,加上多仓库的解决思路,解决入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等功能,对批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合运用,有效控制并跟踪仓库业务的物流和成本管理全过程,实现或完善企业的仓储信息管理。
1.2 问题与机会
随着BigSeller的使用过程中,发现了其中的使用不足,多仓库的使用情况等等问题,可以作为本次研发的重要解决关键点。需解决的重要问题:
1)多账号问题。
2)多仓库问题。
3)订单分仓问题。
4)多设备联动问题。
5)第三方对接问题。
6)电商平台绑定问题。
7)仓库库存问题。
1.3 边界界定
1.3.1 用户界定
aboss WMS整体应用包含四类人员:
1)WMS中台管理人员
中台管理人员指管理整个应用的管理人员。涉及到仓库管理、物流管理、货运管理等等。
2)客户后台管理人员
客户后台管理人员指使用aboss 的店铺管理人员,管理店铺及商品。涉及到商品管理、店铺绑定、库存查看。
3)用户
用户指消费者,从各个店铺里面购买商品的人员。用户涉及到订单创建、退货订单等。
4)工作人员
工作人员指处理货物的人员,处理订单发货、盘点作业的人员。涉及到订单发货、退货处理、盘点作业等。
1.3.2 权限界定
权限包含两个方面:
1)后台功能模块权限
总账号能控制子账号能使用哪些功能模块。
2)仓库权限
多仓库模式下可以分配仓库,其中包含后台管理界面及pad中可操作性数据权限。
权限应分为三级权限:
第一级权限:总账号
总账号能使用所有功能,控制所有二级账号,不可查看、控制三级账号。
第二级权限:二级账号
二级账号为客户账号或管理人员账号,二级账号权限由总账号来设置。二级账号创建的子账号为三级账号,分配的权限为二级账号包含的权限内容。
第三级权限:三级账号
三级账号为最低级账号,不可创建子账号。
1.3.3 pad权限界定
pad权限独立于账号权限,且pad权限只能由总账号或二级账号创建和处理,三级账号没有权限处理。
1)仓库权限
每个账号可以区分仓库,只能接收到相应仓库的订单和工单。
2)操作权限
pad可分配的操作权限:入库、拣货、打包、盘点、快件拦截跟踪
1.3.4 结算界定
1)点数充值提前充值,购买票数。
2)票数充值
*协定好的多少钱一票,之后单价*票数就是需要支付的金额
*包含打包费和材料费,多单组合费用
3)精准充值
由入库提供的单个包裹的长宽高,精确计算每个包裹所匹配的计价,多个sku,按照包裹内最大的sku计算基础的计价。
单个包裹每超过3个sku增加***钱计算
4)月结客户
时间-sku-订单单号-快递单号-总计单数-支付清零
1.3.5 店铺界定
不同电商平台店铺都可以对接至WMS系统。
1)多电商平台
shopee/lazada /奇门虎符,保留对接其他平台的可能性。
2)同平台多店铺
同一个电商平台下可以绑定多个店铺。
1.3.6 物流界定
可以对接多个物流平台,且可以分别设置物流模板,且可设置店铺使用指定物流模板。
02 产品综述
用户可以通过aboss WMS完成入库业务、出库业务、仓库调拨、库存调拨和虚仓管理等功能,对批次管理、物料对应、库存盘点、即时库存管理等功能综合运用,有效控制并跟踪仓库业务的物流和成本管理全过程,实现或完善企业的仓储信息管理。
用户可以通过后台管理平台完成商铺关联、货物管理、订单管理等,解决商品的售后问题。
管理人员可以通过后台管理平台仓库管理、商品管理、订单管理及权限管理。
工作人员可以通过pad平台完成货物的拣货、打包、发货及盘点等工作流程
03 需求详述
3.1 业务功能清单
3.2 架构图
3.2.1 需求架构图
3.2.2 业务架构图
3.2.3 技术架构图
3.2.4 数据架构图
3.3 业务功能模块说明
Aboss WMS业务模块多,之间关联性强,但是又需要做到能解耦。因此功能模块应做到相对独立。主要的功能模块包括:
1)第三方联动:第三方支付机构、船运平台、物流平台、短信、邮箱
2)仓库管理:仓库管理、库存管理、调度管理、工单处理
3)权限管理:店铺管理、权限中心、营销模块、设备联动
4)订单模块:入库订单、出库订单、退货订单、自动分单
5)物流模块:物流设置、拣货、分货、打包、核销
6)保障模块:日志采集、消息队列、服务治理、api管理、系统公告、数据分析
04 其他问题描述
4.1 模块之间都得提供行业标准接口
考虑这个系统肯定会存在只要某几个功能模块,其他功能服务,通过第三方系统满足的情况,这种情况下要做的只是提供行业标准的接口,然后让他们对接就好了
4.2 模块大小划分问题
系统复杂度去到一定程度,才需要拆分代码。在此之前有个大概范围划分就好。很难完全一下子将业务梳理清楚,其次业务不停在发生变化,新业务不断产生,也许大模块下再拆分子模块。