サイクロマティック複雑度とは?
サイクロマティック複雑度とは、プログラムの制御フローグラフから求める複雑さの指標。エッジ数 − ノード数 + 2 で計算し(連結成分1つの場合)、値が大きいほど分岐が多く、テストに必要な独立経路数も多い。
システムアーキテクト試験の過去問では1回出題されています。
さいくろまてぃっくふくざつど
サイクロマティック複雑度の意味
プログラムの制御フローグラフから求める複雑さの指標。エッジ数 − ノード数 + 2 で計算し(連結成分1つの場合)、値が大きいほど分岐が多く、テストに必要な独立経路数も多い。
サイクロマティック複雑度の具体例
複雑度が20を超えるメソッドを抽出し、条件分岐を別メソッドへ切り出してリファクタリングの対象にする。
サイクロマティック複雑度は試験でどう引っ掛けられる?
行数ではなく分岐の数で決まる。判定条件が増えれば短いコードでも複雑度は上がる。
サイクロマティック複雑度と関連する用語
サイクロマティック複雑度が出た過去問
プログラムの構造的な複雑度を測る尺度としてMcCabeが提唱したサイクロマティック複雑度がある。制御の流れが次のグラフで表されるプログラムのサイクロマティック複…
正解:4
要点:サイクロマティック複雑度はエッジ数−ノード数+2
サイクロマティック複雑度は制御フローグラフのエッジ数eとノード数nから e-n+2 で求める。示されたグラフはエッジが7本、ノードが5個なので、7-5+2=4となる。この値は、分岐の多さの目安であり、必要な独立した経路の数にも対応する。
出典:令和7年度 春期 システムアーキテクト試験 am2 問8(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。