Mitos do Desenvolvimento de Software

Excelente apresentação de 2008 de Rodrigo Yoshima sobre os mitos recorrentes do desenvolvimento de software, que serve muito bem como uma introdução à maneira ágil de se fazer software. Estamos em 2010 e ainda há muita gente precisando entender o conteúdo dessa palestra.



Autonomia, Maestria e Propósito

No site do TED, há uma palestra excelente de um cara chamado Dan Pink sobre motivação.

A ideia principal é que motivação intrínseca (que vem de dentro) funciona melhor que motivação extrínseca (que vem de fora) para trabalhos que requerem criatividade. A estratégia tradicional de comando/controle e recompensa/punição funciona apenas em uma faixa bem restrita de circustâncias e destrói a criatividade.

Dan Pink sugere que Autonomia, Maestria e Propósito são os grandes motivadores. Bons trabalhadores do conhecimento precisam de Autonomia para decidir como (e às vezes o que) fazer, buscam Maestria no que fazem (craftsmanship) e querem enxergar Propósito no resultado do trabalho deles.

A palestra é bem fundamentada: é mostrado, por exemplo, o resultado de uma pesquisa financiada pelo Banco Central dos EUA sobre a eficiência de incentivos monetários (bônus, comissões) sobre a produtividade. Os pesquisadores descobriram que, para trabalhos manuais e repetitivos e que requerem um foco bem direcionado, os incentivos monetários funcionam muito bem. Mas para trabalhos que requerem criatividade e análise do todo, incentivos monetários pioram a qualidade das soluções.

Também são mostrados vários outros cases como os famosos 20% de tempo para projetos pessoais da Google, que gerou softwares incríveis como o Orkut e GMail.

Complexidade e emergência

No excelent post Complicado, Complexo ou Caótico?, Giovanni Bassi fala sobre a base teórica dos métodos ágeis: os estudos sobre sistemas complexos. A explicação do que é não-linearidade e no que isso afeta o desenvolvimento de software é muito boa.

Vale a pena dar uma lida!

Na versão original de A New Methodology, Martin Fowler indica o livro  Adaptative Software Development de Jim Highsmith. Nesse livro, o autor aplica idéias da Teoria do Caos (ou sistemas complexos adaptativos) para explicar porque os métodos ágeis/adaptativos são melhores que os métodos tradicionais no desenvolvimento de software.

Também vale a pena dar uma lida! Quem arranjar esse livro, me empresta! 🙂