FC ConcursosFC Concursos

Questão FC373184

Considere o grafo abaixo. A complexidade ciclomática é uma métrica que mede a complexidade de um determinado módulo (uma classe, um método, uma função etc.), a partir da contagem d

Algoritmos e Lógica de Programação

FCC · 2018

Considere o grafo abaixo. 

 

A complexidade ciclomática é uma métrica que mede a complexidade de um determinado módulo (uma classe, um método, uma função etc.), a partir da contagem do número de caminhos independentes que ele pode executar até o seu fim. Um caminho independente é aquele que apresenta pelo menos uma nova condição (possibilidade de desvio de fluxo) ou um novo conjunto de comandos a serem executados. O resultado da complexidade ciclomática indica quantos testes, pelo menos, precisam ser executados para que se verifiquem todos os fluxos possíveis que o código pode tomar, a fim de garantir uma completa cobertura de testes.

(Adaptado de: https://www.treinaweb.com.br/blog/complexidade-ciclomatica-analise-estatica-e-refatoracao/)  

 

Considerando que no grafo acima há 17 arestas e 13 nós, o cálculo da complexidade ciclomática resulta em 

  1. 6
  2. 4
  3. 7
  4. 20
  5. 18
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

Para este grafo, a complexidade ciclomática é obtida pela fórmula clássica para um fluxograma com único ponto de entrada: \(COMP = E - N + 2\), onde E são as arestas e N os nós.

Substituindo os valores dados: \(COMP = 17 - 13 + 2 = 6\). Assim, o resultado da métrica é 6.

Esse valor indica que existem, no mínimo, seis caminhos independentes pelo módulo, ou seja, pelo menos seis testes são necessários para cobrir todos os fluxos possíveis do grafo.

Observação breve: o termo “+2” decorre do fato de considerarmos um único ponto de entrada e saída no fluxograma; em casos com componentes adicionais a fórmula geral inclui o fator correspondente.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo