terça-feira, 13 de outubro de 2009

Quem são seus ídolos na engenharia de software?

Quem foi meu aluno já me viu fazer esta pergunta. Em geral na graduação eu pergunto quem são os ídolos na computação como um todo. A pergunta é exatamente porque eles conhecem pouquíssimos cientistas ou engenheiros que foram os responsáveis pelo estado da arte da nossa disciplina hoje. Então agora vai a pergunta para vocês: dentro da engenharia de software que ainda é uma disciplina na sua infância, quem são os seus ídolos? Quem você admira profundamente? 

Por exemplo, é impossível estudar computação, programação e não admirar Knuth. Aliás, conhecem o trabalho dele no livro 3:16? E no livro "Things a Computer Scientist Rarely Talks About"? Pois é, a contribuição do Knuth é muito maior do que "The Art of Computer Programming". Bom, mas o Knuth é um cientista muito conhecido. E engenheiro de software muito conhecido? Você conhece algum?  Alguém que se entitula engenheiro de software de formação não vai ter ninguém, mas e de vocação?

Eu diria que o meu ídolo na engenharia de software é sem dúvida o Michael Jackson pelas contribuições dele à engenharia de software como um todo, mas principalmente por tornar muito clara a definição de requistos e especificações de software conforme o post da mesa errada. Michael Jackson é o melhor autor de se ler na engenharia de software. Após conhecer as idéias dele sobre a engenharia de software como um todo eu passei a compartilha-las e divulgá-las. Apesar do Michael Jackson ter atuado fortemente na indústria de desenvolvimento de software eu diria que atualmente ele se concentra mais na academia. Então minha outra pergunta é: quem é seu ídolo praticante de engenharia de software? Ou seja, quem está na indústria de desenvolvimento que você admira muito por suas contribuições ao corpo de conhecimento da Engenharia de Software?

Minha resposta é o Martin Fowler. Tive a oportunidade de ver o Martin Fowler falar em diversas OOPSLAs e ele é muito convincente sobre a prática da engenharia de software pois vive os problemas no seu dia-a-dia de desenvolvedor.  Pelas suas contribuições em termos de padrões de análise, de arquitetura, refatorações e injeção de dependência, ele também é meu ídolo. E você, quem são seus ídolos na engenharia de software?  Vou listar alguns engenheiros famosos, escolha o seu: David Parnas, Bertrand Meyer, Grady Booch, James Rumbaugh, Ivar Jacobson, Tom deMarco, Barry Boehm,
Kent Beck, Fred Brooks, a "gangue dos quatro" (Gamma, Helm, Johnson, Vlissides), Rebecca Wirfs-Brock, Pamela Zave, Mary Shaw... devo estar me esquecendo de vários. Quem mais você colocaria nessa lista?

3 comentários:

  1. Pra mim, a GoF ganha disparado o título de ídolos da engenharia de software. Quem desenvolve OOP sabe que Design Patterns é o divisor de águas na forma de pensar orientado por objetos.

    Mas meu sonho mesmo é escrever um livro e dar um nome a ele no estilo do Knuth - tem que ser muito bom para chamar um livro de "Things a Computer Scientist Rarely Talks About" ou "The Art of Computer Programming"...

    [Kristian]

    ResponderExcluir
  2. Tem outros muito conhecidos também que estão sendo esquecidos aí... Victor Basili, Shari Pfleeger, Roger Pressman, David Card, Meilir Page-Jones e outros...
    E há alguns brasileiros muito bons também... a equipe da COPPE/UFRJ por exemplo é ótima: Ana Regina da Rocha, Claudia Werner, Guilherme Horta Travassos e há outros muito bons aqui no Brasil tb.
    Mas ídolo mesmo? acho que não tenho... não consigo comparar a importância de cada um dentro do seu foco com outro.

    ResponderExcluir