Software & Research Tools

Ferramentas e método

Software pode fazer parte do método científico.

Quando um resultado depende de código, o código é parte do método — e deve ser tratado com os mesmos padrões de rigor que qualquer outro componente da investigação: identificado, documentado, testado e verificável.

O problema

Software de investigação é frequentemente um produto sem procedência.

Muito do software usado em investigação nasce como um script local, cresce sem versão e morre sem documentação. Quando um resultado depende desse código, a sua reprodução exige reconstruir o instrumento a partir de memórias e ficheiros sem identificação. Nestas condições, “o programa calculou” é uma afirmação sem procedência — e um resultado sem procedência não pode ser verificado.

As práticas comuns da indústria de software — versionamento, testes, revisão — foram criadas para gerir exactamente este problema. A investigação não precisa de reinventá-las; precisa de as adoptar com a disciplina de quem sabe que o output é conhecimento.

O que exigimos das ferramentas

Sete práticas que transformam código em instrumento.

Cada prática responde a uma falha específica; em conjunto, permitem que um terceiro inspeccione o caminho entre os dados e o resultado:

Versionamento

Cada alteração ao código fica identificada com autor, data e descrição. Quando um resultado é produzido, é possível saber exactamente que versão o produziu — e reproduzi-lo com a mesma versão. Sem isto, dois resultados obtidos com versões diferentes parecem comparáveis e não são.

Documentação

O que o software faz, como se instala, como se usa e quais são os seus limites. A documentação é o contrato entre quem constrói e quem usa — e a razão pela qual uma ferramenta sobrevive à saída de quem a escreveu.

Testes

Verificações automáticas que confirmam que o código faz o que declara fazer — e que continuam a fazê-lo depois de cada alteração. Um código sem testes não está “certo”; está apenas ainda não confrontado.

Reprodutibilidade

Mesmos dados, mesma versão, mesmos parâmetros: mesmo resultado. A reprodutibilidade não é um valor estético; é o teste mais elementar de que o software faz o que se pensa que faz.

Auditabilidade

Terceiros conseguem inspeccionar o código e a sua história. Fechamento e opacidade podem ser legítimos noutros contextos; na investigação, limitam a verificação e devem ser justificados como excepção.

Rastreabilidade

Cada resultado pode ser ligado às versões, parâmetros e dados que o produziram. É a ligação que permite auditar um número até às condições que o geraram.

Automatização

Pipelines que executam análises de forma consistente, sem passos manuais que variam de execução para execução. Automatizar não é apenas ganhar tempo — é remover uma fonte de erro e de variabilidade não documentada.

O que isto exige

Tempo e disciplina que nem sempre estão previstos nos projectos. O reconhecimento deste custo faz parte da honestidade: ferramentas sem estes cuidados são protótipos, e devem ser apresentados como tal.

O que publicamos

Nada é disponibilizado sem versão, documentação e estado identificado.

As ferramentas associadas a este trabalho são apresentadas com o seu estado de desenvolvimento explícito — conceito, protótipo, em desenvolvimento, em validação — e com a documentação disponível para cada uma. Não publicamos ficheiros sem documentação nem anunciamos funcionalidades que não estejam implementadas.

O projecto principal neste momento é a Cognitive Assessment Platform, descrita na sua própria página com os seus limites e critérios de valor.

Riscos e limitações

Software tem erros. A questão é se os erros são detectáveis.

Todo o software tem defeitos; o diferenciador é a capacidade de os encontrar e corrigi-los: testes, revisão, uso registado. Testes cobrem o que foi antecipado — comportamentos não antecipados continuam a escapar. A humildade perante isto faz parte do método.

Nota de estado. Nenhuma ferramenta disponibilizada neste site deve ser usada para decisões sobre pessoas sem validação específica para esse fim.

Critério de valor

Uma ferramenta vale o que pode ser verificada.

Uma ferramenta científica só tem valor real quando outro investigador consegue inspeccioná-la, executá-la, reproduzir os seus resultados e citá-la com a confiança de que os números têm procedência. Estas quatro operações — inspeccionar, executar, reproduzir, citar — são o teste completo.

Continuar a explorar

Ligações dentro deste trabalho.

Scroll to Top