アーキテクチャ用語集一覧に戻る
ホーム > システムアーキテクト > 用語集 > サイクロマティック複雑度(循環的複雑度)と保守性指標
テスト計画・レビュー・品質保証・セキュリティ 重要度:★★出題: AM2・PM2

サイクロマティック複雑度(循環的複雑度)と保守性指標

さいくろまてぃっくふくざつど / Cyclomatic Complexity (McCabe)
プログラムの制御フローグラフにおける線形独立な経路の数を数値化(E - N + 2P または分岐判定数 + 1)し、構造の複雑さと必要な最小テストケース数を評価するメトリクス。

3行速習ポイント

  • プログラムの制御フローグラフにおける線形独立な経路の数を数値化(E - N + 2P または分岐判定数 + 1)し、構造の複雑さと必要な最小テストケース数を評価するメトリクス。
  • 複雑度が10を超えるモジュールはバグ混入率が急増するため、メソッド分割やポリモーフィズム(Strategy/Stateパターン)によるリファクタリング対象とします。
  • 試験対策:午前IIの計算問題(辺の数E - ノード数N + 2)で頻出であり、午後IIでもコード品質・保守性基準の定量指標として活...

図解

図サイクロマティック複雑度 の設計・評価構造
Step 1
制御フローグラフ(E - N + 2)
業務要件・システム制約の整理と構造化
↕
Step 2
分岐数 + 1
複雑度が10を超えるモジュールはバグ混入率が急増するため、メソッド分割やポリモーフィズム(
↕
Step 3
独立経路テストの最小ケース数
静的解析ツールでサイクロマティック複雑度15以上のモジュールを自動検知して分割を義務付け、

概要と本質

プログラムの制御フローグラフにおける線形独立な経路の数を数値化(E - N + 2P または分岐判定数 + 1)し、構造の複雑さと必要な最小テストケース数を評価するメトリクス。複雑度が10を超えるモジュールはバグ混入率が急増するため、メソッド分割やポリモーフィズム(Strategy/Stateパターン)によるリファクタリング対象とします。

重要ポイント・コア概念

  • 制御フローグラフ(E - N + 2)と分岐数 + 1の正確な定義と適用場面の理解
  • 独立経路テストの最小ケース数および複雑度閾値(10以下)によるリファクタリングを踏まえたシステム方式・機能仕様の設計
  • 定量的効果:静的解析ツールでサイクロマティック複雑度15以上のモジュールを自動検知して分割を義務付け、保守改修時のバグ混入密度を半分以下に低減

午後I記述・午後II小論文試験での攻略ポイント

午前IIの計算問題(辺の数E - ノード数N + 2)で頻出であり、午後IIでもコード品質・保守性基準の定量指標として活用できます。

小論文で使える実践フレーズ・キーワード(クリックでコピー)

この用語が出題された過去問を解く(1分演習)

即時アウトプットで定着
システムアーキテクト 過去問演習で実践力を鍛える

理解を深める推薦副読本

この用語の背景理論・実務動向を深く理解し、午後II小論文の説得力を劇的に高める必読書

PR
ソフトウェアアーキテクチャの基礎 エンジニアリングに基づく体系的アプローチ
戦略・名著セレクションソフトウェアアーキテクチャの基礎 エンジニアリングに基づく体系的アプローチマーク・リチャーズ, ニール・フォード 著 / オライリー・ジャパン
ISBN: 4873119820
🏗️ EA・SoR/SoE・モダナイゼーションの名著

ソフトウェアアーキテクチャの基礎 エンジニアリングに基づく体系的アプローチ

マーク・リチャーズ, ニール・フォード 著 / オライリー・ジャパン

アーキテクチャ特性(非機能要件)の定義と優先度付けモジュラリティ、マイクロサービス、イベント駆動設計のトレードオフレガシーシステムの段階的刷新(モダナイゼーション)設計
なぜこの用語の理解に役立つのか

『サイクロマティック複雑度(循環的複雑度)と保守性指標』の背景にある理論と業界動向を体系的に理解し、実務や小論文に直結する戦略的視点を深掘りできます。

午後II小論文(ST論文)への応用・加点ポイント

エンタープライズアーキテクチャ(EA)やSoR/SoE連携、クラウド移行のアーキテクチャ方針を決定した根拠(トレードオフ判断)を論述する際の強力な武器になります。

※価格・在庫状況は各ECモールの最新情報をご確認ください(もしもアフィリエイト経由)