DevMedia Engenharia de Software Magazine (ESMAG)... WTF? [era Ai... ai... ai... tá difícil...]

Em uma frase: o meio acadêmico ainda prega o waterfall, puro e simples.

Ontem mesmo recebi uma crítica a um artigo científico de um orientando reclamando do porquê de o processo de desenvolvimento da ferramenta não ter sido descrito em termos de análise, projeto, implementação e testes. Esta é a nossa realidade.

[quote=rodrigoy]Bom, já que deram nomes aos bois, não quero só deixar tudo jogado sem antes apresentar as críticas. Espero que as coisas por aqui seja uma discussão saudável, não a baixaria que ficou lá na UML-BR@yahoogrupos.com.br.

Vou postar aqui as críticas que postei lá na UML-BR, especificamente ao artigo “Alguns Fundamentos da Engenharia de Software” do Dr. Wilson de Pádua Paula Filho. Quero ressaltar grandemente que não é crítica pessoal, só ao que foi escrito.

  1. O texto explica coisas elementares como definições básicas de
    engenharia, arte e etc… Presume-se que seja um artigo para
    iniciantes, o problema disso são as divergências dos próximos itens. O
    termo Engenharia é no mínimo questionável entre vários outros Autores.
    O Fowler expressou isso muito bem no célebre artigo “The New
    Methodology”.

  2. Gantt Chart. Já citei aqui várias vezes e escreví que o maior
    engodo que um projeto de software pode ter é ser controlado por Gantt
    Charts. As razões já foram citadas no meu artigo “Entregue Software
    Funcionando! Gerenciamento de Projetos Ágeis”, MJ #26, em concordância
    com o Sutherland e o Schwaber. No meu artigo coloquei alguns pontos de
    observação pessoal, como a potencialização da Sindrome do Estudante
    [Goldratt]. Software é um objeto de um meio de produção atômico, isto
    é, as tarefas intermediárias para se obter o software não agregam
    qualquer valor de negócio.

  3. “Investimento em processos ao invés de pessoas e tecnologias”: É
    outro erro gravíssimo. Primeiro porque é completamente contrário ao
    primeiro valor do Manifesto Ágil, que considero o mais importante.
    Escreví no meu artigo “Mapeamento Objeto Relacional ? Tecnologia,
    Herança e Impedância” (MundoJava #24) exatamente o contrário. Invista
    em pessoas e em tecnologia e não em processos, bons processos são
    resultados de boas pessoas (treinadas) com boas tecnologias. Isso é
    baseado no Booch, Ambler, Cockburn, Schwaber.

  4. Visão do CMMi: A última coisa que o CMMi prega é que ele é um
    caminho das pedras ou mapa da mina. O fato de ter um processo maduro
    não necessariamente te faz melhor que os outros e nem te diz que você
    é eficiente. É só um modelo de maturidade baseado em checkpoints. Para
    o CMMi não interessa o como. De qualquer forma, concordo muito com o
    Jacobson quando ele fala “é fácil que um bom processo seja mensurável,
    porém, é difícil um processo mensurável ser bom.” Eu geralmente
    comento sobre CMMi que nada adianta ser maduro num processo que é ruim
    (experiência de quem já passou por 2 implementações que envolviam mais
    de 200 pessoas).

  5. Relevância: Fora isso, o artigo não apresentou nada de novo. O
    autor não correu risco nenhum e nem emitiu uma opinião própria firme,
    apesar de seu currículo. É algo que não colaborou em nada para o que o
    mercado vive atualmente.

Resumindo, o artigo fala contra exatamente tudo que escreví na minha coluna da MundoJava desde 2006. Desta forma, tinha que me manifestar, pois acredito no meu ponto de vista. Não quero que vire essa guerra que o Rodrigo Allemand falou. Dei esse alerta aqui e na UML-BR pois são as listas que participo mais ativamente (considero como meus alunos, assim, quero manter na linha, he he he).

É só isso.[/quote]

Muibo bom Rodrigo,

essa briga é minha tb. Se nós não botarmos a boca no trombone as coisas continuam como estão.

Abraço.

:wink: Seja lá como for, quem vier a mim e dizer que é Java Senior eu só vou querer ver o PHD, por uma questão bem justa ao Cargo pretendido.

waterfall, waterfall, chamem logo de cascata!

Rodrigo, não sou um “expert” na área, por isso não me sinto confortável em julgar se a revista está boa ou ruim, mas analisando seus comentários vi que vc tem experiência e conhecimento o suficiente para criticar o assunto. Porém, reparei que vc criticou somente o artigo “Alguns Fundamentos de Engenharia de Software”.

Existem vários outros artigos na revista: “Introdução a Engenharia de Requisitos”, “Introdução a Testes de Software”, dentre ourtos, como: “Processo Unificado Integrado ao Desenvolvimento Web”, cujo autor é um conhecido meu. Após suas críticas ao artigo “Alguns Fundamentos de Engenharia de Software”, que são bastante claras, precisas e objetivas, todos vieram aqui e passaram a criticar a revista como um todo. Então eu pergunto:

A revista perdeu a credibilidade somente por causa desse artigo? Os outros artigos são, tb, de má qualidade?

O artigo “Processo Unificado Integrado ao Desenvolvimento Web” me chamou a atenção para seu processo que se mostra bastante prático. Para equipes de desenvolvimento que procuram algum assunto relacionado a melhorias de processos do desenvolvimento de software, isso é uma grande ajuda. Eu tentaria automatizar um pouco mais os artefatos para ajudar no processo. O que vc acha? Ou melhor, o que vcs acham?

Olá Pessoal!

Eu sou professor aqui no ITA e não prego os valores “antigos” da engenharia de software. Acho que não podemos generalizar que o mundo acadêmico não abriu os olhos para as metodologias ágeis. Existem vários professores que estudam e levam bastante a sério esse novo tipo de abordagem. Na UFMG mesmo tem um curso somente sobre XP!!! Por outro lado, eu não posso negar que alguns professores ainda ensinem valores e conceitos ultrapassados a respeito do assunto…

Em relação ao que o Rodrigo disse da revista MundoJava, eu preciso admitir que realmente na revista prezamos muito pela qualidade dos artigos, principalmente do ponto de vista técnico e conceitual. Tentamos levar aos leitores não só o como fazer, mas também os conceitos envolvidos e o porque daquela forma ser melhor ou mais produtivo. Acho que em nenhum momento, falando sobre a MundoJava, ele quis atacar outras revistas. Como ele trabalha com a MundoJava, ele sabe como é o nosso esquema de trabalho. Como não trabalhou com outras revistas, não pode dizer nada sobre elas…

Para não querer ser tendencioso e “puxar sardinha” somente para MundoJava, a Visão Ágil é uma excelente revista sobre engenharia de software que sempre recomendo aos meus alunos. Eu acho que vale a pena conferir: http://www.visaoagil.com/

Abraços a todos!!!

Galera

Nosso colega realmente tem razão quando disse que estão julgando a revista “Engenharia de Software” com base apenas na primeira matéria.

A propósito, já deram uma olhada no artigo “Agilidade ou Controle Operacional? Os dois!” Onde o Autor comenta bastante sobre CMMI e faz algumas críticas sobre a modelagem ágil, como sendo uma alternativa das pequenas empresas que não podem/conseguem implementar um processo de desenvolvimento mais robusto. Traz críticas à modelagem ágil em:

“Os pontos fracos dos Modelos Ágeis:
O modelo ágil possui algumas fraquezas que impedem sua adoção de forma corporativa e podem comprometer sua credibilidade e implementação no mercado mundial.”

Mais no fim ele incentiva a adoção de um processo misto, com “Modelo Controlada” e “Modelo Ágil” gerando o “Modelo Combinado”

Eu particularmente ainda tenho uma visão de processo de desenvolvimento mais tedencioso para o processo mais robusto, com modelagem e documentação e tudo mais, na minha formação tive muito de RUP, UML e onde trabalhei por alguns anos, implementaram um processo baseado no RUP, participei de alguns treinamentos desse processo, onde se provava que era uma boa solução para o desenvolvimento de software, porém comparando o processo (baseado no RUP) com o ad-hoc que se fazia antes do processo… obviamente o processo é bem melhor…

Porém não sou vidrado como vejo algumas pessoas em algumas discussões, e que até mesmo ao tentar defender o processo organizado e robusto, acabam até mesmo piorando a imagem do processo por falta de experiência ou má interpretação, e muitas vezes preferem criticar a modelagem ágil sem ao menos conhecê-la.

Eu ainda estou estudando a modelagem ágil e pretendo me aprofundar mais, mesmo porque a empresa em que trabalho agora não segue nenhum padrão para desenvolvimento, e pretendo estudar e implementar um padrão de desenvolvimento ágil aqui.

Enfim, o que eu queria com isso tudo é realmente alimentar esta discussão, pois penso como os antigos mais quero mais conhecimento sobre a modelagem ágil. Acho este tipo de discussão saudável e muito válida para a disseminação de novos paradigmas.

O que me dizem sobre a matéria que comentei?

um abraço a todos…

Essa matéria, bem como as outras, já foram discutidas em tros lugares. Siceramente, eu não tive acesso à número 2 mas na número 1 nenhuma matéria possui qualidade aceitável, trazendo por vezes erros claros.

Sobre essa em específico:
http://br.groups.yahoo.com/group/agile-brasil/message/1689

É um discurso marketeiro. Como você mesmo disse, muita gente não sabe e isso não as impede de criticar. O problema dessa mistura é que o Modelo Ágil é o modelo mais controlado que existe no mundo. Se ele é controlado o que seria o “Modelo Controlado”? O Modelo Ágil não compete com “outras coisas” que funcionam. Só Agilidade funciona. As literaturas que temos sobre o assunto nos últimos 10-20 anos só falam sobre práticas ágeis (mesmo que algumas não tenham esse nome). Não existe essa dualidade entre Agile x outras coisas. O argumento do Sr. Alexandre Bartie não tem sustentação nem teórica e nem prática.