程序员成长第十二篇:做好项目计划
需求确认好之后,每个人都会领到自己的任务。我们首先要做的是评估个人开发时间和团队的上线计划。
任务拆解
首先第一步是做好任务分解,拆的越精细,评估时间越准确。就算是最简单的登录功能也可以拆。比如按业务,你可以拆成:微信登录、支付宝登录、账号密码登录、验证码登录。按接口,可以拆为账号登录、验证码登录、第三方账户授权登录。
评估工作量
第二步对拆解的任务评估工作量。按小时评估或者按天评估。这是一个非常主观的任务,一般只要不是偏差很大,主管不会干预。
如果遇到一些以前没做过的需求,个人无法评估的时间的,那需要先去做需求调研。一般会和主管一起,找到并确定一个解决方案。
整合计划
整合计划是把每个人的计划整合在一起,然后形成统一的转测试时间和上线时间。
因为有些工作是需要其他岗位配合,所以只要其中一个环节出了问题,其他环节都会受影响,这也是为什么很多计划经常延期的原因。比如,前端同事需要后端接口出了才能做功能测试。如果后端延期了,那前端也肯定会延期。
注意事项
一、大项目要分阶段转测
现在一般的计划迭代一般是半个月迭代一次。如果遇到大项目,超过一个月的,一般会拆小。比如一个月的设置 2 个阶段,第一阶段什么时间点完成,什么时间点转测试。这样做有两个好处
1、能保证如果前期出现问题,后期有空间在调整。
2、把项目中所有人调用起来,像设计大部分时间在项目初期和转测试期、测试人员的大部分工作在转测阶段工作。如果时间跨度太久,工作量都集中到一个时间点,整体时间计划就会拉的很长。
二、开发人员要留测试时间
平常开发的过程中就要养成自测试的习惯。在转测试之前,要预留时间给自己做自测试,整体流程要能跑通。
三、尽量不要变更需求。
很多项目延期都有需求变更的影子,不是说需求不能变,而是要通过流程减少变动。
不影响达成需求目的的需求,都可以放到下一个版本里。如果确实有影响,那可以变。但要跟团队沟通,让团队成员知道为什么而变。
四、要想各种办法让项目按时上线。
发布时间是我们对外部的承诺,不管是公司客户或 公司其他部门,他们并不了解你具体的工作情况,他们关心的你承诺的上线时间。
但项目延期在每个公司都很重要,原因有很多种,比如
需求理解不对,做错了。
需求评估的工作量不足,高估了自己。因为工作任务环环相扣,每个人高估一点点,整体计划就差很远了。
测试发现问题太多。bug 越改越多。
临时需求插进来。比如项目过程中,来了个新的紧急需求,也可能是线上突然出现了一个 bug,需要修复。
技术难点调研出了问题,实现方案得改.....
你可以找到很多的原因,但作为项目负责人,你要保证结果。
保证准时上线的几个技巧
1、每天开站立会,让每个同事讲自己当天的任务完成情况、有没有遇到什么问题、需要什么帮助。不要让问题出现在后期。
2、预估工作量的时候,不会算加班时间。如果当天计划出现了异常,要通过加班来解决。这个事前就要跟大家沟通好。达成共识。
3、做好 plan B 计划,比如在项目中期发现时间比计划上有延迟,考虑把那些需求目的不大的需求,放到下一个版本。在测试阶段,可以把一些优先级低的 bug 放到下一版本里修复。
4、设置一个对内发布时间,这个上线时间是我们所有人要努力达成的时间。而对外发布的时间,要在这个基础上多留几个工作。比如对内周四发布,对外下周一发布。
版权声明: 本文为 InfoQ 作者【石云升】的原创文章。
原文链接:【http://xie.infoq.cn/article/8c33fe6b481972b81b66b8ec3】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论