Diagramas UML: O que são? Conheça os 14 tipos

Você conhece os 14 diagramas UML? Saiba quando e como utilizar cada um deles em seu projeto de desenvolvimento de software.

Neste artigo apresentaremos os 14 diagramas UML da versão 2.5, explicando de forma breve e objetiva a função de cada um, qual e quando utilizar cada um dos diagramas.

  • O que são diagramas UML, e para que servem?
  • Por quem, e Quando foi criada a UML?

    O que são diagramas UML, e para que servem?

    Se você esta iniciando sua carreira no desenvolvimento de software, ou então é um estudante de graduação em Engenharia da Software, Ciência da Computação, Sistemas para Internet entre outros cursos, com certeza você já ouviu ou ouvirá falar muito em UML.

    O nome UML é o acrônimo do termo ‘Unified Modeling Language’, que em tradução literal corresponde à ‘Linguagem de Modelagem Unificada’.

    Podemos resumir a UML como uma linguagem de modelagem orientada à objetos (diagramação e notação técnica), que permite através do uso de diagramas, representar todas as faces de um sistema, seus componentes, classes, objetos, comportamentos e interações.

    A UML permite ainda a normatização da documentação do sistema, facilitando no futuro a manutenção corretiva e evolutiva do mesmo.

    Um dos principais benefícios que seu uso proporciona é a facilidade em documentar de forma clara e precisa cenários, comportamentos complexos, reduzindo erros na interpretação da documentação de requisitos do sistema.

    Por quem, e Quando foi criada a UML?

    Com sua primeira versão lançada em junho de 1996, o modelo nasceu do esforço inicial de Grady Booch e James Rumbaugh, que durante os primeiros anos da década de 1990 dedicaram-se em um projeto para criar uma nova linguagem de modelagem, unificando o Object Modeling Language e o método Boock.

    Na sequência, Ivar Jacobson integrou o projeto. Jacobson trouxe consigo toda a experiência e conhecimento que adquiriu enquanto desenvolvia o Objectory, na época uma revolucionária metodologia orientada a objeto, criado por ele.

    Mesmo que os esforços para a criação da UML tenham iniciado em 1994, foi apenas 6 anos depois, no ano 2000, que a linguagem foi reconhecida oficialmente pelo OMG como uma linguagem padrão para orientação a objetos.

    James Rumbaugh

    James Rumbaugh, nascido em 1947, é um cientista da computação norte-americano, reconhecido pela participação no desenvolvimento do Unified Modeling Language (UML) e na Engenharia de Software Orientada a Objetos (OOSE).

    Rumbaugh também trabalhou em projetos práticos, como o desenvolvimento de ferramentas para auxiliar na modelagem e design de software.

    Seu legado no campo da engenharia de software continua a influenciar a forma como profissionais abordam e desenvolvem sistemas complexos de software.

    O americano James Rumbaugh é um dos "pais" da UML, sendo atribuído à ele a iniciativa que deu vida ao projeto.
    Assim como Ivar e Grady. o engenheiro da computação americano James Rumbaugh é figurinha “marcada” no mundo da engenharia de software. Em 1994 foi sua a iniciativa que deu origem ao projeto que juntamente com Ivar e Grady criaria a Unified Modeling Language.

    Grady Booch

    Grady Booch, nascido em 1955, é um cientista da computação americano, amplamente reconhecido por seu papel pioneiro no desenvolvimento da Engenharia de Software Orientada a Objetos.

    Coautor do Unified Modeling Language (UML), Booch contribuiu significativamente para a modelagem de sistemas complexos de software.

    Sua expertise e influência no campo da engenharia de software são refletidas em suas contribuições acadêmicas e práticas, consolidando-o como uma figura chave na evolução dessa disciplina.

    Grady Booch é um renomado metodologista da engenharia de software. Em colaboração com Ivar e James, ajudou a criar e estruturar a UML.
    Booch é outra das figuras que fazem parte da engenharia de software e definição de metodologias e processos. Fez grande parte de sua carreira na já inexistente Rational Software.
    Além de sua participação na criação da UML, Grady também deu contribuições memoráveis para a área, como a normatização de arquiteturas de software com design patterns, e publicações sobre orientação a objetos com a linguagem Ada.

    Ivar Jacobson

    Grady Booch, nascido em 1955, é um renomado cientista da computação americano, amplamente reconhecido por seu papel pioneiro no desenvolvimento da Engenharia de Software Orientada a Objetos.

    Coautor do Unified Modeling Language (UML), Booch contribuiu significativamente para a modelagem de sistemas complexos de software.

    Sua expertise e influência no campo da engenharia de software são refletidas em suas contribuições acadêmicas e práticas, consolidando-o como uma figura chave na evolução dessa disciplina.

    O sueco Ivar Jacobson, é um dos criadores da UML, sendo notório pela sua contribuição na engenharia de software.

    É conhecido internacionalmente por sua brilhante contribuição na definição de processos e metodologias da engenharia de software. Por anos colaborou em empresas e projetos importantes como SDL e RUP. Foi também responsável pelo desenvolvimento
    da metodologia OOSE, ainda na Objectory.

    Diagramas UML ainda são utilizados?

    Há não muito tempo atrás, antes das metodologias de gerenciamento ágil como o Scrum dominarem as empresas de desenvolvimento de software, qualquer analista, arquiteto e desenvolvedor saberia dizer quais são os diagramas da UML, e para quê cada um deles serve.

    Em empresas de desenvolvimento de sistemas de médio e grande porte, a linguagem e os diagramas da UML são utilizados frequentemente durante todo o ciclo de vida, permitindo seja, uma visão ampla de todo o sistema, quando o detalhamento de recursos, interações ou comportamentos específicos do software, ou da aplicação.

    A utilização de artefatos da UML permite documentar e especificar de forma detalhada todos os aspectos de um sistema, o que à torna extremamente útil durante processos de adequação e obtenção de certificações voltadas à segurança da informação como a ISO 9001, ISO 27001, e também em certificações direcionadas à maturidade do processo de desenvolvimento de software como o MPS.BR e CMMI.

    O uso dessa linguagem é também muito comum comum em cenários específicos (bancário, governamental, segurança, ferro-aero-portuário, hospitalar e energético), principalmente em projetos críticos ou de alta complexidade, que exigem toda a “liturgia da velha-guarda” e segurança que somente a UML pode proporcionar.

    Quais são os 14 diagramas UML?

    A linguagem de modelagem UML possui 14 diagramas, que permitem modelar as atividades e aspectos técnicos envolvidos no desenvolvimento de um software, como a especificação de requisitos de sistema, casos de uso, sequências de atividades, estrutura e relacionamento de objetos, classes e componentes.

    1. Diagrama de classes
    2. Diagrama de componentes
    3. Diagrama de implantação
    4. Diagrama de objetos
    5. Diagrama de pacotes
    6. Diagrama de perfil
    7. Diagrama de estrutura composta
    8. Diagrama de casos de uso UML
    9. Diagrama de atividades
    10. Diagrama de máquina de estado
    11. Diagrama de sequência
    12. Diagrama de comunicação
    13. Diagrama de visão geral da interação
    14. Diagrama de tempo ou diagrama temporal

    Os modelos de diagramas da UML são artefatos de valor em todas as etapas de um projeto de desenvolvimento de sistema, como por exemplo na concepção e declaração de escopo do projeto, análise de negócio, levantamento de requisitos, arquitetura da solução e validação e aceite da entrega do projeto.

    Nesse artigo explicaremos cada um dos 14 diagramas da UML versão 2.5, para qual finalidade e objetivo são indicados, como saber qual deles devemos utilizar durante as fases do ciclo de vida de desenvolvimento de software, e como fazer cada um deles.

    Diagrama de classes UML

    No desenvolvimento utilizando qualquer linguagem orientada a objetos, o entendimento e definição das classes do sistema, as operações individuais de cada classe, seus atributos e o relacionamento entre elas é fundamental.

    O diagrama de classes é destinado justamente para realizar documentação referentes às classes existentes no sistema, com suas respectivas características e relacionamentos com outras classes.

    Diagrama de componentes UML

    Dentro da Unified Modeling Language, o diagrama de componentes (component diagram) tem como objetivo principal representar a composição estrutural de um software e a forma como ocorrem as interações entre os componentes do sistema.

     

    Diagrama de componentes UML, onde está representada a organização das classes do sistema
    O diagrama de componentes da UML é um artefato que permite detalhar e representar de forma visual a organização de funcionalidades e módulos de um sistema, facilitando assim a reutilização de componentes de maneira genérica. – FONTE/AUTOR: ALFF, F.R; 2022

    No contexto desse diagrama, devemos considerar como “componente” qualquer componente de software que tenha função, identidade e interface (comunicação e execução) claramente definidas.

    A utilização desse diagrama é mais comum em projetos e sistemas de grande complexidade, que possuem um legado de código volumoso e de difícil manutenção.

    Diagrama de implantação UML

    O desenvolvimento de um sistema não se limita apenas ao levantamento de requisitos e codificação do software. Existem outras áreas que estão diretamente relacionadas ao processo de desenvolvimento, como a forma de entrega e disponibilização, o gerenciamento de configuração, o comportamento e interação com o hardware e com a rede.

    Para ilustrar e evidenciar as ocorrências nesse contexto, a UML disponibiliza o diagrama de implantação, também chamado de diagrama de instalação.

    Exemplo de diagrama de instalação UML, representando o ambiente físico e software envolvidos na execução da aplicação.
    No diagrama de implantação ou instalação da UML, é possível representar todos os componentes de hardware e software que interagem com o sistema durante a operação, auxiliando na previsão dos comportamentos da aplicação. – FONTE/AUTOR: ALFF, F.R; 2022

    Neste diagrama, é possível representar as interações do sistema com os chamados “nós”, que geralmente representam um hardware (equipamento físico), porém é possível também utilizá-los para representar features do próprio sistema, um sistema terceiro.

    Diagrama de objetos UML

    O diagrama de objetos é conhecido também como diagrama de instâncias. É muito comum confundir o diagrama de objetos com o diagrama de classes, já que estruturalmente os dois são muito similares, porém apesar da semelhança o uso de cada um tem objetivos diferentes.

