您如何使用函數指針的度量作爲度量的代碼行?函數指向kloc比率作爲軟件度量標準...「調整名稱」度量標準?
它讓我想起了舊的遊戲節目「名稱調」。 「我可以用三個音符來命名這首歌!」我可以用0.1 klocs寫這個功能!這有用嗎?
它肯定會促進圖書館的使用,但是你想要什麼?
您如何使用函數指針的度量作爲度量的代碼行?函數指向kloc比率作爲軟件度量標準...「調整名稱」度量標準?
它讓我想起了舊的遊戲節目「名稱調」。 「我可以用三個音符來命名這首歌!」我可以用0.1 klocs寫這個功能!這有用嗎?
它肯定會促進圖書館的使用,但是你想要什麼?
我認爲這是一個可怕的想法。就像他們編寫的代碼行支付程序員一樣糟糕。
一般來說,我比較詳細的代碼更喜歡簡潔的代碼,但只要它仍然清楚地表達程序員的意圖。每個kloc最大化功能點將鼓勵每個人儘可能簡短地編寫他們的代碼,這不僅僅是簡潔而且隱藏起來。它還會鼓勵人們將相鄰的代碼行合併到一行中,即使所加入的代碼不合意,也只是爲了減少代碼行數。允許的最大線路長度也會成爲問題。
如果您嚴格執行代碼標準,就像使用報表的頁面要求那樣,KLOC是可以接受的:不要將五個語句放在一行上,也不要將大部分空白從代碼中刪除。
我想你可以決定它對你的環境的有效性的一種方法是查看幾個不同的應用程序和模塊,粗略估計代碼的質量,並將其與代碼的大小進行比較。如果您可以證明您的組織中代碼質量是一致的,那麼KLOC並不是一個糟糕的指標。
在某些方面,您將面臨與任何類似指標相同的戰鬥。如果您計算功能點或功能點,或只是功能或模塊,您仍然需要以某種方式對它們進行加權。最終,您需要對您要收集的客觀數據進行某種主觀補充。
「您如何使用函數指針的度量作爲度量的代碼行?」
不要問這個問題。以上比率是 - 對於給定的語言和團隊 - 一個簡單的統計事實。它趨向於一個小的標準偏差的平均值。
有很多自由度:你如何計算功能點,你使用的是什麼語言,團隊如何(總體)聰明。如果你不改變這些東西,價值保持穩定。
將幾個項目結合在一起之後,對於您的首選語言/框架/團隊組織中的1200個功能點將包含12,000行代碼,您有一個堅實的期望。
KSloc/FP是一個純粹的統計觀察。顯然,還有一件關於這件事的事情正在困擾着你。你能在你的問題上更具體嗎?
所有指標都很糟糕。我的理論一直是,如果你有有有他們,然後使用最簡單的東西,你可以收集他們,完成它和重要的事情。
這通常是指沿
grep -c ";" *.h *.cpp | awk -F: '/:/ {x += $2} END {print x}'
如果你正在尋找一個「指標」來追蹤代碼efficency線的東西,不要。如果你堅持,再次嘗試一些愚蠢但很容易,如源文件的大小(見上面的grep命令,沒有awk管道)或McCabe(帶有計數器程序)。
函數指向代碼行的度量標準實際上用於生成語言級別圖表(實際上,它是函數指向語句),以近似瞭解編程語言的強大程度。這裏是一個例子:http://web.cecs.pdx.edu/~timm/dm/functionpoints.html
我不會推薦使用這個比例的其他任何東西,除了高水平的近似值,如語言水平圖。
促進圖書館的使用是一件好事,但要記住的另一件事是,當你建立圖書館時,你會失去這個比例,並且只會隨着時間的推移節省分紅。豆櫃不會理解這一點。
我個人希望看到一個函數指向ABC度量比 - 因爲我很好奇ABC度量(它指示大小和包含作爲信息一部分的複雜度)如何相關 - 也許是線性的,也許是指數的, etc ... www.softwarerenovation.com/ABCMetric.pdf