Cada parte do conhecimento deve ter uma representação única, não ambígua e definitva dentro do sistema.
Nesse contexto, Hunt enfatiza o impacto negativo da duplicação e consequentemente a importância de usar DRY, no wiki do repositório de padrões de Portland:
A duplicação (seja ela acidental ou proposital) pode levar a pesadelos de manutenção, além de atrapalhar a refatoração e gerar contradições lógicas.
A duplicação e a possibilidade de contradições podem surgir em qualquer lugar: na arquitetura, em requisitos, código ou documentação. Os efeitos podem variar desde falhas de implementação de código, à confusão dos desenvolveres; até a falha completa do sistema.
Pode-se argumentar que a maior dificuldade na remediação do problema do Ano 2000, veio da falta de uma simples abstração de datas dentro de um sistema; o conhecimento das datas e o seu tratamento eram espalhado por muitas partes.
Embora o DRY pareça um princípio obrigatório na engenharia de software, Anders Munch alerta que há exceções: