Complejidad ciclomática

¿Qué es la complejidad ciclomática?

La complejidad ciclomática es una medida de complejidad del código fuente que se correlaciona con una serie de errores de codificación. Se calcula desarrollando un gráfico de flujo de control del código que mide el número de rutas linealmente independientes a través de un módulo de programa.

Disminuye la complejidad ciclomática del Programa, disminuye el riesgo de modificación y es más fácil de entender. Se puede representar mediante la siguiente fórmula:

Cyclomatic complexity = E - N + 2*P 
where,
  E = number of edges in the flow graph.
  N = number of nodes in the flow graph.
  P = number of nodes that have exit points

Ejemplo:

IF A = 10 THEN 
 IF B > C THEN 
   A = B
 ELSE
   A = C
 ENDIF
ENDIF
Print A
Print B
Print C

FlowGraph:

La complejidad ciclomática se calcula usando el diagrama de flujo de control anterior que muestra siete nodos (formas) y ocho bordes (líneas), por lo que la complejidad ciclomática es 8 - 7 + 2 = 3