Você está na página 1de 6

LUIZ AFONSO PECCINI

UML
DIAGRAMAS DA UML

SÃO JOSÉ DO RIO PRETO


2008
Diagramas da UML
1

1. DIAGRAMAS DA UML

DIAGRAMAS DE DIAGRAMA DE CLASSES (Class Diagram), DIAGRAMA DE OBJETOS (Object Diagram),


ESTRUTURA DIAGRAMA DE ESTRUTURA COMPOSTA (Composite Structure Diagram), DIAGRAMA DE
(Stru COMPONENTES (Component Diagram), DIAGRAMA DE IMPLANTAÇÃO (Deployment
cture Diagram) Diagram) e DIAGRAMA DE PACOTES (Package Diagram).
DIAGRAMA DE CASO DE USO (Use Case Diagram), DIAGRAMA DE MÁQUINA DE
ESTADOS (State Machine Diagram) e DIAGRAMA DE ATIVIDADES (Activity Diagram).
DIAGRAMAS DE
DIAGRAMA DE SEQÜÊNCIA (Sequence Diagram), DIAGRAMA
COMPORTAMENTO DIAGRAMAS DE
DE COMUNICAÇÃO (Communication Diagram), DIAGRAMA DE
(Behavior Diagram) INTERAÇÃO
VISÃO GERAL DA INTERAÇÃO (Interaction Overview Diagram)
(Interaction Diagram)
e DIAGRAMA TEMPORAL (Timing Diagram).

1.1. Hierarquia de Classes dos Diagramas da UML

1.2. Diagramas Estruturais

Os diagramas estruturais da UML são utilizados para que se possa visualizar,


especificar, construir e documentar os aspectos estáticos de um sistema. Aspectos estáticos
de um sistema podem ser considerados como sendo uma representação de seu esqueleto e
estrutura relativamente estáveis (inalteráveis).

1.2.1. Diagrama de Classes (Class Diagram)

O diagrama de classes apresenta elementos conectados por relacionamentos. Este


diagrama representa o modelo da estrutura de um sistema orientado a objetos, demonstrando
as classes, os tipos e os relacionamentos. É usado para exibir entidades do mundo real, além
de elementos de análise e projeto.
É uma modelagem muito útil para o sistema, define todas as classes que o sistema
necessita possuir e é a base para a construção dos diagramas de comunicação, seqüência e
estados. É uma representação da estrutura e relações das classes que servem de modelo para
objetos.

Prof. Luiz Afonso Peccini


Diagramas da UML
2

1.2.2. Diagrama de Objetos (Object Diagram)

O diagrama de objetos apresenta objetos e valores de dados. Este diagrama


representa a modelagem de instâncias das classes de um sistema em determinado ponto e
momento de execução. Corresponde a uma instância do diagrama de classes, mostrando o
estado de um sistema em um determinado ponto do tempo.
O diagrama de objetos é uma variação do diagrama de classes e utiliza quase a
mesma notação, com duas exceções: os objetos são escritos com seus nomes sublinhados e
todas as instâncias num relacionamento são mostradas. É como se fosse o perfil do sistema
em um certo momento de sua execução, mostrando os objetos que foram instanciados das
classes.
Os diagramas de objetos não são tão importantes como os diagramas de classes, mas
eles são muito úteis para exemplificar diagramas complexos de classes ajudando muito em
sua compreensão.
Diagramas de objetos também são usados como parte dos diagramas de colaboração,
onde a colaboração dinâmica entre os objetos do sistema são mostrados.

1.2.3. Diagrama de Estrutura Composta (Composite Structure Diagram)*

O diagrama de estrutura composta é usado para mostrar colaborações entre um


conjunto de entidades que cooperam entre si para executar uma determinada função. A
estrutura, neste caso, representa uma composição de elementos que estão interconectados
(conectados entre si) para se atingir um objetivo comum.
Definido a partir da UML 2.0 destina-se à descrição dos relacionamentos entre os
elementos. É utilizado para descrever a colaboração interna de classes, interfaces ou
componentes para especificar uma funcionalidade e muito útil para representar uma
estrutura formada por um conjunto de estruturas complexas ou em projetos baseados em
componentes.
Embora este diagrama seja semelhante ao diagrama de classes, ele expressa
arquiteturas de tempo de execução, padrões de uso e os relacionamentos dos elementos
participantes, enquanto que o diagrama de classes representa uma visão estática da estrutura
de classes.
*Nota: elemento inserido/alterado a partir da UML-2.0.