Francilvio Roberto Alff

Olá! Eu sou Francilvio Alff, mas você pode me chamar de Chico Alff. Vou fazer o m3u jabá rapidinho, eu prometo! :DMinha formação acadêmica é diversificada, com raízes em Engenharia de Software e Análise e Desenvolvimento de Sistemas para a Internet. Também mergulhei na História e na Língua Italiana em minha jornada acadêmica, embora essa aventura ainda não tenha sido concluída.Meu primeiro contato profissional e real com o incrível mundo dos sistemas foi em 2007, enquanto fazia a minha primeira graduação na Itália. Trabalhei na implantação da solução Orange Salsa para a gestão dos "informatori scientifici del farmaco" na colossal multinacional farmacêutica GlaxoSmithKline (GSK).Com o passar dos anos, me vi cada vez mais envolvido pela tecnologia, e ao longo dessas quase duas décadas, me especializei em Engenharia de Software, mais precisamente nas disciplinas de Análise de Requisitos, Análise de Negócios e Gerenciamento de Projetos.Nesse percurso, trabalhei em projetos desafiadores para a administração pública, soluções de ERP para o varejo e indústria, inteligência artificial aplicada em soluções IOT e linguagem neural..Em 2011 fundei juntamente com um velho amigo e tutor o site https://analisederequisitos.com.br que mantenho até hoje como uma prova viva do meu comprometimento com a engenharia de software.Minha determinação e meu desejo constante de aprender continuam me impulsionando em direção ao futuro, onde pretendo continuar unindo minha paixão pela tecnologia com meu amor pela aprendizagem e minha curiosidade insaciável. Junte-se a mim nessa jornada!

Artigos relacionados

Deixe um comentário