【Jo Lin碎碎念】等待,是工程師的基本功

 

圖片來源:inside

軟體工程師的時間都花在哪裡?
http://www.inside.com.tw/2013/05/02/how-do-programmers-spend-their-time

圖片來源:Inside

今天看到朋友FB分享的這篇文章,

不禁讓我又勾起了在"前"公司的回憶,一切都歷歷在目,

回想起來,我那青春的肉體,真的有不少時間是花在無止境地等待上...

過去十多年專案開發的經驗當中,我深深的有個體悟,

『好的專案計畫,不一定有辦法讓你上天堂,

但是多變的專案,絕對有能力讓你常常住套房,

所以好的專案規劃很重要。

能力好的合作夥伴可以讓你少奮鬥30天,

但是能力稍弱的合作夥伴,有可能讓你多奮鬥300天,

所以千萬要慎選你的合作夥伴,如果不能選,那就讓自己變成賽亞人吧!』

 

其實,專案開發當中,有很多時間,真的就如文中所說的『空白的等待』,

如果把一個功能開發當成是一個流程,而等待時間當成變數的話,

我們可以這樣看

int RD Wait =0;
int QA Wait =0;

step1 . RD and QA 等待上游把規格訂好, RD_Wait++, QA_Wait++

step2 . RD and QA 開始撰寫相關文件計畫,及開始寫code,

step3 . QA等待RD把CODE寫好, QA_Wait++

step4 . RD等待QA Report bug, RD_Wait++

step5 . QA等待RD Fixed Bug QA_Wait++

step6 . RD等待QA Regress Bug, RD_Wait++

           step6.1 沒成功,回到step 5

           step6.2 直接到下一步
step7 . bug 修完,程式OK,Close

如果假設,一切順利,就以上的流程來說,

RD_Wait = 3 ;

QA_Wait = 3 ;

但是如果在step6出了問題,那就漂亮了,

這些Wait的結果會很恐怖,如果每次wait都得花一天的話,

那聰明的客倌您自己去算算吧!

那如果這中間,又有些意外的干擾,比方說 上頭看程式不順眼,要改功能,

那就真的是一個很難想像的結果,所以delay這件事情,在程式開發的過程中,似乎就變得稀鬆平常了,

所謂一回生二回熟三回程握握手,多幾次,就變成了習慣。


只是這樣的現象,沒辦法改善嗎?

其實就"理論上"來說,應該是有的,

諸如 縝密的事前規劃、減少功能的變動量、提供強而有力的工具來進行開發...等,這些都看似好像可以改善這問題,

但說真的,大家可忘記一件事情,專案開發的主角,不是你使用的工具、也不是你所開發的東西,

而是那兩撇,沒錯就是 "人"....

至於怎麼改善,我能能想到的就是給予適度的教育訓練,加強能力,把適合的人放在適合的位子,

根據能力進行分工,給予合理的工作內容與環境,我想應該多多少少都有幫助吧!

只是想歸想,現在台灣的就業環境,要找到這樣理想的工作,還真是不簡單啊!

 

 

文章標籤
全站熱搜
創作者介紹
創作者 ksjolin facebook 的頭像
ksjolin facebook

Jo Lin Digital FaceBook

ksjolin facebook 發表在 痞客邦 留言(0) 人氣(106)