1.2.4. Diagrama de Componentes (Component Diagram)

O diagrama de componentes representa os componentes que farão parte dos sistemas


em construção, demonstrando as dependências entre esses componentes, ou seja, mostra as
dependências entre componentes de software, apresentando suas interfaces. Ilustra como as
classes deverão ser organizadas através da noção de componentes de trabalho. Por exemplo,
pode-se explicitar (tornar claro), para cada componente, qual das classes que ele representa.
É utilizado para:
» modelar os componentes do código-fonte e do código-executável do software;
» destacar a função de cada módulo para facilitar a sua reutilização;
» auxiliar no processo de engenharia reversa, por meio da organização dos
módulos do sistema e seus relacionamentos.

Prof. Luiz Afonso Peccini


Diagramas da UML
3

1.2.5. Diagrama de Implantação (Deployment Diagram)

O diagrama de implantação representa a configuração e a arquitetura de um sistema


em que estarão ligados seus respectivos componentes, podendo ser representada também a
arquitetura física de hardware, processadores, etc. Mostra a arquitetura do sistema em
tempo de execução, as plataformas de hardware, artefatos de software e ambientes de
software (como sistemas operacionais e máquinas virtuais). Descreve os componentes de
hardware e software e sua interação com outros elementos de suporte ao processamento.

1.2.6. Diagrama de Pacotes (Package Diagram)*

O diagrama de pacotes é usado para organizar elementos de modelo e mostrar


dependências entre eles. Descreve os pacotes ou pedaços do sistema, como o sistema é
dividido em agrupamentos lógicos e mostra as dependências entre estes.
*Nota: elemento inserido/alterado a partir da UML-2.0.

1.3. Diagramas Comportamentais

Os diagramas comportamentais da UML são utilizados para que se possa visualizar,


especificar, construir e documentar os aspectos dinâmicos de um sistema. Aspectos
dinâmicos de um sistema podem ser considerados como sendo uma representação de suas
partes que sofrem alterações. Os aspectos dinâmicos de um sistema envolvem itens como o
fluxo de mensagens ao longo do tempo e a movimentação física de componentes em uma
rede.

1.3.1. Diagrama de Casos de Uso (Use Case Diagram)

O diagrama de casos de uso representa um conjunto de cenários identificados (vários


casos de uso), que seja útil aos usuários de um sistema. É utilizado nas fases de
levantamento e análise de requisitos, embora seja consultado durante todo o processo de
modelagem, além de servir de base para a construção de outros diagramas. Mostra os casos
de uso, atores e seus relacionamentos que expressam a funcionalidade de um sistema.
Em sistemas complexos são necessários muitos casos de uso para uma correta e
completa descrição de todas as funcionalidades requeridas pelo sistema. Os casos de uso
devem ser identificados através de nomes curtos que identifiquem a sua atividade sem
ambigüidade.
Para facilitar a visão geral do sistema é muito comum reunir casos de uso similares
em pacotes e criar diagramas que ilustrem essa reunião e qual a interação com outros
sistemas.

1.3.2. Diagrama de um Caso de Uso

O diagrama de um caso de uso é a representação de uma função, manipulada por


uma entidade do sistema, conhecida como ator.
Identificar um caso de uso, portanto, é um esforço que envolve:
» descobrir um ator;
» verificar para esse ator ações das quais ele participa;

Prof. Luiz Afonso Peccini


Diagramas da UML
4

» agrupar tais ações de forma que possuam um nome em comum (geralmente um


verbo no infinitivo: CadastrarPessoa, GerarPedido, etc.).

Passos que auxiliam na sua criação:


1. identifique aqueles que usarão o sistema de maneira direta, ou seja, identifique
os atores;
2. escolha um desses atores;
3. defina a visão desse ator, ou seja, o que ele quer do sistema – cada um desses
desejos torna-se um caso de uso;
4. para cada caso de uso, identifique o curso da relação ator-caso de uso;
5. observe se o caso de uso em questão possui alguma alternativa de uso. Essa
observação é importante para identificar se esse caso de uso tem algo em comum
com outros casos de uso. Se isso for verdade, é necessário desmembrar essa
porção comum, de forma a criar um caso de uso genérico.

