Andy
Andy

手民

軟件工程流程指南之一・如何聊「這事要做多久」

我決定又開一個坑,聊聊軟件工程的運作流程。

1. 自家寫的軟件,所有功能都是「可能的」,只是時間、人力成本不同、成品bug多少不同。依賴別人的系統,才會出現「就是做不了」的情況。

2. 「估時間」這件事本身也要花時間的,大功能甚至需要提前準備。

3. 「估時間」本身的難度與以下因素有關:

i. 程序員本身經驗越多,估得越好;

ii. 做過的事情容易估計,沒做過的事情估不準;

iii. 獨立功能好估,牽涉多方面(如前後端、外部系統等) 的功能難估;

iiii. 功能描述越明確越好估,越模糊越難估;

v. 之前有鋪墊的功能好估,新思路難估。

4. 高效溝通示例

PM:我想解決問題X,你覺得怎麼辦比較好?

程序員:思路A怎樣,可以提供功能123。

PM:其實不用功能1,但是要功能234。

程序員:哦那思路B比較好。

PM:大概做多久?

程序員:功能2要一個星期,34我也沒做過,要問問人,可能各一兩周吧。

PM:功能3比較重要,我先細化一下,回頭再商量。

程序員:好。

(一天之後)

PM:我想了一下,功能3分解爲功能3a、3b、3c、3d,邏輯是這樣的:先3a再3b,如果這樣那就用3c,萬一那個情況發生那就用3d應對。

程序員:我問了一圈,功能3有現成的方案了,3天應該就能寫好了。我現在還在做項目Y,應該下週五能做好。

PM:好的,做好了告訴我,我來負責測試。

6. 低效溝通示例

PM:我想要做功能123456,你排個期吧。

程序員:呃,可能要一兩個月。(OS:這麼多,不知道要做多久,也沒準備,先往大的估不然把自己套死了;PM好像也不太知道自己要做什麼,搞不好下星期就變卦了,先拖一拖,省得做了白做……)

PM:要這麼久?我覺得很簡單啊。

程序員:簡單是吧,那你來寫。

CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论