Curso UML Diagramas de Atividadebacala/ES/04 - DiagramasdeAtividade.pdf · 2018-04-04 · Diagrama...

Post on 11-Feb-2019

220 views 0 download

Transcript of Curso UML Diagramas de Atividadebacala/ES/04 - DiagramasdeAtividade.pdf · 2018-04-04 · Diagrama...

Diagramas de Atividade

Finalidade

• Esclarece fluxos de controles ou atividades em operações complexas e em casos de uso.

• Destaca a lógica de realização de uma tarefa;

• Decompõe uma atividade em subatividades (atividades de mais baixo nível), com fluxo de controle sequencial ou concorrente entre subatividades

Características

• Caso especial de Diagramas de Estados;

• Semelhantes aos antigos fluxogramas;

• Usados para modelar atividades concorrentes

• Uma transição entre atividades é gerada simplesmente pelo término de uma atividade e não por eventos externos.

Diagrama de Atividade

• Um diagrama de atividade exibe os passos de uma computação.

• Cada estado é um passo da computação, onde o sistema está realizando algo.

• É orientado a fluxos de controle (ao contrário dos DTEs que são orientados a eventos).

• Fluxogramas estendidos...

• Além de possuir toda a semântica existente em um fluxograma, permite representar ações concorrentes e sua sincronização.

• Elementos podem ser divididos em dois grupos: controle sequencial e controle paralelo.

4

Diagrama de Atividade

• Elementos utilizados em fluxos sequenciais:

• Estado ação (realizado instantaneamente)

• Estado atividade (leva um certo tempo para ser finalizado)

• Estados inicial e final, e condição de guarda

• Transição de término

• Pontos de ramificação e de união

• Elementos utilizados em fluxos paralelos:

• Barras de sincronização

• Barra de bifurcação (fork)

• Barra de junção (join).

5

Diagrama de Atividades -Principais elementos • Estados iniciais e finais;

• Atividades;

• Decisões;

• Transições;

• Barras de Sincronização;

• Partições.

Estados Iniciais e Finais

• Todo diagrama de atividade possui um estado inicial e um final.

• O estado inicial indica o início do fluxo de controle do diagrama e o estado final indica o término do diagrama.

• Sempre um estado inicial deve existir, mas podem existir vários estados finais.

Estados Iniciais e Finais - Representação Gráfica

Estado Inicial Estado Final

Atividade

• Ação a ser desenvolvida, e quando finalizada transfere automaticamente o fluxo de controle para outras atividades.

• O significado de uma atividade depende do contexto em que o diagrama é utilizado:

• Uma tarefa realizada por uma pessoa no caso da representação de um processo manual,

• Um processo no caso de um sistema automatizado ou

• Um método no caso de descrição de um outro método

Atividade - Representação Gráfica

ATIVIDADE

Decisão

• Recurso utilizado para controlar desvios no fluxo de controle de um diagrama de atividade.

• Composto por condições booleanas e cada condição, quando satisfeita, dispara uma transição correspondente.

Decisão - Representação Gráfica

[Não]

[Sim]

Transição

• Indica o caminho a ser seguido pela execução.

• Pode ter uma atividade ou decisão como origem ou termino.

• Quando possui uma decisão como origem, possui um condição de guarda que quando satisfeita permite a passagem do controle para a atividade seguinte.

Transições - Representação Gráfica

[Não]

[Sim]

Transição

Transição

Barras de Sincronização

• São usadas para especificar forks e joins.

• Um fork representa a divisão de um único fluxo de controle em vários fluxos de controle concorrentes

• Um join representa a sincronização de dois ou mais fluxos de controle concorrentes

Barras de Sincronização

• Os sincronizadores são utilizados para indicar o início e o término de processos paralelos.

• Uma transição que começa num sincronizador somente é executada quando todas as transições que chegam ao sincronizador ocorrerem.

• Quando um transição chega a um sincronizador, as transições que partem deste sincronizador ocorrem simultaneamente e independentemente.

Barras de Sincronização - Representação Gráfica

ATIVIDADE 1

