Diagrama De Atividades

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Diagrama De Atividades as PDF for free.

More details

  • Words: 2,982
  • Pages: 19
rr UML-I550

~

o Que é o Diagrama de Atividades?

oi c ~

o

'-0:



-o:

o => c

...ww

~

• Descreve os aspectos dinâmicos do sistema. • Mostra o fluxo entre as atividades, seus parale1ismos e desvios condicionais. • Pode ser usado para:

Z

IL

~

a: o

o..

o '" c

;; a: w

w '" a:

- Esclarecer graficamente casos de uso complexos.

- Descrever a interação do fluxo de trabalho entre vários

casos de uso.

- Especificar o funcionamento de métodos.

- Mostrar a navegação entre telas.

'0

'-0:

'" '" g w

a: Õ

'" O '" O C

~

• É utilizado também para desenhar um fluxo de

trabalho em modelagem de negócios.

256

o diagrama de atividades é bastante versátil podendo ser usado em um grande número de situações. Pode ser considerado uma evolução do fluxograma pois descreve atividades de maneira semelhante mas possui elementos a mais do que este. Descreve os aspectos dinâmicos do sistema, mostra o fluxo de uma atividade para outra num sistema. É um tipo especial de diagrama de gráfico de estado, exibindo o fluxo de uma atividade para outra, no sistema.Alguns autores colocam o conceito do diagrama de atividades próximo ao da fluxogramação. Um diagrama de atividades é desenhado normalmente a partir de um caso de uso. Outra forma de utilização é para todo o fluxo de trabalho (workf1ow) de um determinado processo. Também pode ser utilizado para mostra a navegação das telas de um sistema e sua associação a casos de uso.

I

I

I

I

INSTITUTO INFNET - 256



:1

:3

UML-1550

~

:=11

=-

~

Componentes

-

~

~ J

~ .lJ.

• Componentes de um Diagrama de Atividade

:Li:

z '­

~

:I

~:::

- Estado inicial (é obrigatório e só pode ter um) e final (opcional e pode ter mais de um);

<:

- Transições (setas)

~'

>

=

:I

,t;:;.

'" ~ o

• Separação (ou Bifurcação) e Junção (ou União) (forks e joins) • Desvios (ou decisões)

<

:11

=-

'" :::

- Estados de Atividades e estados de ação

~

- Objetos

:: j]

3:n

- Raias (Swirnlanes) - Demonstra o local onde são executadas as ações (classe, parte da organização)

o o

~

:11

257

::I

:I

:I ~

::I ;J ~



Diagramas de atividade são semelhantes aos de estado mas possuem os seguintes componentes: Estado inicial e estados finais: idem ao diagrama de estados. Transições: ligações entre as atividades. Separação: indica o início de atividades paralelas. União: vários fluxos chegando em uma barra preta e um saindo: todos os fluxos de entrada devem ser executados antes do fluxo de saída executar. Condição: idem ao diagrama de estados. Decisão: um losango que indica uma condição simples. Junção: vários fluxos chegando em um losango e um saindo: um dos fluxos de entrada deve ser executado antes do fluxo de saída executar. Raias ou partições: indicação de quem (ou o que) é o responsável pela execução da atividade.

:I

:I

:J :I

INSTITUTO INFNET - 257

UML-1550


Componentes

Cl f­

--'

o

-o:



«

o => o

ur

f­ W Z U.

~

a::

o


a>



> a:: W

a> W

a::

o .<

a> a>

of­

Ui a::

ã

a> O a> O

E

Cl

O

:

~.



258

Visualmente o diagrama de atividade se assemelha ao de estados, mas eles são utilizados com intenções diferentes.

INSTITUTO INFNET - 258

:

E~-­ .



UML-1550

:íI

:3

:3'

oi. o ~ a

Exemplo

« 'o­ « o c

:>

• o processo de desenvolvimento simples:

'" >­ ""e,z

!

~

~

=­:3

OI:

oa,

.

O)

oC « >

OI: J:lJ

'" c:

Listar Requisitos

UJ

Funcionais

o >«

O)

O)

oIiii

OI:

a O)

~

~

o co oc o>­

259

~

::I

::t

:i

:t

A figura acima mostra um exemplo de um diagrama de atividades que representa o processo simples de desenvolvimento apresentado no capítulo 2. O processo é iniciado com a descrição do problema em forma de documento de visão seguida da lista de requisitos funcionais. As atividades de listar casos de uso e desenhar a navegação das telas (usando um diagrama de atividades) podem ser feitas simultaneamente pois uma complementa a outra. São feitas as descrições de todos os casos de uso e o desenho do diagrama de casos de uso. A partir das descrições as classes potenciais são identificadas.

:I

