Ideia

A coesão de um conjunto de fichas e a cobertura daquilo que elas descrevem são dois controles distintos

Info

Escrito originalmente em francês. Traduzido por IA — o sentido foi preservado, não a prosa.

Ideia principal

Quando todas as fichas citadas existem e nenhum link aponta mais para o vazio, o conjunto parece concluído. Não está: um conjunto de fichas que só cita a si mesmo fecha sua rede bem antes de ter coberto o produto. A rede se fechou quando apenas uma minoria dos módulos tinha dado origem a uma ficha, e o controle de cobertura feito em seguida fez aparecer dois objetos centrais do negócio que nada, na rede, exigia.

O controle de fechamento continua bom, desde que se saiba o que ele prova: que o conjunto se sustenta. Ele não diz nada sobre o que não entrou nele, porque não dispõe de nenhum conhecimento do objeto descrito — ele só conhece as fichas.

Dois controles, portanto, e nunca um só. Que o conjunto se sustenta, você verifica olhando as fichas entre si. Que ele está completo, você verifica enumerando o produto.

Por que isso importa

Essa confusão é a mais cara do gênero, porque o controle que falha em medir é também o que dispara sozinho: os links não resolvidos saltam aos olhos, o objeto nunca citado não se manifesta em lugar nenhum.

Ela se transpõe tal e qual para fora das fichas. Uma suíte de testes que passa prova que o código testado se comporta como esperado, não que testamos o que era preciso; um glossário cujos remissivos todos chegam a algum lugar não diz nada sobre as palavras que não estão nele.

Nuances e limites

A distinção só vale se o objeto descrito puder ser enumerado por outro caminho. Sobre um material sem inventário possível — um domínio de pensamento, um corpus aberto —, a cobertura não tem denominador e só o controle de coesão continua disponível.

E a coesão mantém seu valor próprio: um conjunto completo mas incoerente não é mais utilizável do que um conjunto coerente e incompleto.

Questões em aberto

  • Sobre um material sem inventário possível, o que colocar no lugar do controle de cobertura sem voltar a uma impressão de completude?