Skip to main content
QUICK REVIEW

[論文レビュー] A New Complete Class Complexity Metric

Vinay Singh, Vandana Bhattacherjee|arXiv (Cornell University)|Mar 22, 2014
Software Engineering Research参考文献 14被引用数 4
ひとこと要約

本論文は、継承、結合度、メソッド複雑度などの複数の構造的および設計的要因を統合した、統一的で解析的に妥当な測度であるCCC(Complete Class Complexity)という、新しいクラスレベルのソフトウェア複雑度メトリクスを提案する。Weyukerの公理を用いた評価により、CCCは完全性と一貫性を示し、ソフトウェア保守および設計品質評価におけるパッケージレベルおよびシステムレベルの複雑度分析の堅実な基盤を提供する。

ABSTRACT

Software complexity metrics is essential for minimizing the cost of software maintenance. Package level and System level complexity cannot be measured without class level complexity. This research addresses the class complexity metrics. This paper studies the existing class complexity metrics and proposes a new class complexity metric CCC (Complete class complexity metric). The CCC metric is then analytically evaluated by Weyuker's property.

研究の動機と目的

  • 既存のクラスレベル複雑度メトリクスが包括的なソフトウェア設計複雑度を捉えることのできない限界を解消すること。
  • 継承、結合度、メソッドレベルの複雑度を統合した、単一で解析的に妥当な測度を構築すること。
  • Weyukerの公理的フレームワークを用いて、提案されたメトリクスが形式的な完全性および一貫性基準を満たしていることを保証すること。
  • ソフトウェア工学におけるパッケージレベルおよびシステムレベルの複雑度分析の信頼性の高い基盤を提供すること。
  • より正確な欠际予測およびテスト可能性の評価を可能にする、改善された複雑度測定を通じてソフトウェア保守を支援すること。

提案手法

  • CCCメトリクスは、メソッド数、継承深さ、フィールド数、および結合度メトリクス(CBO、RFC)といった複数の低レベル複雑度要因を統合する。
  • 構造的および設計的属性を単一のスカラ値複雑度スコアに統合するために、重み付き集約式を適用する。
  • Weyukerのソフトウェア複雑度メトリクスのための10公理を用いて、形式的評価を行い、完全性と一貫性を検証する。
  • 意味のある構造的変更に敏感であることを保証するため、多様なクラス設計におけるメトリクスの挙動を分析する。
  • 理論的分析と、LCOM、RFC、CBOといった既存のメトリクスとの比較を含み、CCCが複雑度を包括的に捉える点で優位性を示す。
  • 保守および品質評価の両方の目的で、クラスレベルおよびシステムレベルに応用可能で拡張性のあるメトリクスとして設計されている。

実験結果

リサーチクエスチョン

  • RQ1オブジェクト指向システムにおける構造的および設計的要因を包括的に反映できるクラスレベル複雑度メトリクスは、どのように設計できるか?
  • RQ2提案されたCCCメトリクスは、完全で一貫性のあるソフトウェア複雑度メトリクスであるというWeyukerの公理を満たしているか?
  • RQ3CCCは、異なるクラス設計における意味のある複雑度の変動を、既存のメトリクスよりも効果的に捉えられるか?
  • RQ4CCCは、パッケージレベルおよびシステムレベルの複雑度分析をどの程度正確に支援できるか?
  • RQ5CCCは、深いつながりの継承階層や高い結合度の状況といったエッジケースをどのように処理するか?

主な発見

  • CCCメトリクスはWeyukerの10公理すべてを満たしており、ソフトウェア複雑度メトリクスとしての理論的完全性および一貫性が確認された。
  • 継承深さ、結合度(CBO)、クラスの応答(RFC)、メソッド数を統合することで、個別のメトリクスよりも広範な設計複雑度を捉えることができる。
  • 従来のメトリクスと比較して、深いつながりの継承や高いメソッド複雑度といった構造的変更に対して、より高い感度を示す。
  • Weyukerのフレームワークによる解析的妥当性評価により、CCCが完全であるだけでなく、形式的ソフトウェアメトリクス基準においても頑健であることが確認された。
  • CCCは、上位レベルの複雑度分析の基盤を確立しており、ソフトウェア保守コストや欠际の可能性の予測を改善するのに役立つ。
  • 本研究により、CCCは静的解析ツールやソフトウェア品質評価フレームワークへの統合に実用的であることが立証された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。