Complexidade Ciclomática

1855 palavras 8 páginas
Complexidade Ciclomática

Esta é provavelmente a métrica complexa mais usada em engenharia de software e continua a ser um tema recorrente de discussão. Ainda assim continua a ser um assunto obscuro para muitos programadores, coordenadores e gestores. A complexidade ciclomática foi definida por Thomas McCabe (em finais de 1976) e, de uma forma resumida, mede a complexidade estrutural de um processo. Traduzindo para o mundo da arquitetura de software a CC mede a complexidade estrutural de um método, de uma classe ou de qualquer unidade lógica que possa ser encontrada num sistema de software.

Complexidade Ciclomática – CC
A CC define-se como o somatório de todas as decisões acrescido de 1. CC = Número de decisões + 1. Entenda-se por decisão todas as operações condicionais:

Operação
Efeito no CC if +1 else if
+1
else
0
select case
+1 para cada caso select default
0
for/foreach
+1
do while
+1
do
0
while
+1
catch
+1

Se analisarmos com atenção o seguinte exemplo de código destas estas regras:

public boolean metodo(int param1, int param2) { if (param1 > 0 && param2 > 0 && param1 < param2 ) { return true; } return false;
}

Verificamos que a complexidade das operações lógicas não é contabilizada, e, no entanto, é um fator fundamental na complexidade do método. Assim surge uma variação à CC denominada de Complexidade Ciclomática Extendida – CC2 ou ECC.

Complexidade Ciclomática Extendida – CC2
A CC2 não é mais que a extensão da CC por adição dos operadores booleanos.
CC2 = CC + Número de operadores booleanos

Existem mais variantes à CC mas a CC2 é a métrica mais usada e é sobre ela que a restante análise incide. A análise da CC2 é tão útil para o programador como para o coordenador ou gestor. É assumido que qualquer programador deve sempre procura melhorar: codificar melhor, de forma mais eficiente, de forma mais estruturada e procurando sempre produzir código de qualidade. O uso da CC2 é precisamente

Relacionados

  • Banco de Dados
    973 palavras | 4 páginas
  • 3 - teste de software
    2170 palavras | 9 páginas
  • Engenharia
    1592 palavras | 7 páginas
  • Novo A Documento Do Microsoft Office Word
    3437 palavras | 14 páginas
  • Trabalho Teste De Software
    725 palavras | 3 páginas
  • TestedeSoftware
    1482 palavras | 6 páginas
  • 890887654666679
    3884 palavras | 16 páginas
  • ANÁLISE COMPARATIVA DE FERRAMENTAS GRATUITAS PARA TESTE DE SOFTWARE ORIENTADO A OBJETOS
    7287 palavras | 30 páginas
  • Teste de software
    4256 palavras | 18 páginas
  • Ferramenta de análise de estruturas básicas em linguagem pascal para fornecimento de métricas
    8568 palavras | 35 páginas