你的每行程式碼值多少錢?

TP_funny發表於2015-02-04
專案#1:傳統的同地協作
第一個專案是由一組程式設計師通過傳統的同地協作來執行的。人數為20(不包括專案經理、分析人員、產品負責人、SCRUM大師等等)。該專案是一個大流量的網路拍賣網站(每天有超過200萬的頁面訪問量)。
程式碼庫的大小約為20萬行,其中15萬是PHP,3萬5是JavaScript,其餘則是CSS、XML以及Ruby等。這20萬行只包括使用cloc.pl的非空和非註釋行程式碼.
這是一個商業專案,所以具體名字我不便透露。
大家在歐洲的同一個辦公室裡,每個人都“朝九晚五”地工作。我們可以一起開會、吃飯、面對面聊天以及通過其他多種非正式方式溝通。所有的任務都使用了JIRA跟蹤。

專案#2:分散式
第二個專案是一個開源的Java產品,通過一個約15人的分散式團隊開發。我們沒有任何的交流也不做任何非正式的溝通。我們都是在Github上討論問題。程式碼庫明顯要小很多隻有大約3萬行,其中約90%Java,其餘則是XML。

成熟的開發
這兩個專案都是託管在Github上的程式碼庫。
兩個團隊都使用了自動化構建、持續整合、靜態分析和程式碼審查。這表明這兩支專案團隊都已經比較成熟。
這兩個專案都滿足了使用者的需求。我提這一點是想強調,這兩個專案的程式碼,都是有價值的。沒有廢物,也幾乎沒有重複的程式碼。

看看專案回報
在這兩個專案中,我的角色是首席架構師。除此之外,我還有許可權訪問兩者的Git程式碼庫。所以我可以知道在某段時間內,比如說三個月時間裡,程式碼庫中新新增(或者改動)了多少行程式碼。
現在,讓我們來看看這些數字。
第一個專案一個優秀的開發人員每年可以拿到大約50,000歐元,也就是約5600美元每月或35美元每小時。第二個專案則只需要對於已完成的任務支付20-35美元每小時。
第一個專案,在三個月內,寫了59000行新的程式碼,並在改變主分支時刪除了29000行,那麼總計就是88000行程式碼。此過程歷時約10000個工時(20程式設計師,三個月,每月170個小時)——相當於約35000美元。因此,每行程式碼的價格為
3.98美元
第二個專案,在同樣三個月時間裡,新程式碼產生了45000行,刪除了9000行,也就是54000行。為了完成這項工作,根據XDSD原則,我們只花了7000美元(約用了350個工時完成了650個任務)。因此,該專案一行程式碼的成本僅僅是:
13美分
$35000 VS$7000,3.98美元VS0.13美元,你有何感想呢?

結論
我將這些資料公諸於眾是為了告訴大家,分散式程式設計比傳統的同地協作團隊更為高效,也更節約資金。你看,0.13美元與3.98美元,相差30倍呢!

怎麼做?
當然,你說你為了達到分散式合作的目的,決定讓你的程式設計師在家工作而不必來辦公室的話,那我就該笑你只會硬搬硬套了。可以實行XDSD這個嚴格的質量原則,整個團隊都應該遵守的原則。
如果這些原則都能應用到位的話——那麼你所需要付出的資金將會減少30倍。
順便透露給大家以下這些專案的成本:
$12-103:crazyontap.com
$15-40:betterembsw.blogspot.nl
超過$5:joelonsoftware.com
如果大家有不同意見,歡迎指教。

譯文連結:http://www.codeceo.com/article/how-much-do-you-pay-per-line-of-code.html
英文原文:How much do you pay per line of code?
翻譯作者:碼農網 – 小峰
來自:部落格園
相關閱讀
評論(2)

相關文章