Alguns dados sobre o uso de UML

Recentemente afirmei eu uma reunião do Departamento de Informática da PUC-Rio que o uso de técnicas de modelagem de orientação a objetos era aquém do que  normalmente se imagina.  No caso, estava me referindo a UML. Sem dúvida a UML é um padrão emergente para uso na especificação de software e certamente contribuiu muito para que o conceito de modelagem fosse mais difundido na indústria.   

Meu objetivo aqui não é discutir as qualidades e defeitos da UML, mas o de embasar o comentário a que me referi acima.  Na verdade, essa nota foi escrita como uma maneira de organizar meu conhecimento sobre o assunto e também foi à maneira de responder a uma questão formulada pelo Edmundo Torreão sobre a minha afirmação de que a UML é pouco utilizada. 

Afirmações como a que fiz acima não são facilmente quantificáveis.  Essas afirmações são ancoradas  em  uma vivência na área,  na leitura de centenas de informes, artigos científicos, relatos particulares em empresas, participação em comitês, contato informal com profissionais da indústria e em serviços de consultoria.  No entanto, fica aquela dúvida.  E os dados?  Existem dados sobre o uso da UML na indústria que justifiquem a afirmação? 

Um dos primeiros ponteiros sobre o uso de modelagem orientada a objetos ou dificuldades com o seu uso é um painel que ocorreu em 1993 na Conferência Internacional de Reuso.  Faço um resumo sobre isso em um artigo de 1999.  

Em 2002 em função dos resultados positivos alcançados com a estratégia de “extreme programming”  mudamos a maneira de ensinar princípios de engenharia de software na PUC-Rio: 

 “Até 2001 o trabalho prático era baseado no paradigma da orientação a objetos, e as linguagens UML e Java eram utilizadas para desenho da arquitetura e implementação, respectivamente. Os grupos para o trabalho prático eram compostos, em média, por 3 alunos. Excelentes trabalhos foram desenvolvidos neste tempo e estão disponíveis em [PES].

A partir de 2002 passamos a adotar o processo Extreme Programming para guiar o desenvolvimento. Desde então, a infra-estrutura de implementação passou a ser voltada para WEB baseada nas linguagens PHP, HTML e XML e banco de dados MySQL ou PostgreSQL. Desta forma os alunos se prenderam menos à aprendizagem de linguagens de modelagem e programação e se dedicaram mais à aprendizagem e vivência de conceitos como cooperação, reuso, gerência de configuração, dentre outros e suas dificuldades.” (Ensino de Engenharia de Software: Relato de Experiência).”  

Por que dessa mudança?  Para refletir que o ensino dos princípios da  engenharia de software não deveria estar preso a uma estratégia de modelagem.  Para refletir não só a força do movimento de “extreme programming”, mas como também o sucesso da estratégia de produção de código aberto.  

Essas mudanças ocorrem também porque estávamos percebendo que uma série de outras estratégias de modelagem, independente de UML, passavam a ser mais e mais presentes na literatura, como, por exemplo, modelos orientados a metas e modelos orientados a situações (cenários).

Ok, mas o que isso tem a ver com o uso da UML?  Isso de certa maneira era um reflexo de algo que vinha percebendo, mas que não tinha dados. Como diz Peter Freeman: “Ideas are cheap, data is dear”, fui atrás dos dados que justificassem essa percepção.

Uma busca por dados usando as máquinas de busca, o que é uma pesquisa limitada, forneceram uma visão próxima da que tinha construído e observado acima.  Vejamos o que achei:

1) Estimativa geral de 15% de uso da UML. (Computerworld: Carol Sliwa)

“Although the UML/MDA approach is gaining increasingly wider adoption by application architects, UML usage includes no more than 15% of developers, according to several analysts’ estimates. Critics say its complexity can be daunting, and the cultural change for IT shops accustomed to pounding out code can be difficult to negotiate.”

2|) Uma pesquisa na Escócia em 2005  chega a índices em volta de 30% de uso. 

