时程估了算不算?专案管理人的软体开发故事

时程估了算不算?专案管理人的软体开发故事

最近看到「为什幺软体工程无法估算时间?」所提到的情况,也对「生产力」的提昇作了很好的建议。
事实上,这篇原文 「Why Can't Developers Estimate Time?」 其实认同专案时程依然可被预估,也提供了抓时程的简单方式。

时程到底能不能估?估了算不算?
这是我的看法:时程要估也要算。只要有营运压力,废话少说、作就是了。

软体专案比斯斯还要多很多种,从专案範畴、人数、成员的默契以致细化到成员的个人能力、情绪管理跟运气。

例如开发者 A 可以在一週内完成同一公司内开发者 B+C 花两週时间才能完成的功能,这还是开发者 A 利用看漫画后的剩余时间完成的,照样运作无误。但是 A 养的猫不幸在外出约会回家后时呕吐休克后一直在出不了动物医院,对独居在台北的 A 来说如同家人一般猫咪当然需要得到如同家人一样的照顾,这不仅影响了 A 的工时,也影响了 A 的情绪。时程开始延误, B 因为有类似开发经验被抓进来支援,但是跟 A 一向不和的 B 暗第里并没有积极处理,C 才来一个月,到底要不要用?

专案管理人解法:在本文最下方。

专案开发绝对不能只用一个角度来分析。至于软体开发时程的管理,绝不能贪图速成。抓 buffer 天数、站着开会、相互 review 都是可行的方法,但是软体开发的核心是「人」,团队成员必须被尊重与信赖,案子才做的下去。 RD 要尊重 PM,PM 请相信 RD。至于老闆们,请相信你的员工。作不到的人,相信你一想到上班就很郁卒。

分享几个软体开发时程小「故事」及时程预估或管理的建议:

1. 外包的活动网站-打死不能延误

广告公司承接了某个新上市的休闲食品行销案,因为整个案子包含电视广告、店头活动跟网站,某软体公司想接网页製作的部分,要搭配产品上架跟电视广告一起 launch,好让消费者有地方登录序号换奖品。是的,这种专案如果没有在讲好的时间上线是会挫赛的。

PM 把大致上的规格跟工程师对了一下,问法有两种,第一种:大概多久可以做完? 第二种:某月某日要上线,赶的及吗?我建议是要问天数,也要讲上线日。问天数,工程师的脑海里会把规格跑过一次后再加给你,讲明上线日则是让开发者有觉悟:「刚刚的天数是不能估的太随便的。」

不管后台流量报告有没有写好、要换的广告主角新图又迟迟未到,这种加班也要完成的案子大家都要有觉悟,PM 一定要绷紧神经,RD 也请据实回报进度跟问题。

2.「就是大」的大型专案-遵守时程就是赢得更多生意

最常出现在 SI 公司,通常客户对象是政府单位或大型企业,钱很多、人很多、小问题也很多。依照经验预估时程通常不会差太多,而且客户跟你一样都有的默契是「一定不会完全照着时程走」。专案品质跟完成度通常比準时上线来的更重要。先不要无限上纲成「上线的时程不重要」,也许大家习惯了 milestone 的 delay,但是一次次如期正确交付所产生的信赖感绝对用钱也买不到。

对客户诚实以报、不时跟专案成员确认进度,是控管时程的不二法则。

3. 初创公司的服务-上的準不如上得巧

离职写 app 的一人公司或双人拍档可以用「流行」来形容,作网路服务的初创公司也通常是三、五成军,把 PMP 那一套专案管理方式搬出来用可能反而碍事。「用 SCRUM 呢 ?」大公司待久了,被洗脑也很正常啦。有事讨论、没事埋头苦干,有志一同才一起创业不是吗?。有个预估的上线时程很好,但是是情况随时调整更重要。如果刚好看到某个大日子很适合自己的产品上线,就调整一下吧。例如临时决定参加 SXSW,或是刚好碰到王子娶公主。

目前的使用者多数都能接受 beta 就上线这回事,只要交头接耳一下就可以确定的时程,不用长篇大论、一起冲就是了。

4. 内部的内管理平台- 没鱼,虾也好

如果是作管理网站内容或是小活动的内容管理平台,使用对象就是公司内部自己人-通常是产品经理、社群经理、客服人员或是工读生。平台的规划通常是因为如文案更新、图片上架、论坛管理之类的可被模式化的例行性工作需要,把动不动就需要劳动 RD 的庶务做成非程式开发者就可以上手的介面。因为没有实质收入的产生又耗内部资源,所以通常会被其他专案插队。很难过吗?看开一点。这要看内部对这些例行工作消耗内部资源的忍耐程度,真正上线的时程通常是老闆心血来潮定的日期。

这类专案以实用为主,如果时程乔不拢,建议一点一滴分批上,让 RD 资源可以慢慢从这类庶务中释出,PM 也可以有工具可以灵活应用、让内容或社群管理更有效率。

喔,专案管理人解法:「请老闆去照顾猫,因为此时 C 的工作比老闆重要,并定时追蹤猫况。B 跟 C 专心作自己的事,避免节外生枝。至于 A 大人,我请朋友从日本买最新的苍井空的 DVD 给他,并告诉他老闆答应上线后会放他两个礼拜的假。」

处理人,就是处理时程阿。