手民
軟件工程流程指南之一・如何聊「這事要做多久」
我決定又開一個坑,聊聊軟件工程的運作流程。
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:要這麼久?我覺得很簡單啊。
程序員:簡單是吧,那你來寫。
喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。
发布评论…