O desenho das classes e dos diagramas de sequência (um ou mais para cada caso de uso) é feito em paralelo já que muitos métodos das classes são criados no momento em que o processo está sendo detalhado no diagrama de sequência.

~

Caso alguma classe possua estado (status, situação) que justifique sua modelagem, os diagramas de estado correspondentes são criados.

=t

O estado final é representado pelo projeto e construção do sistema que aparecem como uma única ativadade apenas para efeitos de simplificação.

-=a

---

==

~

~

INSTITUTO INFNET - 259

~! UML-1550

:iI ~

~

oi.

Decisão

C



...I

o -o: C> « o c[1J

::>

• A decisão ou desvio é utilizada para indicar os caminhos que podem ser percorridos.



[1J

Z

U.

;?;

:iI

=:31

a: "­

o

• E" uma condição (booleana) para um fluxo.

'"

o c «

> a: [1J

• Uso do termo [else].

'"a:w

o -o:

'"'"o

[ cartão]

Efetuar Paqam.ento

f-

Ui

a:

Validar Cartã.o

s

~

O '" '"Oc

[cheque]

O



~

(

Ve r i f i c a r CPF

261

:=I ~

Como o diagrama de atividade é baseado em um caso de uso, é através dos desvios que demonstramos e validamos os cursos alternativos.

::I

Observe que no diagrama de atividade todos os fluxos (principal e alternativos) do diagrama de casos de uso serão mapeados.



:::I

:I :::I

:=I

== :=:

::t

~

INSTITUTO INFNET • 261

I

UML-155D

t=

-r
Fluxo de Objetos

~

o

.<{

-~ ~

C>

<{

o c

::> LU

• Fluxo de Objetos

t;j Z

u,

;?;

- As ações podem alterar o estado de um objeto ou mesmo criá-lo.

a: O

Q. Cf)

O C

<{

>

a:

- Pode ser interessante exibir o estado em que o objeto se encontra dentro de um Diagrama de Atividades.

LU Cf)

LU

a:

'O

.<{ Cf) Cf)

O

l::

LU

a: Õ Cf)

O

~

i2 ~

I!!

Cf)

O C

O

....

r

262

Atividade e estados juntos podem trazer muita informação ao diagrama, cuidado com a poluição visual, tenha sempre em mente o objetivo do diagrama que está sendo desenhado.

INSTITUTO INFNET - 262



UML -1550

:31
:iI

Exemplo

'" :::; o

""o­
:I

'"'

=>

'" ::.J

ur

Z

u,

~

:iI

6c, O)

o

C


:I

=-

::>

o:: W

li> W

o:

0< >C( O)

li>

o



iij

o:

Õ O)

o

:I o

li>

C

oI­

~

=­ =­ ~

~

263

No exemplo acima os objetos Pedido e Cobrança tem seus estados alterados por determinadas atividades durante o fluxo de trabalho. O processamento do pedido altera o status do pedido para processando. Após o envio do pedido, este tem seu estado alterado para entregando enquanto o título a receber é criado com o status de aberto. Na recepção do pedido este tem seu status alterado para entregue. Após o pagamento o título a receber é considerado pago. No fechamento do pedido, ele tem seu status alterado para fechado.

~

~

~

:=I

:I :=li

::I :I

INSTITUTO INFNET - 263

UML- /5.50

I:

~ oi.

~

Ações e Atividades

o ~

~ o­


u

'I:

::l

o

w

li;

""~ u,

'I::

ti:

oC­

Ul

o

o ti:

t=

w

Ul

w

ti:

o

'
I::

CIl

o

!::

w

- podem ser decompostos, - podem ser interrompidos, - tomam tempo até completar.

ti:

Õ Ul

o Ul oo

~

~

~

264

Um estado de ação é a menor porção do código, se houver divisão no "validar DV do CPF", este não é um estado de ação.

INSTITUTO INFNET • 264

t::

-

UML-1550

~

:iI

:ti



~


Uso do Diagrama de Atividades

" ...l

o

< :..> -c

~II

• o diagrama de atividades pode ser usado em

z"'"

...

~

várias situações:

~

'" o

1. 2. 3. 4.

Q

-c

>

:l!:

