Deliberate Discovery (descoberta intencional) é o nome dado por Dan North ao seu modelo pragmático para maximização dos resultados em projetos de software. Segundo este modelo, devem ser concentrados os esforços para remover ou reduzir as restrições que limitam a produtividade, ou seja, deve-se focar nos pontos que realmente precisam de atenção.
Em seu primeiro post de introdução ao modelo, North explica que "a capacidade de aprender é a verdadeira restrição" e que "o desconhecimento sobre aspectos relevantes do problema é o único grande impedimento à produtividade." Um experimento sugerido por North, proposto inicialmente por Ashley Johnson, ilustra bem a ideia geral:
Imagine um projeto recente ou um conjunto completo de tarefas da sua equipe que seja representativo (e de preferência que tenha durado alguns meses). Quanto tempo esse trabalho demorou para ser concluído de ponta a ponta, da concepção até a entrega? Agora imagine fazer o mesmo projeto novamente, com a mesma equipe e as mesmas condições iniciais, com a diferença que sua equipe já sabe tudo o que aprendeu durante o projeto. Quanto tempo levaria para concluir o projeto nessa segunda vez?
Isso nos remete ao ponto principal do modelo de Dan North: como obter ganhos reais de produtividade, atuando intencionalmente na aceleração do processo de descoberta daquilo que “não sabemos que deveríamos saber”, que pode ser entendido como um "desconhecimento de segunda ordem".
Em oposição a esse modelo, está o que ele chama de “descobertas acidentais”, que ocorrem por acaso, muitas vezes depois de já terem causado grande impacto negativo sobre projeto.
Segundo North, “o desconhecimento atua em diferentes eixos”: podemos desconhecer aspectos fundamentais em diversas áreas que possuem influência direta no resultado do projeto.
Pode-se desconhecer aspectos relevantes das tecnologias sendo utilizadas, a amplitude de opções tecnológicas disponíveis, desconhecer uma abordagem diferente para a solução do problema ou uma melhor forma de articulá-lo – que poderia tornar sua solução mais simples e óbvia. Pode-se não conhecer sobre as pessoas em sua equipe, suas aspirações, medos, motivações, seus relacionamentos uns com os outros dentro e fora da organização. Pode-se desconhecer sobre as restrições organizacionais de seu cliente, sobre eventuais integrações com terceiros, sobre as pessoas com as quais se deveria estar trabalhando para melhorar o relacionamento...
Mas como então atacar um problema de que nem ao menos de sua existência somos conscientes? North destaca que temos que superar uma tendência natural das pessoas de desviar sua atenção de problemas como esse, negando instintivamente a condição de “desconhecimento do desconhecimento”. (Este processo é explicado em mais detalhes no livro "A Mind of Its Own" da psicóloga australiana Cordelia Fine).
North ilustra a tendência de desviar-se do desconhecido citando a popular história do bêbado que perde suas chaves em um local escuro e passa a procurá-las apenas sob a luz de um poste, por ser este o único lugar em que poderia enxergar as chaves.
Nessa linha, North faz uma forte crítica à nossa atual obsessão pelas técnicas de planejamento ágil, como histórias de usuário e estimativas por pontos ou dias ideais. Estas técnicas, quando utilizadas de maneira equivocada, produzem uma falsa sensação de conhecimento sobre as dimensões do problema sendo resolvido. Criam uma luz artificial que nos impede de buscar o entendimento sobre as verdadeiras restrições que estão limitando a produtividade.
Na sua apresentação realizada na QCon São Francisco deste ano, Dan North resumiu a prática da descoberta intencional da seguinte maneira:
- Presuma que você está sempre trabalhando dentro do desconhecimento
- Presuma que um eixo específico do seu desconhecimento é a sua restrição atual
- Melhore a produtividade atacando ativamente o desconhecimento
E prosseguiu através da exposição de uma série de técnicas que tem aplicado em seus próprios projetos e que trazem na essência a criação de um ambiente em que o aprendizado é otimizado. Dessa maneira, “as entregas (ou a produtividade) acontecerão sozinhas”. A lista completa das técnicas sugeridas pode ser encontrada nos slides da apresentação; aqui mostramos uma seleção dessas técnicas:
- Contanto que o desconhecimento esteja sendo reduzido, não tema a "parálise na análise" (analysis paralysis).
- Siga princípios de etnografia: investigue as reais preocupações dos usuários e clientes, e também identifique com o que deveriam se preocupar.
- Faça o design de forma a permitir descobertas e aprendizado: identifique o que deu errado e o que está acontecendo de errado agora.
- Coloque uma versão do sistema em produção o quanto antes: coloque qualquer coisa em produção.
Seja através dessas ou de outras técnicas, North apresenta acima de tudo um caminho de muitas possibilidades e antecipa que “às vezes não será possível conhecer o desconhecido”, mas conclui que “para todos os outros casos, existe a descoberta intencional”.