ATIVIDADE 2ATIVIDADE 3

ATIVIDADE 4

FORK

JOIN

Um exemplo...

Outro exemplo...

Procurar Bebida [não há café]

[não há coca-

cola]

[há cola] [há café]

Por Água no Reservatório Por Café no Filtro Pegar Xícara

Por Filtro na Maquina

Ligar Máquina

Esperar que aqueça

/ligar cafeteira

Colocar café

Beber

Buscar latas de cola

luz desliga-se

Partições (swimlanes)

• Forma lógica de organização das atividades.

• Podem ser em termos de objeto, casos de usos ou processos de trabalho.

• Cada pista é encabeçada pelo nome da unidade organizacional, entidade ou objeto responsável pelas ações e atividades aí localizadas.

H

Solicitar produto

Processar pedido

Coletar m ateriais

Enviar pedido

Receber pedido

Pagar conta

Encerrar pedido

H

Cobrar do cliente

Cliente Vendas Estoque

Fluxos de Controle Sequenciais

• Deve haver um estado inicial e pode haver vários estados finais e guardas associadas a transições.

• pode não ter estado final, o que significa que o processo ou procedimento é cíclico.

• Uma transição de término significa o término de um passo e o conseqüente início do outro.

• ao invés de ser disparada pela ocorrência de um evento, é disparada pelo término de um passo.

22

Fluxos de Controle Sequenciais

• Um ponto de ramificação ou de decisão, possui uma única transição de entrada e várias transições de saída. • Para cada transição de saída, há uma condição de guarda

associada.

• Quando o fluxo de controle chega a um ponto de ramificação, uma e somente uma das condições de guarda deve ser verdadeira.

• Pode haver uma transição com [else].

• Um ponto de união reúne diversas transições que, direta ou indiretamente, têm um ponto de ramificação em comum.

23

Diagrama de Atividade

24

Exemplo de Diagrama de Atividade

25

Fluxos de Controle Paralelos

• Fluxos de controle paralelos: dois ou mais fluxos sendo executados simultaneamente.

• Uma barra de bifurcação recebe uma transição de entrada, e cria dois ou mais fluxos de controle paralelos.

• cada fluxo é executado independentemente e em paralelo com os demais.

• Uma barra de junção recebe duas ou mais transições de entrada e une os fluxos de controle em um único fluxo.

• Objetivo: sincronizar fluxos paralelos.

• A transição de saída da barra de junção somente é disparada quando todas as transições de entrada tiverem sido disparadas.

26

Fluxos de Controle Paralelos

• Algumas vezes, as atividades de um processo podem ser distribuídas por vários agentes que o executarão o processos de negócio de uma organização.

• Isso pode ser representado através de raias de natação (swim lanes).

• As raias de natação dividem o diagrama de atividade em compartimentos.

• Cada compartimento contém atividades que são realizadas por uma entidade.

27

Exemplo (Raias de Natação)

Seguradora OficinaSegurado

Acionar Seguro Recolher Automóvel

Consertar Automóvel

[else]

[perda total]Depositar Valor Segurado

Pagar Franquia Cobrar Fraquia

Avaliar Danos

28

Diagrama de Atividades X de Estados

Diagrama de

Atividades

Diagrama de

Estados

Ênfase no fluxo de uma

atividade para outra;

Ênfase no fluxo de um

estado para outro do

objeto.

Não é necessário

especificar os eventos;

Especificação

obrigatória dos eventos;

29

Exemplo: Biblioteca Caso de uso: Requisitar publicação

Vem requisitar

Devolve a

publicação

Recebe a

publicação

Consulta a

publicação

Vem levantar

Verifica

disponibilidade

Recolhe a

publicação

Empresta a

publicação

Coloca em lista de

espera

Aguarda

disponibilidade

Avisa o

requisitante

disponível

[ desiste ]

[ espera ]

[ disponível ][ indisponível ]

a biblioteca : Bibliotecarequisitante : Leitor

: requisição

[finalizada]

: requisição

[espera disponibilidade]

: requisição

[espera levantamento]

: requisição

[espera devolução]