Criada por James Rumbaugh e Ivar Jacobson
Vem como apoio ao IBM Rational Unified Process (RUP – Processo Unificado)
Aprovada pelo OMG (Object Management Group) em 1997, um consórcio internacional de empresas que define e ratifica padrões na área de Orientação a Objetos
Ilustração da sigla UML
Representa uma Linguagem de Modelagem e não um método ou uma metodologia
Linguagem de modelagem: notação (principalmente gráfica) utilizada por métodos para expressar projetos
Trata-se de uma linguagem visual diagramática
Estado atual: versão 2.5.1 – dezembro de 2017 (família 2.X) - www.omg.org/spec/UML
Possui 14 diagramas
Estrutura de Diagramas da UML
Para construir um diagrama em UML, você usará um conjunto de símbolos e conectores especializados.
Estes símbolos são chamados de Entidades, Componentes ou Elementos do diagrama
Esses conectores são chamados de Relacionamentos ou Elementos do diagrama
Uma coisa importante sobre a UML é que apesar de ser uma linguagem visual, cores não fazem parte da linguagem em si, mas podem ser adotadas em modelos por questões estéticas e até para adicionar mais semântica fora da UML.
Na UML, o que importa são as formas e os diferentes tipos de conectores.
⚠️ ATENÇÃO: As cores e até mesmo alguns nomes de elementos da UML podem variar de acordo com a ferramenta utilizada para a modelam e com o idioma, mas isso não deve importar desde que a sintaxe correta seja mantida.
Reveja as definições sobre modelos na Seção Modelos e Métodos de Software da Página Introdução a Análise e Projeto de Sistemas .
Diagrama x Modelo. Fonte: Autoral, feito com Canva para Educação.
O modelo do sistema contem toda a informação que representa a solução proposta/produzida.
O diagrama é uma visualização de parte de um modelo do sistema e possui uma perspectiva
Ou seja: Se está no diagrama, está no modelo.
Exemplo de componentes de um modelo de sistema. Fonte: Autoral, feito com Microsoft Office.
Tornar-se especialista na áreas de Análise e Projeto de Sistemas, apoiando metodologias ágeis e tradicionais
Aprender e consolidar o aprendizado em Orientação a Objetos
Praticar e aplicar abstração, semântica e outros conceitos da Engenharia Cognitiva Computacional
Compartilhar um vocabulário comum da área
Comunicar-se visualmente com formalismo (matemático)
Facilitar a documentação viva do sistema e atender a requisitos de qualidade e compliance
Gerar código a partir de diagramas
Porque uma arquitetura de sistemas projetada com qualidade nunca sai de moda!
Licitações públicas de software no Brasil: Editais de órgãos como SERPRO, DATAPREV e Ministérios frequentemente exigem que fornecedores entreguem diagramas UML de casos de uso, classes e sequência como parte da documentação técnica do projeto, para garantir clareza e auditabilidade.
Setor financeiro (compliance regulatório): Bancos que seguem exigências do Banco Central do Brasil (BACEN) e padrões como BIS (Bank for International Settlements) pedem documentação de arquitetura e de integração em UML para atender normas de auditoria e segurança.
Indústria de software embarcado e automotiva: Fabricantes que seguem padrões como ISO 26262 (segurança funcional) ou AUTOSAR utilizam UML e SysML para documentar requisitos e arquitetura de sistemas críticos, pois isso facilita inspeções e certificações.
Área de saúde (sistemas clínicos e hospitalares): Soluções que seguem HL7 ou ISO 13606 usam UML para modelar fluxos e entidades, garantindo interoperabilidade e conformidade com padrões internacionais de saúde.
Projetos internacionais com certificação ISO/IEC 25010: Projetos que visam certificações de qualidade de software (ISO/IEC 25010) usam UML para atender aos critérios de manutenibilidade, funcionalidade e compatibilidade, fornecendo documentação visual padronizada.
É possível criar diagramas UML utilizando apenas papel e caneta ou qualquer ferramenta digital de desenho.
Atualmente*, a tendência é utilizar ferramentas digitais de finalidades gráficas para elaborar diagramas UML, tais como: Lucidchart, Miro, draw.io etc. Estas ferramentas costumam ser graficamente muito potentes, com versões freemium, colaborativas e em nuvem.
Entretanto, estas ferramentas não são capazes de validar a sintaxe dos diagramas, como um compilador faz com uma linguagem de programação. Ferramentas CASE (do inglês, Computer Aided Software Engeneering) são as responsáveis por esse tipo de validação, mas se tornaram cada vez mais escassas e caras com a evolução das tecnologias em nuvem e com a crescente agilidade no processo de desenvolvimento de software.
A ferramenta Star UML para desktop é a única ferramenta atual que permite a modelagem UML gratuita com validação de acordo com a especificação UML da OMG.
Outra alternativa interessante é a ferramenta Visual Paradigm, que possui opções freemium para desktop e web com certo nível de validação de relacionamentos entre as entidades UML.
Plugins para ambientes integrados também são uma opção, porém muitos carecem de uma comunidade ativa que os mantenha em uso .
Recentemente, há uma tendência no uso plugins e ferramentas de modelagem UML via texto, o que pode ser considerado contraditório tendo em vista os objetivos da UML.