2. O QUE É UML
UML, que significa "Unified Modeling
Language" em inglês, é uma
linguagem de modelagem gráfica
utilizada na engenharia de software
para representar visualmente
sistemas e processos de software. A
UML fornece um conjunto de
notações e diagramas padronizados
que permitem aos desenvolvedores
de software criar representações
visuais de sistemas, tornando mais
fácil o entendimento, comunicação e
documentação de projetos de
software complexos.
3. A UML OFERECE DIVERSOS TIPOS DE DIAGRAMAS, CADA UM COM
UM PROPÓSITO ESPECÍFICO. ALGUNS DOS DIAGRAMAS MAIS
COMUNS INCLUEM:
Diagrama de Casos de Uso: Representa a funcionalidade do sistema do ponto de vista
do usuário, identificando os atores e as interações com o sistema.
Diagrama de Classes: Descreve a estrutura das classes em um sistema, incluindo seus
atributos, métodos e relacionamentos.
Diagrama de Sequência: Mostra a interação entre objetos ou componentes ao longo
do tempo, descrevendo como as mensagens são trocadas entre eles.
Diagrama de Atividades: Modela o fluxo de controle de atividades e processos em um
sistema, descrevendo estados, transições e ações.
4. A UML OFERECE DIVERSOS TIPOS DE DIAGRAMAS, CADA UM COM
UM PROPÓSITO ESPECÍFICO. ALGUNS DOS DIAGRAMAS MAIS
COMUNS INCLUEM:
Diagrama de Estado: Representa os diferentes estados de um objeto e as
transições entre esses estados.
Diagrama de Componentes: Ilustra as relações entre os componentes de um
sistema, como bibliotecas e módulos.
Diagrama de Implantação: Mostra como os componentes de um sistema são
distribuídos em hardware físico ou virtual.
5. DIAGRAMA DE CLASSES
Diagramas de classes estão entre os
tipos mais úteis de diagramas UML
pois mapeiam de forma clara a
estrutura de um determinado
sistema ao modelar suas classes,
seus atributos, operações e relações
entre objetos.
6. DIAGRAMA DE CLASSES
Um diagrama de classes na UML
(Unified Modeling Language) é uma
representação visual que descreve a
estrutura de um sistema de software,
destacando as classes, seus atributos,
métodos e relacionamentos entre elas.
Ele ajuda a visualizar a organização e a
arquitetura do sistema, permitindo que
desenvolvedores e stakeholders
compreendam como as diferentes
partes do software se encaixam e
interagem. Em resumo, um diagrama de
classes é usado para modelar a
estrutura de classes e objetos em um
sistema de software.
7. OS BENEFÍCIOS DE DIAGRAMAS DE CLASSES
• Ilustrar modelos de dados para sistemas de informação,
não importa quão simples ou complexo.
• Entender melhor a visão geral dos esquemas de uma
aplicação.
• Expressar visualmente as necessidades específicas de
um sistema e divulgar essas informações por toda a
empresa.
• Criar gráficos detalhados que destacam qualquer código
específico necessário para ser programado e
implementado na estrutura descrita.
• Fornecer uma descrição independente de
implementação de tipos utilizados em um sistema e
passados posteriormente entre seus componentes.
8. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
CLASSE:
• Parte superior: contém o nome da classe. Esta parte é
sempre necessária, seja falando do classificador ou
de um objeto.
• Parte do meio: contém os atributos da classe. Use
esta parte para descrever as qualidades da classe. É
necessário somente quando se descreve uma
instância específica de uma classe.
• Parte inferior: inclui as operações da classe
(métodos). Exibido em formato de lista, cada
operação ocupa sua própria linha. As operações
descrevem como uma classe interage com dados.
10. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
Modificadores de acesso de membro:
Todas as classes têm diferentes níveis de acesso,
dependendo do modificador de acesso (visibilidade). Veja
os níveis de acesso com seus símbolos correspondentes:
• Público (+)
• Privado (-)
• Protegido (#)
• Pacote (~)
• Derivado (/)
• Estático (sublinhado)
11. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
Modificadores de acesso de membro:
Public (+): Membros marcados como públicos são acessíveis de qualquer lugar no código do
programa, inclusive por classes fora do escopo da classe em questão.
Private (-): Membros marcados como privados só são acessíveis dentro da própria classe em
que são declarados. Eles não podem ser acessados por outras classes.
Protected (#): Membros marcados como protegidos são acessíveis dentro da própria classe e
também por classes derivadas (subclasses) da classe em questão.
Package (~): Membros com o modificador de acesso padrão (sem símbolo) são acessíveis
apenas para classes no mesmo pacote (ou módulo, dependendo da linguagem) em que a
classe está definida. É uma visibilidade intermediária entre pública e privada.
13. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
INTERFACES
Em diagramas UML, uma interface é uma
estrutura que descreve um conjunto de
métodos que uma classe deve
implementar. Ela define um contrato para
classes que a implementam, garantindo
que elas ofereçam determinadas
funcionalidades. Interfaces promovem a
abstração e o polimorfismo no design de
software.
14. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
INTERFACES
O símbolo de interface nos
diagramas de classes indica
um conjunto de operações
que detalhariam a
responsabilidade de uma
classe.
15. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
PACOTES
Em diagramas UML, um pacote é uma
maneira de organizar elementos
relacionados em um espaço de nomes
lógico. Eles ajudam a estruturar e agrupar
classes e outros elementos em módulos
ou namespaces, facilitando a organização
e a compreensão de sistemas complexos.
16. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
PACOTE
O símbolo do pacote é
usado para agrupar classes
ou interfaces que são
semelhantes em natureza
ou relacionadas. O
agrupamento destes
elementos de design usando
os símbolos da embalagem
melhora a legibilidade do
diagrama.
17. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
Objetos
• Objetos: instâncias de uma classe ou classes. Objetos podem ser
adicionados a um diagrama de classes para representar instâncias
concretas ou prototípicas.
18. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
Artefatos:
• Artefatos: elementos de modelo que representam as entidades
concretas em um sistema de software, tais como documentos,
bancos de dados, arquivos executáveis, componentes de software
etc.
19. RELACIONAMENTOS
Relacionamentos
Em um diagrama de classes,
todas as classes estão
ligadas umas às outras por
relacionamentos
apropriados. Estas ligações
ajudam o usuário a
compreender completamente a
conexão entre diferentes
entidades. No entanto,
devido às pequenas
semelhanças, muitos
frequentemente têm
dificuldade em entender as
diferentes relações entre
os diagramas de classes.
20. RELACIONAMENTOS
1. Associação
Associações são usadas para representar os
vínculos familiares e significar a relação
estática entre as classes. Ela conecta
estruturalmente dois ou mais
classificadores e lista seus atributos,
propriedades e associações. As associações
são representadas por uma sólida linha
traçada entre os dois classificadores. As
Associações são divididas em 4 tipos.
21. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
1.1 Associação
Unidirecional:
Também chamada de associação
dirigida, este tipo de
associação refere-se a
quando um objeto contém
outro objeto em seu campo.
Esta relação significa o
fluxo de informações entre
dois classificadores. A
associação é representada
por uma linha sólida e uma
seta apontando para o
classificador de
22. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
1.2 Associação
Bidirecional:
Esta associação é
utilizada quando dois
classificadores estão
intimamente ligados e
podem armazenar um ao
outro em seus campos. Uma
linha sólida representa a
associação. A associação
bidirecional é o tipo
mais comum de associação
utilizada nos diagramas
UML.
23. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
1.3 Agregação:
A agregação é um tipo
mais específico de
associação e mostra a
"parte de" relação em
diagramas. No entanto,
este tipo só pode ligar
dois classificadores e
deve ter uma associação
binária. Em diagramas
UML, ele é representado
por uma linha sólida e
um diamante oco perto
da classe contém.
24. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
1.4 Composição:
Este tipo de relacionamento é
usado para representar a
dependência dos objetos em
relação à entidade focal. O
classificador focal contém
objetos, mas os objetos
contidos também são excluídos
se a classe focal for
excluída. Os relacionamentos
de composição são
representados por uma linha
sólida e uma forma de
diamante recheada desenhada
perto da classe que a contém.
25. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
2. Generalização/Herança:
Na modelagem UML, a generalização é
utilizada para representar as relações
de classe dos pais e de classe dos
filhos. Uma relação de “tipo de” pode
ser vista entre os classificadores e
como uma entidade se baseia no outro,
herdando os atributos, as operações e
as relações dos pais.
O modelo dos pais pode ter muitas
classes de crianças e da mesma forma,
uma classe de crianças pode ter vários
modelos de pais. Em um diagrama UML, as
generalizações são mostradas por uma
linha sólida, tendo uma seta sem
preenchimento apontando da classe
infantil para a classe dos pais.
26. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
3. Execução:
É uma relação que liga dois
elementos do modelo com um
classificador
realizando/implementando o
comportamento de outro
classificador. A relação de
execução ajuda a entender como a
interface afeta a classe de
implementação. A realização é
representada por uma linha
tracejada com uma seta vazia.
27. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
4. Dependência:
Este é um tipo de relacionamento
mais fraco usado quando um objeto
não está contido em nenhum campo.
A relação de dependência existirá
que a mudança para uma classe
causará mudanças para a outra
entidade. É representada por uma
linha tracejada e uma ponta de
flecha apontando para a entidade
dependente.
28. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
5. Transição:
Na modelagem UML, o estado de
transição é usado para conectar
dois compósitos/estados
diretamente. Os estados são
creditados como a maior
transição e a principal fonte de
uma transição. Uma linha sólida
com uma seta cheia é usada para
representar a mudança de
controle entre duas classes.
Acima da seta, o evento é
rotulado como causador desta
transição.
29. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
6. Bordas de Atividade:
O diagrama de atividade é um
tipo essencial de diagrama UML
usado para representar o fluxo
entre as diferentes atividades
de um sistema. Eles ajudam a
entender a lógica por trás do
algoritmo de um sistema. O fluxo
de atividade é representado por
uma linha sólida com uma ponta
de flecha cheia apontando para a
próxima atividade na sequência.
30. COMPONENTES BÁSICOS DE UM DIAGRAMA DE CLASSES
6. Bordas de Atividade:
O diagrama de atividade é um
tipo essencial de diagrama UML
usado para representar o fluxo
entre as diferentes atividades
de um sistema. Eles ajudam a
entender a lógica por trás do
algoritmo de um sistema. O fluxo
de atividade é representado por
uma linha sólida com uma ponta
de flecha cheia apontando para a
próxima atividade na sequência.
31. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 1: Identificar as Classes
Liste todas as classes
relevantes para o sistema que
você está modelando. Pense
nos objetos principais que
interagem no sistema.
32. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 2: Identificar os Atributos
Para cada classe, identifique os
atributos (variáveis de
instância) que são necessários
para descrever o objeto da
classe. Anote-os.
33. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 3: Identificar os Métodos
Para cada classe, identifique os
métodos (funções ou
operações) que a classe deve
realizar. Anote-os.
34. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 4: Relacionamentos
entre as Classes
Identifique as relações entre as
classes, como associações,
heranças e agregações.
Determine como as classes se
relacionam umas com as
outras.
35. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 5: Desenhar o Diagrama
Use um software de modelagem UML
(Unified Modeling Language) ou papel e
lápis para criar o diagrama de classes.
Desenhe as classes como retângulos
com três divisões: a primeira contém o
nome da classe, a segunda contém os
atributos e a terceira contém os
métodos.
Desenhe as relações entre as classes
usando linhas, setas e rótulos
apropriados para indicar a natureza da
relação.
36. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 6: Adicionar
Multiplicidade e Papéis
(Opcional)
Se necessário, especifique a
multiplicidade (quantidade de
objetos relacionados) e os
papéis das classes nas
relações.
37. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 7: Revisão e
Refinamento
Revise o diagrama de classes
para garantir que todas as
classes, atributos e métodos
importantes estejam
representados.
Verifique se as relações
refletem com precisão a lógica
38. PASSO A PASSO PARA CRIAR UM DIAGRAMA DE CLASSES
Passo 8: Documentação
Adicione descrições ou
documentação às classes,
atributos e métodos, se
necessário.