前段时间参与了一个发票中台的项目,这个项目我觉得做得不是很理想,如果满分100分的话,这个项目我打60分。项目完成后,我在想如果让我来做这个项目,我会怎么做,让这个项目进展更加理想、开发同学不要加班熬夜、业务方能开开心心的接收这个项目。所以我打算写一个总结,帮助我在今后的项目中做的更好。
这个项目我只是作为参与方加入的,并不是项目的负责人,项目的很多部分可能也看的不全面,所以仅仅从我的角度来做这个分析总结。
先来介绍一下这个项目的内容:
我们有很多团队都在使用发票,这些团队有电商、WMS、XMS、Buy、SAP等,各个团队从不同渠道获取发票数据,然后自行生成发票。这种模式有如下问题:
1.增加了上线难度。这些团队的发票有的要求保持一致,如商城和WMS,所以当一个团队有新的需求需要修改发票的时候,两个团队需要同时开发,同时上线成功。这不但造成了资源上的浪费,同时增加了上线的难度。以前还出现过事故。
2.无法统一管理。各个组之间的发票样式不一致,不但对外难以树立统一的形象,对内管理也很混乱,没有人知道各个团队具体是怎样实现的。
3.资源浪费。有相同的需求的时候,各个组都需要对相同的内容做相同的修改,资源极大浪费。如印度政府要求发票上需要增加电子签名,结果每个组都必须修改一次。另外各个组技术栈和能力不同,也会产生各个组咨询相同问题的情况。
所以这次趁着政府法律的修改,公司内部想创建IC(发票中心)来统一管理发票。这个事情十分支持,毕竟以前也在发票相关的项目上趟过坑。
项目过程中做的好的方面和不好的方面
好的方面
前期和各个组沟通充足,相关组都出一个产品和研发负责跟进
项目优先级设置较高,确保各个组重视该项目
前期调研充分,各个组整理出了组内和发票接口交互的逻辑、使用的发票内容等
确定了每天定时沟通机制
不好的地方
沟通时间点不友好,设置为晚上6:30。这是很多同学吃饭或者休息的时间,导致大家急急忙忙参会,积极度也不高
沟通内容没有记录、追踪、处理。会议上大家提的一些问题,没有人落实,两三个星期后问题还存在
项目前期沟通频率太高,每天一次,后期沟通频率太少,一个星期一次。这种项目一般都需要后期沟通频率高一些。
前期调研时间、确定方案时间太长,导致后面开发时间很紧急
项目负责人应该包含IC的一个主程和IC的产品,这两人需要熟知各个组的发票状况和情形。在阅读各个组文档基础上,和各个组发票业务人员单独聊,理清整体的脉络,最好能画出自己理解的领域模型,拿着模型再和各个组对,会更容易一些。这样更容易把控项目按照正常的方向发展
项目的要求应该是咨询业务方是否可以使用统一发票模板,将发票模板给各个组确认。不应该是让各个组自行设计,后期发现不好收拢,再让各个方使用统一模板,导致业务方的付出被浪费掉了
缺乏各个组的测试计划和上线计划,导致测试和上线都很被动。因为没有提前准备测试case,很多逻辑点IC并没有考虑到
IC提供出真实的发票样式较晚,没有给业务方留出足够的时间进行查看
该项目北京为研发团队,印度为业务方团队,沟通上有一些欠缺,导致我们项目已经上线了,印度部分业务方还不知道这个事情。北京团队确实发送了邮件,也抄送了业务方,不过最好业务方那边也能出一个负责人。很多事情无法决定,很大程度上是因为缺乏业务方负责人。
这个项目最终还是在磕磕绊绊中有惊无险的上线了。我特别感慨也特别感动是,小米有一群有能力有责任心的开发、测试、产品,这些人不怕苦不怕累、能够化腐朽为神奇。在这个项目中,我也认识了很多新的小伙伴,和这些人一起共事蛮开心的。
希望今后大家能够轻轻松松的完成各种项目,不必那么紧张,不必用时间去弥补,能够按时下班,快快乐乐去上班。