"""" D

:li::

o

<:



;11







:ti 51 ~I



'"

;: '" n %

Descrição de processos Descrição de um caso de uso Descrição de um método Navegação de telas

:i

D

.,o o

g

265

o diagrama de atividades serve para descrever uma vasta gama de operações, como por exemplo: 1. Descrição de processos, fluxos de trabalho e sequenciamento de casos de uso. 2. Detalhamento de um caso de uso mais extensos. Normalmente nestes casos é mais fácil entender o diagrama de atividades do que um texto descritivo. 3. Descrição de métodos com lógica complexa. 4. Navegação de telas. Embora não seja o diagrama ideal para esta tarefa, é uma boa opção pois faz parte da especificação da UML. Além disso, como os desenvolvedores usam ferramentas UML, o diagrama de atividades sempre estará a mão para auxiliar nesta tarefa.

:I

:I

:!

:s

§li ~

INSTITUTO INFNET - 265

~

UML-1550

E

..:o

E

Descrição de Processo

~

o .« ~ o :> o

UJ

~

• Fluxo de trabalho - Desenho em partes

li;

a:

~

- Considere a construção de uma casa: deve haver a seleção do terreno, em seguida a contratação de um arquiteto será necessária para desenhar o projeto da casa, para então analisar o projeto e caso ele seja aprovado, serão feitos os acertos e definições de construção e então é dado o início da obra.

a: o 11.

(J)

o

o « > a: UJ

(J)'

UJ

a: o .« (J) (J)

... o

m a:

Õ (J)

o (J) oc o

I:

E E E

...

'~

266

I: ~

Para o exemplo apresentado teremos que desenhar um diagrama de atividades. I II

INSTITUTO INFNET • 25='

C

:li

UML-1550

:li

=-

:31


Descrição de Processo

c :i

o

o« u­ < u

::>

o

1a. Parte - Identificar os fluxos, as atividades

ar

ij Z L

Selecionar o terreno

~

:31

5 ~

o '" c

Contratar arquiteto

:li ,.,.

Desenhar o projeto

<

> a::

LI

a:: o o«

:íI

.,.,

Analisar o proj eto

!:::

Iniciar a obra

o

'"Õ

OI:

al

:!li

o

al

o o

o

...

:3 267

~

=:iI

~

~

Com os fluxos identificados fica mais fácil iniciar o desenho do diagrama, nesta parte devemos pensar nas atividades que o sistema deverá desenvolver. Ao final desta etapa devemos descobrir se existe alguma atividade que pode ficar em paralelo com alguma outra.

b. I~

b 6 ~ ..-.

Cf

INSTITUTO INFNET • 267

UML-1550

I:::::

Descrição de Processo 2a. Parte - Identificar atividades paralelas - Selecionar o terreno - Contratar arquiteto

268

Este é o estudo de threading ou de processos que são executados simultaneamente, identificamos no meio de todos os fluxos levantados se existem atividades que podem ser desenvolvidas simultaneamente. Após este passo devemos descobrir qual a ordem de execução das atividades.

t-: .JSi.

It:=

.R:=.

INSTITUTO INFNET - 268

11



-• •

UML-1550

~

Descrição de Processo

-'

-
~:i!

3a. Parte - Identificar ordem de execução das atividades

Ü

z.... ~

:E:

o

e,

1.

~


Selecionar o terreno Contratar arquiteto

>

11 ..

:E: . ti .ti

:E:

2. Desenhar o projeto 3. Analisar o projeto 4. Iniciar a obra

;<

iI

'"~ E

ª 11 . ~

::: ::l

O,

11 269

11

-• ,. -;­ -

-

A ordenação da execução das atividades se toma fácil quando se conhece o negócio em questão, ainda neste momento podem surgir dúvidas de negócio que devem ser resolvidas juntamente com o usuário/gestor da informação. Depois devemos descobrir se no nosso esquema há alguma decisão, se a execução de uma atividade depende de alguma condição.

11

11

INSTITUTO INFNET - 269

UML-I550


-•

Descrição de Processo

Cl

~

o

'00: o. 00: o ::> Cl

4a. Parte - Identificar desvios e condições

w

I­ W

Z

u. ~

a:

oD..

Para iniciar a obra o projeto precisa ser

aprovado.

A aprovação do projeto é a condição para o

início da obra.

cn

oCl

00:

> a: w

g] a:

O· '00:

cn cn

o m



a: Õ

cn o cn

oCl oI­

270

Os desvios são as opções de caminhos que podem ser trilhadas no decorrer da execução das atividades.

I::

~

Ao término desta identificação dá-se o início do desenho do diagrama.

INSTITUTO INFNET - 270

3

UML-1550

31

~


Descrição de Processo

::>

:3

o

< t> -c u

~

::>

~

o::



:11

~



o

5a. Parte - Desenho do Diagrama

'-'

jj

zu, ~

o <>.

'" o c -c >

...'" '" :.J

'" o < '" o '" ....

~

'" 13 ""o

'" o ::>

e

[ rejeitado pela terceira vez]

271

~

=­ =­





Não há mistério no desenho do diagrama, a princípio devemos identificar as atividades, depois as atividades que podem ser colocadas em paralelo e a ordem que devem ser executadas, em seguida descobrir se há desvios e suas condições. Pronto o desenho está pronto. Porque usar a junção e bifurcação? A bifurcação do exemplo indica que o 'Contratar Arquiteto' e o 'Adquirir Local' são atividades que podem ser simultâneas, inclusive podem ser feitas por recursos diferentes (processadores ou profissionais). A junção do exemplo, indica que para que o 'Desenho do Projeto' seja iniciado ele deve esperar que o 'Contratar Arquiteto' e o 'Adquirir Local' estejam finalizados.

~

:­ :I

:s

=I

;;a

:I

11

INSTITUTO INFNET - 271

UML-I550


Descrição de Caso d.e Uso

c

~

o 'c00 o: co: O

::l O W

Nome: Comprar Pacote de Viagem Descrição: Este caso de uso trata a escolha do pacote de viagem por parte do cliente. Ator: Cliente

.... W

Z

LL

~

o::

O

11­ Ul

Curso Normal: 1. Cliente solicita Modulo de Pacotes 2. Sistema lista pacotes existentes 3. Cliente seleciona pacote desejado 4. Sistema exibe as informações do pacote selecionado 5. Sistema solicita identificação do cliente 6. Cliente informa login e senha 7. Sistema exibe nome do cliente e solicita número de vagas 8. Cliente informa número de vagas 9. Sistema calcula pacote do cliente 10. Cliente confirma compra 11. Sistema registra a compra

O

c co: >

o:: w [fl o:: O 'cUl

o: Ul

O

!:: w

ee

Õ Ul

O

Ul

O

c

O ....

Cursos Alternativos Passo 7: Caso login ou senha inválidos 1. Sistema informa que login e senha estão inválidos. 2. Retornar ao passo 6.

Passo 9: insuficiente

Caso

Número

1. Sistema informa que não vender tantas vagas.

de

vagas

é possível

2. Sistema pergunta se cliente deseja outro pacote ou novo número de vagas para este pacote Caso selecionado novo número de vagas: a. Retornar ao passo 8 Caso selecionado outro pacote: a. Retornar ao passo 2

272

Um dos usos de um diagrama de atividades é a descrição de casos de uso complexos. Na figura acima é mostrado um caso de uso que descreve uma operação de compra de pacote de viagem. A descrição é complexa pois envolve vários fluxos alternativos, incluindo opções diferentes dentro de um mesmo fluxo. Neste caso o desenho de um diagrama de atividade pode facilitar o entendimento do processo e validação do caso de uso.

INSTITUTO INFNET - 272

11

UML-1550



li

:!

Descrição de Caso de Uso

~

o

o<

o­ <

li

~

i:: Lt

Z

J...

)<E-----\ Buscar dados do pacote "'_;:-_ _--\

~

:li ;:. J!:

~

[ login err ado ]


~

> :I: ..u ..u r

..

[ outro pacote ]

o

-=:

iI

'" '" O :;:;:

15

.,

[ número de vagas err ado ]

:::l

11 .g c

[ número d vagas ok] \

:P­



:li

273

No desenho do diagrama fica fácil visualisar todas as exceções do caso de uso além de não haver ambiguidades que possam comprometer o entendimento do processo.

=­ ~

:I :11

::I



. ~



I

I

INSTITUTO INFNET • 273

UML-I550


Descrição de Método

~

o .« ~ o o

:::>

w



tu z u,

~

o::

o

e, (Jl

oo

[,air 1

«

> o::

.1.presentar \. Mensagem. Final

w w o::

(Jl

o .« (Jl (Jl

o

!iio::

c

(Jl

o (Jl oo

o



I 274

A figura acima mostra a descrição do método "main" do Banco Money. Repare que os estados Sacar e Consultar Saldo não estão detalhados neste diagrama. Ambos incluem outro diagrama de atividades que deve ser desenhado para detalhar estas operações (sacar e consultar respecti vamente).

INSTITUTO INFNET - 274

I

UML-1550

iI

iI

~

Navegação de Telas

-

;;;(




o

iI

:::l

• Banco Monev: Telas x Casos de Uso

e....

~

z

~

iI

~

:l

o

::l

11

'" > OI:

.,...... o:: o

.,.,

-o:

11

2

ii %

:5

iI

'"o

:l

o

::>

;:

iI 275

li

-

-;.

-

---

-

o diagrama acima mostra um uso bem interessante de um diagrama de atividades: mostrar a navegação completa das telas de um sistema. Repare que algumas telas se referem a casos de uso do sistema: Tela de Depósito - Efetuar Depósito

Tela de Login - Acessar Conta

Tela de Saque - Efetuar Saque

Tela de Consulta ao Saldo - Consultar Saldo

;I



11

INSTITUTO INFNET - 275

Related Documents

Atividades
November 2019 27
Atividades
May 2020 8
Atividades
October 2019 25
Atividades De Quebra
June 2020 4