3) Uma pesquisa de Março de 2005 pela Computerworld indica índices por volta de 30% de uso.

“Almost half, 48%, selected “No” when asked if their company was using Unified Modeling Language (UML), and 33% reported that UML is in use at their organization. Thirteen percent said that there plans for future use.”

4) Uma pesquisa feita por uma empresa no mercado de produtos eletrônicos mostra que desenvolvedores, nesse contexto, raramente usam UML. Reporta-se uma  faixa de 3%.

5) Uma pesquisa entre programadores Visual Basic, apesar de não referir diretamente a UML, indica que suporte para “technical documentation” não é considerada importante. (2600 respondentes).

6) Dados da Áustria de 2000 sobre uso de UML em pequenas empresas, cerca de 30% usam UML. (Software Development in
Austria: Results of an Empirical Study among Small and Very Small Enterprises by  Christian Hofer)

7) Outro dado de 2002 que menciona a faixa de 30% (SDTimes Modeling Usage Low; Developers Confused About UML 2.0, MDA By Alan Zeichick)

“The survey, conducted by BZ Research in late June, was completed by 226 individuals. BZ Research is a sister organization of SD Times. According to the results, 34 percent of developers presently use UML-based modeling for applications development; of that group, 2 percent said they use UML to model all applications, and 32 percent said that UML is used only for modeling some applications.”

 

8) Booch, um dos responsáveis pela criação da Rational e Selic, participante do grupo criador da UML2.0 admitem em entrevista a Computerworld que o uso de UML não ultrapassa 10%! (Sidebar: Waiting for UML 2.0 News Story by Carol Sliwa)

  ” Many say UML adoption has been slow, in the range of 10%. Why do you think it has been slow?”
Selic: “One of the most significant factors is that there is a tremendous investment in existing technologies, both corporate and personal, and jumping to UML does require some incremental costs and investments on top of the existing one.  …. So the adoption has to increase, and we are certainly seeing other large vendors that are realizing that model-driven development is something that has to happen.”
Booch: “Ten percent is not necessarily a bad thing, if we consider the worldwide developer market according to IDC is approximately 13 million or so IT professionals. Ten percent’s a nice healthy number. That’s a great penetration in the sense that we’re dealing here with the community of people that worry about abstraction and design, and if we limit ourselves to just that community, I would dare say that the UML has a tremendous penetration. If you look at the community at large, perhaps it is 10%, 20% we’ve seen in some other cases. …  … Ergo, modeling becomes fundamental, and the UML is indeed the open standard of choice for modeling.”

Isso foi o que coletei não exaustivamente.   O protocolo de pesquisa que usei foi padrão, em cima das palavras chave, tais como: “!uml, survey, industry, acceptance, usage”.  Algumas dos resultados foram derividos de pesquisa mais oportunistica, de acordo a resposta das máquinas de busca.

Se você tiver ponteiros para mais dados, por favor, enviei que coloco junto a esses aqui.  


…………

Leia sobre Sistemas de Informação.

Veja a página do autor.

