最近一直在忙公司商城后台系统改造的项目,目前正在按照规划推进中。趁周末有空,决定提笔写一写关于这个项目的一些心得,后续也会陆续更新,敬请期待。当然了,在本博客上公布的内容,都是经过脱敏处理的,不会涉及到商业机密的问题。
本篇主要讲一讲这个项目的背景信息。
作为一家第三方支付公司,我司在自己的移动客户端上有商城入口,用来向代理商卖POS机具,以及一些关联的物料(充电器、打印纸之类的)。
承接前台App商城订单的,是一个古老又简陋的订单系统,除了在后台展示订单列表,基本上没有其他功能了。那我们是如何处理订单后续环节的?答案就是:ERP。
ERP系统从订单系统抓取数据后,生成自有格式的销售订单,然后就接手订单的处理了。
一提起ERP,我的同事们就表示头痛。某国际巨头的ERP,通用性确实很好,功能也很强大,但前提是,你得有足够的人力物力去维护、去开发定制,以便适应自家的业务场景。
现状是,公司花了那么多钱买的这套ERP,用了几年后,已经处于艰难运行与维护的境地了。一方面,公司的业务流程不太规范,处于不停的修改变化中,ERP灵活性不够高;另一方面,我们这个订单流程,不比京东淘宝他们那么复杂,用某巨头的ERP,有杀鸡用牛刀的感觉,功能强大,但对我们没有用,有劲使不上,也是挺痛苦的。
整个订单流程中,参与程度最高的是仓管部门。对仓管同事来说,在订单系统与ERP系统、第三方快递等各种系统之间来回切换和用Excel表格交换各种数据,苦不堪言。ERP本身与其他系统之间的衔接不太稳定,经常掉链子(如数据无法从订单系统同步到ERP系统)。
以上还不是重点。重点在于,我们的主要产品,是需要用序列号来管理的。ERP系统并不能很好地处理从采购入库到销售出库这一整套环节的序列号管理。更何况,我们的序列号是需要挂靠到代理商名下的,这意味着在后台,还要和代理商系统等其他内部系统有数据交互。总之,后台系统确实挺复杂的。
经过一系列的调研、面谈,我初步得出一个结论:我们必须将业务功能从ERP系统中剥离出来,或者说,是解耦合,然后只在ERP系统中保留财务对账功能。
上面这句话看起来很简单,但实现起来不容易。所谓的“业务功能”,至少包含以下几个大的功能模块:
- 商品管理
- 销售订单
- 采购订单
- 库存管理
这么多功能模块,我们打算另立一个新系统来承接。为了体现这个新系统的霸气,我专门起了个名字,叫做eCommerce Management Platform,简称EMP,与电子脉冲(Electromagnetic Pulse)的英文缩写是一样的。我对研发兄弟们说,以后出去了就可以和别人吹,说咱们可是做过电磁脉冲炸弹的人哈哈哈~
下一篇,我们将会先拿商品模块开刀。