2016-10-28 14 views
0

私は、ドキュメンテーションの不足、テストカバーの欠如、複雑さ、デザインルールの不足など、巨大な「スパゲッティコード」に直面しています。コードをデフォルトのソナースキャンで解析させ、驚くべきことに私の場合、メインテナンスは本当に素晴らしいスコアで、技術的負債は1,1%です!現実は、ほとんどの変更が新しいバグを導入することを示しています。Sonarqubeの保守性の結果には何が影響しますか?

私はかなり難解です。実装のいくつかの特殊性がこのスコアを説明できるかどうか疑問に思っています... 1実装)では、reflexionとservice locatorパターンを使用します。

最終的に品質向上に関連する指標が他にもありますか?

+0

プロジェクトの保守性評価(レターグレード)は何ですか? –

+0

sqaleピラミッドウィジェットを追加すると役立つかもしれません。 Sonarのデフォルトルールでは、組織内のコーディング慣行の違反を探しているわけではないかもしれません... http://www.sqale.org/blog/the-sqale-pyramid-a-powerful-indicatorピラミッドを理解する。 – Shiva

+0

@ G.Ann-SonarSourceTeam:Maintainability RatingはA. –

答えて

2

保守性評価は、コード・ベースでのコード・スメルのすべての問題を、現在の状態でコードを書き込む予定時間に対して修正するための推定時間の積です。

また、コードベースのバグと脆弱性も見てください。あなたの特定のポイント(と、私たちは、Javaの話をしていると仮定)について

:ドキュメントの欠如を知ら

  • - のJavadocを探しデフォルトのプロファイル内のルールがあります。説明とパラメーターの値を読んで、見つからないものが何であるかを調べることができます。
  • テストカバレッジの欠如 - この検出には現在「穴」があります。 のクラスのカバレッジである場合、カバレッジ率を計算するときに、カバレッジが必要な/計算すべきラインを計算するときにクラスは考慮されません。それは "すぐに"修正する必要があります。最初の手順は6.2のプラットフォーム側に表示されますが、言語プラグインの変更を適用する必要があります。
  • 複雑さ - これにはルールがあります。彼らがあなたが思っていると思っているものが見つからない場合は、それらの(調整可能な)しきい値を見てください。
  • 設計ルールの欠如 - この問題に対処するかもしれない唯一のルール(建築制約)
    1. はデフォルトで除去
    2. ない上に予定
    3. は、最新のバージョンから落下廃止されましたプラグイン
  • 反射の使用 - 現在これを検出するルールはありません
+0

これは実装に関する素晴らしい洞察です – Shiva

+0

ありがとうございましたG. Ann!ソナーから得ようとしている情報をよりよく理解することができます。 –

関連する問題