共用方式為


程式代碼計量 - 可維護性索引範圍和意義

問題:可維護性索引已重設為介於 0 到 100 之間。 為何及如何進行此重設?

計量原本的計算方式如下:Maintainability Index = 171 - 5.2 * ln(Halstead Volume) - 0.23 * (Cyclomatic Complexity) - 16.2 * ln(Lines of Code)

使用此公式表示其範圍從 171 到未系結的負數。 由於程式代碼傾向於 0,因此顯然很難維護程式代碼,而程式代碼在 0 與某些負值之間的差異並不實用。 由於負數的實用性下降,以及為了盡可能保持指標的清晰,我們決定將所有 0 或更小的索引視為 0,然後將 171 或更小的範圍重新定義為 0 到 100。 基於這個理由,我們使用的公式是:

Maintainability Index = MAX(0,(171 - 5.2 * ln(Halstead Volume) - 0.23 * (Cyclomatic Complexity) - 16.2 * ln(Lines of Code))*100 / 171)

此外,我們決定對門檻採取保守的態度。 預期是,如果索引顯示為紅色,那麼我們會高度相信程式代碼有問題。

針對臨界值,我們決定將這個 0-100 範圍 80-20 細分,以保持低雜訊等級,而我們只標記可疑的程式代碼。 我們已使用下列閾值:

索引值 顏色 意義
0-9 程式代碼的維護性低
10-19 黃色 程式代碼的適中維護性
20-100 程序代碼的良好可維護性