天天看點

如何提高開發效率 (轉)

原文連結:  http://www.hccar.com/Content,2009,1,12,104.aspx

做任何事都需要有職業目标和規劃,做技術更需如此,我看到有很多程式員天天都在抱怨,可天天在敲着if、else代碼,根本沒有思考!

兄弟,請靜下來,思考思考!

業務心裡說:這幫技術真垃圾,做點東西那麼費勁,好久做出來了發現到處都是錯誤!

技術心裡說:這幫業務太惡劣了,就憑着一張嘴皮子到處忽悠,一點技術都不懂!

這是我們經常見到的情形,技術和業務互相較勁,最終導緻項目失敗,大家一起被老闆K!面對這種情形,我也經常思考:Google怎麼處理的?Microsoft怎麼處理的?Adobe怎麼處理的?後來思考的結果就是:他們的情形與我們不一樣,因為他們大多都有比較完善、比較理想的團隊,他們有CTO、他們有CIO,可我們呢?什麼也沒有,從架構、調研、編碼、測試到實施就一兩個兄弟,怎麼辦?難道我們就等死,就這麼小工作坊下去?答案顯然不能如此!

上周被一個朋友請到他們公司去給他手下的程式員做教育訓練,那些程式員大多希望我能講一些先進的技術、先進的架構,可到最後我卻講了大量的業務操作和溝通手段,對于具體技術,我一點都沒講,因為在我看來,技術人員的升華不是從技術上,而是在技術之外的東西,那就是業務和溝通手段!我的原則是:假如在一個公司,我無法接觸到業務層、成天憑空想象的在做技術,我肯定會離開,因為不了解業務層的技術人員是肯定做不好技術的!

一提到程式員,大家通常想象到幾個名詞短語:滿臉呆滞、不修邊幅、戴着深度眼鏡、不善言辭、一聊起技術就唾沫橫飛!其實這是大部分人對技術人員的一種誤解,難道成天西裝革履、談吐不凡的人就不能是技術嗎?

我們需要整理、整理、再整理!一旦東西梳理順了,其他的事情就好辦了!如下是我簡單整理出的六大工具:我稱之為六脈神劍!

1、需求管理工具

    技術說業務的需求老變,業務說技術怎麼老是這麼慢,你們成天坐在電腦前面幹什麼?業務交給技術的需求是什麼樣的?技術接收過來有沒有做出整理?有沒有歸類?有沒有評估?有沒有将需求彙總給業務,然後一條一條的過濾處理?将這些問題逐一問出來之後,業務和技術還會打架嗎?業務會不了解技術嗎?技術會不了解業務嗎?

2、公用代碼管理工具

   同樣一個子產品,第一次開發需要1天,第二次開發仍然需要1天,第三次開發仍然需要1天,我們能不能快點?公用代碼為什麼不管理起來,開發手冊為什麼自己不去總結?代碼為什麼不去重構?想清楚這些問題,效率還會低嗎?

3、産品測試工具

   做出東西來你測試過了沒有?怎麼測試的?性能呢?漏洞呢?測試的時候用了客戶的真實資料沒有?還是随便敲些“ABC”來測?

4、BUG報告管理工具

   測試之後,相關BUG有沒有進行彙總,某一BUG出現頻率極高時有沒有集中火力攻克呢?還是年複一年,BUG不斷?

5、項目計劃工具

   老闆下發什麼任務就做什麼,老闆下發一系列任務時,你做了優先級評估沒有?評估之後有沒有報告給老闆?有沒有書面東西記錄?進度現在如何?有多少風險系數?什麼時候可以開始實施?什麼時候開始寫幫助文檔?

6、個人工作日志管理工具

   天天都在敲代碼,天天都在接受需求,天天都有新功能開發,天天都有老子產品維護,你做了日志記錄沒有?你渾渾噩噩的腦袋記得住那麼多東西嗎?同志們,記錄下來吧,做日志吧!

有了六脈神劍能橫行天下嗎?答案顯然是:NO!這僅僅是工具而已,我們要去嘗試,要學會用!見過很多程式員懂得非常多,一和客戶打交道時,有時也是唾沫橫飛,可每當客戶說一個新東西時,他馬上陷入了資料庫關系設計中,陷入了代碼編寫的環境中,結果客戶在那裡講,可他的腦子卻在寫程式,可憐的客戶講了好半天一點都沒起到作用!

兄弟,請跳出技術思維,暫時忘掉資料結構吧,暫時忘掉邏輯關系吧,與技術無關的統統忘掉!

最後我想到一句話:請做有價值的技術吧!不要跟我說前途,也不要跟我說趨勢,我們隻要價值!