项目管理 - 如何做好项目管理
项目管理 - 如何做好项目管理
1. 项目流程
我把项目管理分为4个阶段,分别为需求阶段、研发阶段、测试阶段和上线阶段。
项目管理过程中,需要借助项目管理工具,我们以TB(Teambition)为例。
1.1 产品规划
为什么我需要将“产品规划”单独列出来,因为这个真的太重要了,产品规划就像是海上的灯塔,指引你前进的方向。
有了产品规划,产品可以将需求提前放入需求池,每个迭代只做高优需求。
下面是产品规划要求:
1.2 需求评审
需求评审阶段,一定是需要产品给出完整的需求文档,如果有UI交互的地方,需要提前给出原型图,拒绝没有原型图的需求评审。
需求一定是要非常明确,最好是能细化到具体的功能点,拒绝模糊需求(比如一句话需求)。
下面是需求评审要求:
为了提高需求评审的效率,我们在需求评审前,需要做很多准备工作,比如需求前期沟通、研发初步评估,前期工作准备到位后,需求评审期间就可以主要讨论问题,避免一个需求反复沟通的情况。
下面是需求阶段流程(有些环节可以删掉,仅供参考):
1.3 研发阶段
技术方案是整个项目的灵魂,很多项目到后期出现问题,很大原因就是技术方案没做好。
项目排期用于控制整体项目的节奏,有以下几点经验之谈:
- 项目排期每天不要排满,建议预留 20% buffer;
- 如果项目时间紧,可以采用分批提测的方式;
- 排期要有里程碑,开发、联调、提测、上线、验收等;
- 项目排期不能仅到上线阶段,还需包括线上灰度和项目验收;
- 前端排期依赖UI设计。
下面是项目排期要求:
下面是研发阶段流程(有些环节可以删掉,仅供参考):
1.4 测试&上线阶段
上线方案可以为线上的稳定性保驾护航,重要性不言而喻。 因为上线导致严重的线上问题,这个项目可能就白干了。
关于测试&上线流程,有以下几点经验之谈:
- 测试环节需要大家一起过测试Case;
- 提测前,有的项目还需要做项目演示;
- 上线前,需要一起过上线方案,突出风险点;
- 上线后可能需要小流量验证,或者灰度;
- 有的项目还有项目验收环节,最后才全员开放。
下面是测试&上线阶段流程(有些环节可以删掉,仅供参考):
2. 需求变更
重点说一下需求变更,这也是很多程序员头疼的问题,只要做到正确把控,其实也没那么可怕。
下面是需求变更要求:
总结一下:需求变更越早越好,变更需求,需要调整排期,临近上线,原则上不再允许需求变更,否则需要领导审批。
3. 每日站会
为什么要提这个呢,因为有的同学平时闷声不响,最后给你憋大招。所以你需要知道大家每天的工作进度、问题和风险,方便你推动和协调解决,甚至会对项目节奏临时调整。
站会怎么开,这个也有讲究,10-15分钟最佳,每位同学都要参与:
- 昨天做了什么?
- 今天打算做什么?
- 遇到什么问题?
备注:站会时间早上或晚上最佳,方式比较灵活,前期可以每周2-3次,后期就每天都开。
4. 总结
总结一下项目管理的几个重要的点:
- 产品规划就像是海上的灯塔,不能乱打一气;
- 需求文档一定要尽可能详细,拒绝无原型的需求评审;
- 技术方案是整个项目的灵魂,这块多投入时间绝对不亏;
- 项目排期有里程碑、有buffer,排期需包括线上灰度和项目验收时间;
- Code Review、测试Case都不能少;
- 上线方案要预知风险,为线上的稳定性保驾护航。