UML
Aula 4
Professor: Paulo Vencio
Conteúdo Programático
• 5 Aulas
• O que é UML?
• 14 Modelos UML 2.5.1
Diagrama de Atividade
• É um diagrama comportamental.
• O diagrama de atividade era considerado um caso
especial do antigo diagrama de gráfico de estados,
chamado diagrama de máquina de estados
atualmente. A partir da versão 2.0 da UML, esse
diagrama passou a ser totalmente independente,
deixando até de se basear em máquinas de estados e
passando a se basear em redes de Petri.
• A modelagem de atividade enfatiza a sequência e
condições para coordenar comportamentos de baixo
nível. Dessa forma, o diagrama de atividade é o
diagrama com mais ênfase no nível de algoritmo da
UML e provavelmente um dos mais detalhistas.
• Esse diagrama apresenta muitas semelhanças com os
antigos fluxogramas utilizados para desenvolver a
lógica de programação e determinar o fluxo de
controle de um algoritmo.
Diagrama de Atividade
• Esse diagrama é utilizado, como o próprio nome
indica, para modelar atividades, as quais podem
descrever:
• Computação procedural, que corresponde
aos passos necessários para que uma
operação (método) de uma classe seja
concluída. Pode também incluir a chamada a
outras atividades, como no caso de uma
invocação de outro método.
• Modelagem organizacional para engenharia
de processos de negócios e workflow (fluxo de
trabalho), ou seja, definição das etapas
necessárias para que um processo seja
executado.
• Modelagem de sistemas de informação para
especificar processos no nível de sistema.
Diagrama de Atividade
• Atividade – especifica a coordenação de
execuções de comportamentos subordinados
usando um modelo de fluxo de controle e
dados. Esses comportamentos subordinados
podem ser iniciados em razão de outros
comportamentos no modelo terminarem sua
execução, por objetos e dados tornarem-se
disponíveis ou pela ocorrência de eventos
externos.
• Nó de ação – elemento mais básicos de uma
atividade. Um nó de ação representa um
passo, uma etapa que deve ser executada em
uma atividade. Um nó de ação é atômico, não
podendo ser decomposto.
Diagrama de Atividade
• Fluxo de controle – conector que liga dois nós,
enviando sinais de controle de um nó para o
outro. Um fluxo de controle pode também conter
uma descrição, uma condição de guarda e/ou
uma restrição, chamada, nesse diagrama, de
peso (weight).
• Nó inicial – nó de controle usado para
representar o início do fluxo quando a atividade é
invocada.
• Nó de final de atividade – nó de controle usado
para representar o fim do fluxo de uma atividade.
• Nó de decisão – nó de controle, utilizado para
representar uma escolha entre dois ou mais
fluxos possíveis. Em geral, um nó de decisão é
acompanhado por condições de guarda.
Diagrama de Atividade
• Nó de bifurcação/união - nó de controle que
pode tanto dividir um fluxo em dois ou mais
fluxos concorrentes, quando é chamado de
nó de bifurcação, como mesclar dois ou mais
fluxos concorrentes em um único fluxo de
controle, quando é chamado de nó de união.
• Final de fluxo – representa o encerramento
de uma rotina representada pelo fluxo, mas
não de toda a atividade.
Diagrama de Atividade
• Nó de objeto – representa uma instância de
uma classe, que pode estar disponível em um
determinado ponto da atividade.
• Alfinetes (Pins) – Alfinetes são nós de objeto
que representam uma entrada para uma
ação ou uma saída de uma ação. Fornecem
valores para as ações e recebem os valores
resultantes delas.
• Nó de parâmetros – é um nó de objeto
utilizado para representar a entrada ou a
saída de um fluxo de objetos em uma
atividade.
Diagrama de Atividade - Exceções
• No diagrama de atividade, é possível
detalhar a ocorrência de exceções, bastante
comuns na maioria das linguagens de
programação atuais.
• Para descrever a manipulação de uma
exceção, o diagrama de atividade disponibiliza
um fluxo, chamado fluxo de interrupção,
representado por uma seta em forma de raio
que aponta para a rotina de tratamento da
interrupção ou exceção.
Diagrama de Atividade - Ação de Envio de Sinal
• Ação de envio de sinal – É uma ação que
representa o envio de um sinal para um
objeto ou ação.
• Ação de evento de aceitação - É uma ação
que representa a espera de ocorrência de um
evento de acordo com determinadas
condições.
Diagrama de Atividade – Partição da Atividade
• Partições de atividade são um tipo de Grupo de Atividade, ou seja, um agrupamento de
elementos de atividade como nós e fluxos.
• As partições de atividade permitem representar o fluxo de um processo que passa por
diversos setores ou departamentos de uma empresa, ou mesmo um processo que é
manipulado por diversos atores.
Diagrama de Visão Geral de Interação
• É um diagrama comportamental e interativo.
• Este diagrama é uma variação do diagrama de
atividade. Seu objetivo é fornecer uma visão
geral do controle de fluxo.
• O diagrama utiliza quadros no lugar dos nós de
ação, embora símbolos como o nó de decisão e
o nó inicial sejam também utilizados.
• Existem basicamente dois tipos de quadros:
1. Quadros de interação – contêm qualquer
tipo de diagrama de interação da UML.
2. Quadros de ocorrência de interação –
normalmente fazem uma referência a um
diagrama de interação, mas não
apresentam seu detalhamento.
Diagrama de Componentes
• É um diagrama estrutural
• Este diagrama identifica os componentes que
fazem parte de um sistema, um subsistema ou
mesmo os componentes ou classes internas de
um componente individual.
• Um componente pode representar tanto um
componente lógico (um componente de negócio
ou de processo) ou físico como arquivos
contendo código-fonte, arquivos de ajuda (help),
bibliotecas, arquivos executáveis etc.
• A utilização de diagramas de componentes pode
ser particularmente útil em atividades de
gerenciamento de configuração e mudanças,
com o objetivo de modelar baselines, ou seja,
todo o conjunto necessário de arquivos para
produzir uma versão específica de um sistema.
Diagrama de Componentes – Componente
• Um componente é uma unidade autônoma
dentro de um sistema ou subsistema.
• Pode conter uma ou mais interfaces fornecidas e
requeridas.
• Embora possa ser dependente de outros
elementos em termos de interfaces requeridas,
um componente é encapsulado e suas
dependências são projetadas de tal forma que
possa ser tratado o mais independentemente
possível.
• Na UML 1.x, um componente era representado
por um retângulo com dois retângulos menores
sobressaindo à sua esquerda. A partir da UML 2,
esse símbolo foi substituído por um retângulo
contendo internamente o antigo símbolo.
Diagrama de Componentes – Estereótipos
A UML prevê diversos estereótipos prontos para o diagrama de
componentes, como:
• Executável (executable) – determina que o componente
em questão é um arquivo executável. O termo executável é
genérico, podendo se referir a módulos compilados em
Java.
• Biblioteca (library) – refere-se a bibliotecas contendo
funções e sub-rotinas que podem ser compartilhadas por
diversos componentes executáveis.
• Tabela (table) – refere-se a repositórios físicos de dados
onde as informações produzidas pelo sistema deverão ser
armazenadas.
• Documento (document) – faz referência a arquivos-texto
utilizados por outros componentes do sistema, como
arquivos de ajuda (help), por exemplo.
• Arquivo (file) – pode se referir a qualquer outro arquivo
que componha o sistema, como arquivos de código-fonte
dos módulos do sistema, por exemplo.
Diagrama de Componentes – Componentes Internos
• Um componente pode conter ou
implementar uma ou mais classes internas,
podendo conter também componentes
internos.
• Visão de caixa preta – a representação de
um componente sem apresentar seus
componentes ou classes internas.
• Visão de caixa branca – a representação de
um componente com suas classes ou
componentes internos.
• A contenção de classes por um componente
significa que este as implementa de alguma
maneira.
Ano: 2017, Banca: UPENET/IAUPE, Órgão: UPE, Prova: Analista de Sistemas - Banco
de Dados
1) O diagrama UML a seguir representa o seguinte tipo de diagrama:
a) Casos de uso
b) Classe
c) Sequência
d) Entidade Relacionamento
e) Atividades
Ano: 2017, Banca: FEPESE, Órgão: JUCESC, Prova: Analista de Informática
2) Sobre o diagrama de componentes UML 2, considere as seguintes afirmativas:
1. Descreve todos os componentes de um sistema de informação, incluindo os
componentes de hardware e software.
2. Os diagramas de componentes possuem um nível de abstração maior que os diagramas
de classes.
3. Além de descrever os componentes propriamente ditos, um diagrama de componentes
descreve também como os componentes são interligados entre si.
Assinale a alternativa que indica todas as afirmativas corretas.
a) É correta apenas a afirmativa 2.
b) São corretas apenas as afirmativas 1 e 2.
c) São corretas apenas as afirmativas 1 e 3.
d) São corretas apenas as afirmativas 2 e 3.
e) São corretas as afirmativas 1, 2 e 3.
Ano: 2018, Banca: CONSULPLAN, Órgão: Câmara de Belo Horizonte – MG, Prova:
Analista de Tecnologia da Informação - Desenvolvimento de Sistema
3) A UML (Unified Modeling Language) ou Linguagem de Modelagem Unificada é
uma linguagem visual, utilizada na modelagem de sistemas orientada a objetos,
onde são definidos elementos gráficos, que podem ser utilizados na modelagem de
sistemas. A UML é baseada em diagramas, que podem ser comportamentais ou
estruturais. São considerados diagramas estruturais, EXCETO:
a) Implantação.
b) Componentes.
c) Estrutura Composta.
d) Visão Geral da Interação.
Gabarito das Questões:
1. E
2. D
3. E