14 Respostas to “Alguns dados sobre o uso de UML”

  1. Edmundo Torreão Says:

    Considero interessante a leitura, como complemento às referências bibliográficas já apresentadas, do seguinte livro:

    Ambler,S. W. The Object Primer: Agile Model-Driven Development with UML 2.0, Cambridge University Press, 3a. edição, 2004.

    Nele são colocadas críticas à “utilização excessiva” da UML. Para cada um dos seus artefatos, são apresentadas sugestões de uso apropriado, baseadas na avaliação do autor em relação à efetiva agregação de valor ao processo de desenvolvimento do software.

  2. Edmundo Torreão Says:

    Apenas complementando…

    O comentário feito anteriormente refere-se ao link “qualidades e defeitos da UML” (Death by UML), aonde é exposto como os artefatos UML são, em inúmeros casos, utilizados de forma indevida no aspecto técnico, ou seja, em “excesso”, sem agregar valor ao desenvolvimento efetivo do software.

  3. Princípios de Engenharia de Software » UML (1) Says:

    […] Sobre a UML.  É fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira poderá ser responsável pela indicação da adoção ou não a UML na organização em que estiver trabalhando.  Recentemente postei uma nota sobre o uso de UML, vejam aqui. […]

  4. Aula 9 « Princípios de Engenharia de Software Says:

    […] Sobre a UML.  É fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira, o engenheiro poderá ser responsável pela indicação da adoção ou não da UML na organização em que estiver trabalhando.  Recentemente postei uma nota sobre o uso de UML, vejam aqui. […]

  5. UML: alguns dados recentes. « Amazing Says:

    […] Desse estudo, vale notar que:  apesar de muito utilizado, o diagrama de classes é também objeto de muita incompreensão.  Vale mencionar também que, segundo o estudo, narrativas seriam mais úteis que o digrama de atores/funções (casos de uso). É importante notar, também, que esses dados, mesmo vindos da comunidade UML, apontam que os profissionais quando perguntados sobre os projetos passados, indicam uma situação de baixo uso de UML, só 23% dos projetos anteriores usavam UML.  Veja os dados já levantados anteriormente nesse espaço. […]

  6. Aula 12 « Princípios de Engenharia de Software Says:

    […] Na segunda parte da aula começamos a falar sobre a UML. Sobre a UML: é fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira, o engenheiro poderá ser responsável pela indicação da adoção ou não da UML na organização em que estiver trabalhando. Recentemente postei uma nota sobre o uso de UML, veja aqui. […]

  7. Aula 10 & 11 « Princípios de Engenharia de Software Says:

    […] Sobre a UML: é fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira, o engenheiro poderá ser responsável pela indicação da adoção ou não da UML na organização em que estiver trabalhando. Recentemente postei uma nota sobre o uso de UML, veja aqui. […]

  8. Aulas 11 & 12 « Princípios de Engenharia de Software Says:

    […] Sobre a UML: é fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira, o engenheiro poderá ser responsável pela indicação da adoção ou não da UML na organização em que estiver trabalhando. Recentemente postei uma nota sobre o uso de UML, veja aqui. […]

  9. Porque não se generaliza o UML ? As 5 razões « José Formiga’s Blog Says:

    […] não são especificados em UML. Fora de Portugal, a realidade não é muito diferente. Segundo uma pesquisa de 2006 do professor Júlio Leite, da Universidade Católica do Rio de Janeiro, as taxas de adesão […]

  10. Aula 13 « Princípios de Engenharia de Software Says:

    […] Aula 13 Abril 16, 2008 Posted by pes2006 in engenharia de software. trackback Sobre a UML: é fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira, o engenheiro poderá ser responsável pela indicação da adoção ou não da UML na organização em que estiver trabalhando. Recentemente postei uma nota sobre o uso de UML, veja aqui. […]

  11. Aula 29 « Princípios de Engenharia de Software Says:

    […] Aula 29 Novembro 27, 2008 Posted by pes2006 in engenharia de software. trackback Sobre a UML: é fundamental seu conhecimento por todo o engenheiro de software, até porque, em algum ponto na carreira, o engenheiro poderá ser responsável pela indicação da adoção ou não da UML na organização em que estiver trabalhando. Recentemente postei uma nota sobre o uso de UML, veja aqui. […]

  12. Thiago Couto Says:

    Cabe, portanto, à aqueles que entendem os benefícios da UML, ajudar e orientar para que outros também se beneficiem desta ferramenta fantástica.

  13. source website Says:

    source website

    Alguns dados sobre o uso de UML | Amazing

  14. lic aao syllabus 2016 Says:

    I used to be recommended this website by way of my cousin. I am now
    not positive whether or not this put up iss wrtitten by means
    of him as no one else rewcognise such particular approximately my difficulty.
    You are amazing! Thanks!

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s


%d blogueiros gostam disto: