22
ANÁLISE PROJETO E PROGRAMAÇÃO PARA WEB Profª. Maria Alice Jovinski DIAGRAMA DE A TIVIDADE

Aula diagrama de atividade 3º periodo uniao

Embed Size (px)

DESCRIPTION

Diagrama de atividades - Faculdade União

Citation preview

ANÁLISE PROJETO E

PROGRAMAÇÃO PARA WEB

Profª. Maria Alice Jovinski

DIAGRAMA DE ATIVIDADE

DIAGRAMA DE ATIVIDADE

Utilizado para obter um entendimento do

comportamento de um requisito;

Auxiliar os casos de uso;

DIAGRAMA DE ATIVIDADE

Trata-se de um caso especial de diagrama de estado no qual tudo ou a maioria dos estados é estado de ação e a maioria das transições é ativada por conclusão de ações nos estados precedentes;

É útil quando se pretende descrever um comportamento paralelo ou mostrar como interagem comportamentos em vários casos de uso;

DIAGRAMA DE ATIVIDADE

É fixo para uma classe, uma implementação de

operação ou um caso de uso, com o propósito de

focar em fluxos dirigidos por processamento interno

em vez de eventos externos;

Deve ser utilizado em situações onde todos ou a

maioria dos eventos representam a conclusão de

ações geradas internamente, quer dizer, fluxo

processual de controle, bem como situações onde

acontecem eventos assíncronos;

DIAGRAMA DE ATIVIDADE

Podem ser utilizados para diferentes propósitos:

Capturar o funcionamento interno de um objeto;

Capturar o trabalho (ações) que será desempenhado quando uma operação é executada;

Mostrar como um processo de negócio funciona em termos de atores, fluxos de trabalho, organização e objetos;

Mostrar como uma instância de caso de uso pode ser realizada em termos de ações e mudanças de estado de objetos;

Mostrar como um conjunto de ações relacionadas pode ser executado e como afetará objetos ao redor;

DIAGRAMA DE ATIVIDADE

Permite escolher a ordem pela qual as coisas

devem ser feitas, isto é, indica meramente as

regras essenciais de seqüências que necessitam

ser seguidas – esse é um aspecto fundamental

para diferenciar um diagrama de atividade de um

fluxograma.

DIAGRAMA DE ATIVIDADE

Fluxogramas normalmente são limitados a processos seqüenciais enquanto diagramas de atividade podem manipular processos paralelos;

Essa característica de paralelismo é importante na modelagem de negócios, pois nem sempre os procedimentos se caracterizam por uma seqüência mecânica de passos;

DIAGRAMA DE ATIVIDADE

Representa o estado de execução do método, em

outras palavras, o estado do objeto que executa o

método. Sob uma perspectiva conceitual, uma

atividade é alguma tarefa que precisa ser feita,

independentemente se for um computador ou uma

pessoa; e através de uma perspectiva de

implementação, uma atividade é um método sobre

uma classe;

Seu propósito é entender o algoritmo envolvido na

execução de um método;

DIAGRAMA DE ATIVIDADE

São usados para detalhar atividade interna de um objeto, mas eventos externos também podem aparecer;

Um evento externo surge quando o objeto está em um estado de espera – durante o qual não há qualquer atividade interna no objeto permanecendo no aguardo de algum evento resultante de uma atividade de outro objeto;

Pode haver mais de um possível evento que tire o objeto do estado de espera, o primeiro que acontecer dispara a transição;

DIAGRAMA DE ATIVIDADE

Atividade 1 Atividade 2

Atividade 3 Atividade i

Atividade n

[Condição 1]

[Condição 2]

[Condição de sincronização]

DIAGRAMA DE ATIVIDADE

Desvantagem é o fato de não deixar explícito quais

atividades os objetos executam e o modo como a

passagem de mensagem ocorre entre eles;

É útil aplicá-lo no início da modelagem de um

processo para ajudar na compreensão do processo

global – diagrama de interação podem ajudar na

alocação das atividades para classes;

Devem possuir um início e um fim;

NOTAÇÃO UML

Ligar Micro

Inicializar Jogo de Minas

Jogar

[jogo inicializado com sucesso] [jogo com problemas]

Estado inicial

Estado final

Estado de ação ou de atividade

CONCORRÊNCIA

Os diagramas de atividade podem modelar

atividades concorrentes. Para tal utiliza-se o

conceito de Forks e Joins

Os Forks e os Joins devem ser estar balanceados;

Um fork representa a transformação de um único fluxo de

controle em vários;

Um join representa a sincronização d dois ou mais fluxos de

controles concorrentes;

CONCORRÊNCIA

As atividades que sucedem o fork podem ser

realizadas em qualquer ordem;

As atividades associadas após um join só serão

iniciadas quando todas as atividades antes de um

join forem concluídas;

Ligar Micro

Inicializar Jogo de Minas

Desligar computador

Inicializar Internet

Fork

Join

REPRESENTAÇÃO

DIAGRAMA DE ATIVIDADE

O ponto forte do diagrama de atividade reside no fato de suportar e encorajar comportamento paralelo, tornando-se uma boa técnica para a modelagem de fluxo de trabalho e programação para multiprocessamento. Isso os torna uma grande ferramenta para modelagem de workflow;

DIAGRAMA DE ATIVIDADE

Como ponto fraco, os diagramas de atividade não fazem conexões entre ações e objetos de maneira clara. Fowler indica as seguintes situações para uso dos diagramas de atividade:

Análise de caso de uso;

Compreensão de fluxo de trabalho entre vários casos de uso;

Por outro lado, os diagramas de atividade não são

apropriados para as seguintes situações: Colaboração de objetos;

Comportamento de objetos em seu ciclo de vida;

Representando lógica condicional existente;

DIAGRAMA DE ATIVIDADE

Cancelar

Pedido

Autorizar forma

de pagamento

Avaliar item em

estoque

Registrar

Pedido

Aceitar pedido

[negado]

[ok]

[para cada item do pedido]

[em estoque]

[item existente em estoque

e forma de pagamento

autorizada]

*

Início

Receber o

Pedido

Preencher

Pedido

Enviar

Fatura

Entrega

durante a noite

Entrega

Regular

Fechar o Pedido

Separação

Fim

[pedido urgente][senão]

Intercalação

Recebe

pagamento

Junção

DIAGRAMA DE ATIVIDADE

O diagrama diz que estas atividades podem ocorrer

em paralelo. Essencialmente, isso significa que a

seqüência entre elas é irrelevante;

Essas atividades também podem ser executadas

intercalamente;

O diagrama de atividade permite que você escolha

a ordem em que faz as coisas, ou seja, ele

simplesmente determina as regras essenciais de

seqüência que você deve seguir;

DIAGRAMA DE ATIVIDADE

Isso é importante para a modelagem de negócios. Os negócios têm, freqüentemente, processos não necessariamente seqüenciais.;

Os diagramas de atividades também são úteis para os programas concorrentes, uma vez que você pode projetar graficamente quais caminhos (threads) você tem e quando eles precisam ser sincronizados;

Quando você tem comportamento paralelo, precisa sincronizar. Exemplo: “Não fechamos um pedido até que ele seja entregue e pago”;

22

Execução Serviço de Atendimento

ao ClienteSetor Financeiro

Receber o

Pedido

Preencher

Pedido

Entregar o

Pedido

Enviar a

Fatura

Receber o

Pagamento

Fechar

Pedido