再說千行代碼缺陷率


今天在新浪微博上又看到有人討論千行代碼缺陷率,還討論的很細致——怎么計算,怎么統計....

引用郭德綱的一句話:統計那玩意兒沒用,一句話解決你心中所有疑惑。(原文是:學那玩意兒沒用)

 

首先我們來看看,千行代碼缺陷率是怎么定義的?

    缺陷率 = 缺陷數量/ (代碼行數/1000)

然后看組織如何關心這個數字

    越小越好

那么結論是什么?

    沒有能力減少缺陷數量,就加大代碼行數唄

一些常見的招數

        把 {單獨占一行

       把 }else { 寫成 

            } 

            else

           {

   上面這些還只是影響到代碼可讀性,下面這些就有些奇葩了。

         把定長循環分開寫,寫成順序方法

         把配置文件的行數統計進去

   而下面這些就令人發指了

        復制、粘貼

        重新發明輪子  

 

-----------------

      我們不怎么采用這些招數  ,可以用這個數字了吧? 

      統計“千行代碼缺陷率”和“每日生產代碼行數”一樣,都是沒經過大腦思考,而直接打算把優秀員工踢出團隊的懶人式管理方式。

      因為優秀的程序員是通過減少代碼行數來增加功能的。

     雖然沒有明確鼓勵增加代碼行數,但是這個計算結果對於優秀的員工來說是相當的不公平。它隱含的推廣了“盡量增大代碼行數”這個意思。

----------------

      我們團隊的人能力都差不多,總可以用這個來衡量吧?

      這句話的意思是在暗示“我們的團隊都很平庸”嗎?如果是這樣,那就更不要用這個數字了。因為平庸的人無法像優秀的人那樣

          —— 爺寫的太高深你們看不懂  ——來自我安慰。他們經常會在這樣的毫無根據的數字面前自信心被打擊。

-----------------

      公司管理體制要求,我們得統計吧?

       不可否認,這么明顯的一個錯誤,還是有很多公司在犯,而且不犯這個錯誤都不好意思跟人打招呼。(還是以前那句話,SQA/PPQA都是一些不想、不願、不能寫代碼的人從事的,別指望他們做什么正確的事。我用一個比較惡毒的詞兒形容這些人:Salary Thief)

       如果你的公司還在犯這個錯誤,那么你有若干種選擇:

                  1. 證明這個是錯誤的,然后從公司統計數據中抹掉它

                  2. 忍受,然后假裝自己很平庸,寫很長的代碼來稀釋缺陷密度

                  3. 離職,尋找一家不統計這個數字的公司

           也許還有更多的選擇。

       推薦看看 張松著的 《精益軟件度量》

 

 

 

    

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM