私は非常に大規模なプロジェクトに取り組んでおり、作成に数年かかり、かなり大きな会社で、全体的なコード品質の向上に向けた作業を行っています。
この文脈で、品質と複雑さを測定するためにどのような種類の指標を使用するのか疑問に思っていました. 私は絶対的な対策を求めているわけではありませんが、時間をかけて改善できる一連の項目を探しています。これは何百ものプロジェクトにまたがるちょっとした大規模な操作であることを考えると (私はもっと小規模なプロジェクトについて尋ねられたいくつかの質問を見てきました)、もっと自動化可能で全体論的なものを探しています。
これまでのところ、次のようなリストがあります。
- 全機能テスト中のコード カバレッジ率
- BVT 障害の再発
- nDepend などのツールに基づく依存関係グラフ/スコア
- ビルド警告の数
- 見つかった/抑制された FxCop/StyleCop 警告の数
- 「キャッチ」ステートメントの数
- 手動展開ステップの数
- プロジェクト数
- どこにも参照されていない「死んだ」コード/プロジェクトの割合
- コード レビュー中の WTF の数
- コードの総行数。層ごとに分類される場合があります