Diagramas Estruturais ("fotografia" congelada do software):
- Diagrama de Classe: exibe um conjunto de classes, interfaces e seus relacionamentos / as classes especificam tanto as propriedades quanto os comportamentos dos objetos.
- Diagrama de Componente: modela o sistema em termos de componentes e seus relacionamentos através de interfaces / decompõe o sistema em subsistemas que detalham a estrutura interna.
- Diagrama de Objeto: representa uma fotografia do sistema em um dado momento (coleção de objetos em um dado momento) / vínculos entre os objetos conforme estes interagem e os valores de seus atributos / pode ser visto como uma "instância" do diagrama de classes / não exibe as operações.
- Diagrama de Perfil: é um diagrama auxiliar que permite definir tipos padronizados de estereótipos, valores rotulados e restrições / mecanismo leve de extensão / permite adaptar os modelos UML para diferentes plataformas e domínios.
- Diagrama de Estrutura Composta: é utilizado para modelar colaborações entre interfaces, objetos ou classes.
- Diagrama de Implantação: modela a configuração física do sistema.
- Diagrama de Pacote: permite agrupar qualquer construção da UML em estruturas de alto nível, tendo como objetivo agrupar componentes comuns.
Diagramas Comportamentais (natureza dinâmica dos objetos do sistema):
- Diagrama de Atividade: descreve lógicas de procedimento, processos de negócio e fluxos de trabalho / permite que seja mostrado que entidade é responsável por cada ação no diagrama, com o uso de raias (swimlanes).
- Diagrama de Caso de Uso: modela interações com usuários / descreve um conjunto de cenários / captura os requisitos do usuário / delimita o escopo do sistema.
- Diagrama de Máquina de Estados: mostra os vários estados possíveis por quais um objeto pode passar. Este, por sua vez, muda de estado quando ocorre algum evento interno ou externo ao sistema.
- Diagrama de Interação:
----> Diagrama de Sequência: captura o comportamento de um determinado cenário / mostra os objetos e as mensagens trocadas / enfatiza a ordem temporal das mensagens / é o diagrama mais utilizado na etapa de projeto OO (solucionar o problema).
----> Diagrama de Comunicação: enfatiza a ordem estrutural das mensagens (relacionamento entre objetos) / é equivalente ao diagrama de sequência.
----> Diagrama de Interação Geral: fornece uma visão geral do controle de fluxo entre objetos / é uma mistura entre diagrama de sequência e o diagrama de atividade.
----> Diagrama de Tempo: captura o comportamento de objetos ao longo do tempo e a duração na qual eles permanecem em determinados estados / úteis para modelar sistemas em tempo real / mistura entre o diagrama de sequência e o diagrama de máquina de estados.
Bons estudos!