Os diagramas de caso de uso ajudam os stakeholders a entenderem a natureza e


escopo da área de negócio ou sistema em desenvolvimento.

1.3.3. Diagrama de Máquina de Estados (Statechart Diagram)

[Diagrama de Gráfico de Estados]


Diagrama de máquina de estados representa estados possíveis de um objeto em
particular. Neste diagrama são demonstrados os estados de um objeto, eventos, transições e
atividades. Representa as ações ocorridas em resposta ao recebimento de eventos.
Nota: elemento inserido/alterado a partir da UML-2.0.

1.3.4. Diagrama de Atividades (Activity Diagram)

Diagrama de atividades representa a execução de ações ou atividades e os fluxos que


são disparados pela conclusão de outras ações ou atividades. Representa um fluxo de
controle de atividades que ocorrem no processo de um sistema, oferecendo suporte para
comportamentos condicionais e paralelos.
Representa o negócio e o processo operacional do sistema.

1.3.5. Diagramas de Interação

Diagrama de interação (nome coletivo atribuído a diagramas de seqüências e de


comunicação) exibe uma interação - ação que se exerce mutuamente entre duas ou mais
coisas -, consistindo de um conjunto de objetos ou papéis, incluindo as mensagens que
podem ser trocadas entre eles. Os diagramas de interações abrangem a visão dinâmica de
um sistema.

1.3.5.1. Diagrama de Seqüências (Sequence Diagram)

Um projeto pode ter uma grande quantidade de métodos em classes diferentes. Isso
torna difícil determinar a seqüência global do comportamento.
Diagrama de seqüências mostra as interações que correspondem a um conjunto de
mensagens trocadas entre objetos e a ordem que essas mensagens acontecem. É um dos

Prof. Luiz Afonso Peccini


Diagramas da UML
5

diagramas de interação que dá ênfase à ordenação seqüencial em que os comportamentos


acontecem.
O diagrama de seqüências é um tipo de diagrama usado na UML que representa a
seqüência de processos – mais especificamente, a seqüência de mensagens passadas entre
objetos – num programa de computador. Esse diagrama é simples e lógico, a fim de tornar
óbvios a seqüência e o fluxo de controle.
Um diagrama de seqüências descreve a maneira como os grupos de objetos
colaboram entre si em algum comportamento ao longo do tempo (seqüência temporal). Ele
registra o comportamento de um único caso de uso, exibindo os objetos e as mensagens
passadas entre esses objetos no caso de uso.

1.3.5.2. Diagrama de Comunicação (Communication Diagram)*

[Diagrama de Colaboração]
Diagrama de comunicação mostra objetos, seus inter-relacionamentos e o fluxo de
mensagens entre eles. É um dos diagramas de interação que dá ênfase à organização
estrutural dos objetos que colaboram entre si.
O diagrama de comunicação [diagrama de colaboração na versão anterior da UML]
exibe uma interação, consistindo de um conjunto de objetos e seus relacionamentos,
incluindo as mensagens que podem ser trocadas entre eles.
Nos diagramas de seqüência e de comunicação existe uma correspondência biunívoca
entre seus elementos preservando as operações de ambos.
*Nota: elemento inserido/alterado a partir da UML-2.0.

1.3.6. Diagrama de Visão Geral (Interaction-Overview Diagram)*

Diagrama de visão geral é uma variação do diagrama de atividades que mostra de


uma forma geral o fluxo de controle dentro de um sistema ou processo de negócios. Cada
nó ou atividade dentro do diagrama pode representar outro diagrama de interação.
*Nota: elemento inserido/alterado a partir da UML-2.0.

1.3.7. Diagrama Temporal (Timing Diagram)*

Diagrama temporal mostra a mudança de estado de um objeto numa passagem de


tempo, em resposta a eventos externos. Apresenta o comportamento dos objetos e sua
interação em uma escala de tempo, focalizando as condições que mudam no decorrer desse
período.
*Nota: elemento inserido/alterado a partir da UML-2.0.

Prof. Luiz Afonso Peccini