Você está na página 1de 63

Exemplos prticos de UML:

Diagrama de Classes, Atividades,


Sequncia e Casos de uso

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Importncia da UML
Padro de documentao de modelagem de software da
OMG
Unifica os mtodos de Ivar Jacobson, Grady Booch e
James Rumbaugh
Modelagem grfica atravs de diagramas

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Ferramentas
Na hora de escolher a ferramenta importante verificar:
Suporte a UML 1.4 ou UML 2.0;
Integrao com cdigo fonte;
Grau de customizao do cdigo fonte gerado a partir dos
diagramas permitido pela ferramenta;
Capacidade de exportar e importar diagramas;

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Dificuldades na utilizao
Sincronismo entre cdigo e documentao UML;
Dificuldade em representar conceitos importantes como por
exemplos excees, generics e colees;
Suporte das ferramentas;

Globalcode open4education

Dificuldades na utilizao
Dependncia da ferramenta devido a dificuldade de
migrao;
Dificuldade em determinar se os diagramas esto
tecnicamente corretos ou em nvel de detalhe ideal;
Dificuldade em determinar quais diagramas devem ser
feitos e vo agregar valor ao projeto;

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

10

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Casos de Uso
Representam uma unidade funcional fornecida pelo
sistema.
Conceito criado por Ivar Jacobson.
Cada caso de uso captura um ou mais cenrios que
descrevem como o sistema deve interagir com os usurios
para atingir determinada meta ou funcionalidade.

11

Globalcode open4education

Casos de Uso
Importncia dos casos de uso:
Modelagem de requisitos funcionais
Estimativa de esforo
Planejamento de testes

12

Globalcode open4education

Diagrama de Casos de Uso


Diagrama da UML utilizado para representao grfica dos
casos de uso.
Seus principais elementos so:
Caso de uso
Ator
Associao
Relacionamento de incluso
Relacionamento de extenso
Generalizao

13

Globalcode open4education

Diagrama de Casos de Uso


Caso de uso: representado graficamente por uma elipse
com o nome do caso de uso.

14

Globalcode open4education

Diagrama de Casos de Uso


Ator: representa um papel representado por uma pessoa,
sistema ou dispositivo que interage com o sistema.

15

Globalcode open4education

Diagrama de Casos de Uso


Associao: representa a interao entre um ator e um
caso de uso.

16

Globalcode open4education

Diagrama de Casos de Uso


Relacionamento de incluso: relacionamento entre casos
de uso no qual um caso de uso inclui incondicionalmente
outro caso de uso.

17

Globalcode open4education

Diagrama de Casos de Uso


Relacionamento de extenso: relacionamento entre
casos de uso no qual um caso de uso pode estender a
funcionalidade de outro caso de uso.

18

Globalcode open4education

Diagrama de Casos de Uso


Generalizao: relacionamento no qual um ator ou caso
de uso possui as mesmas caractersticas de um elemento
base, mais suas caractersticas especficas.

19

Globalcode open4education

Diagrama de Casos de Uso


Os diagramas de casos de uso visam dois objetivos
principais:
Definio de escopo: permitem que sejam
visualizadas as funcionalidades presentes no sistema.
Identificao de papis: permitem identificar quem
interage com o sistema e a que funcionalidades tem
acesso.
No permitem detalhar os passos necessrios para
implementao da funcionalidade.

20

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

21

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Diagrama de Classes
Diagrama da UML utilizado para representao da
estrutura das classes do sistema.
Representa os relacionamentos, atributos e mtodos de
cada classe.

22

Globalcode open4education

Elementos - Diagrama de Classes


Classe: representa os mtodos e atributos de uma classe.

23

Globalcode open4education

Elementos - Diagrama de Classes


Associao: representa um relacionamento entre classes
onde uma das classes est presente como atributo na
outra.
Possui algumas propriedades bsicas:
Cardinalidade/Multiplicidade
Navegabilidade
Papis
Restries

24

Globalcode open4education

Elementos - Diagrama de Classes


Associao com cardinalidade 1-1

Associao com cardinalidade 1-n

25

Globalcode open4education

Elementos - Diagrama de Classes


Associao com cardinalidade n-n

Papis

26

Globalcode open4education

Elementos - Diagrama de Classes


Navegabilidade

Restries

27

Globalcode open4education

Elementos - Diagrama de Classes


Associao reflexiva

28

Globalcode open4education

Elementos - Diagrama de Classes


Agregao

Composio

29

Globalcode open4education

Elementos - Diagrama de Classes


Dependncia

30

Globalcode open4education

Elementos - Diagrama de Classes


Classe Associativa

31

Globalcode open4education

Elementos - Diagrama de Classes


Herana

32

Globalcode open4education

Elementos - Diagrama de Classes


Representao de interfaces

33

Globalcode open4education

Elementos - Diagrama de Classes


Implementao de interfaces

34

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

35

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Diagrama de Atividades
Diagrama da UML utilizado para representar o fluxo de
atividades dentro de um processo.
Semelhantes a fluxogramas
Utilizados para:
Detalhar os passos de um caso de uso;
Detalhar algoritmos complexos;
Representar atividades concorrentes;

36

Globalcode open4education

Elementos - Diagrama de Atividades

Atividade: representa uma etapa em um processo.

37

Globalcode open4education

Elementos - Diagrama de Atividades


Transio: fluxo de uma atividade para outra.

38

Globalcode open4education

Elementos - Diagrama de Atividades


Condio de guarda: condio necessria para a
realizao da transio.

39

Globalcode open4education

Elementos - Diagrama de Atividades


Deciso: dependendo de uma condio, mostra as
diferentes transies.

40

Globalcode open4education

Elementos - Diagrama de Atividades


Ponto de juno: mostra a unio de atividades em um
nico fluxo.

41

Globalcode open4education

Elementos - Diagrama de Atividades


Incio e fim: indicam o incio e o trmino do fluxo de
atividades.

42

Globalcode open4education

Elementos - Diagrama de Atividades


Concorrncia: indica atividades executando em paralelo.

43

Globalcode open4education

Elementos - Diagrama de Atividades


Raia: separa as atividades de acordo com o ator que as
executa.

44

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

45

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Diagrama de Seqncia
Diagrama da UML utilizado para representar a interao
entre objetos em ordem seqencial no tempo.
Utilizados para:
Ilustrar e validar a lgica implementada;
Identificar a necessidade de novos mtodos e classes;
Identificar quais classes sero mais complexas
Identificar gargalos na modelagem de um aplicativo

46

Globalcode open4education

Elementos - Diagrama de Seqncia


Objetos: representam as instncias de classes cuja
interao ser representada no diagrama.

47

Globalcode open4education

Elementos - Diagrama de Seqncia

Mensagens: representam as interaes entre objetos.

48

Globalcode open4education

Elementos - Diagrama de Seqncia

Mensagens de criao de objetos

49

Globalcode open4education

Elementos - Diagrama de Seqncia


Mensagens de retorno

50

Globalcode open4education

Elementos - Diagrama de Seqncia


Chamadas de um mtodo na prpria classe

51

Globalcode open4education

Elementos - Diagrama de Seqncia

Chamada condicional if com UML 1.4

52

Globalcode open4education

Elementos - Diagrama de Seqncia

Fragmentos: Elementos criados com UML 2.0 para


permitir o agrupamento de diversas mensagens em fluxos
mais complexos.

53

Globalcode open4education

Elementos - Diagrama de Seqncia


Chamada condicional if com UML 2.0

54

Globalcode open4education

Elementos - Diagrama de Seqncia


Chamada condicional if/else

55

Globalcode open4education

Elementos - Diagrama de Seqncia


Chamadas dentro de um lao

56

Globalcode open4education

Agenda

9
9
9
9
9
9
9
9

57

Importncia da UML
Ferramentas
Dificuldades na Utilizao
Diagrama de Casos de Uso
Diagrama de Classes
Diagrama de Atividades
Diagrama de Seqncia
Estudo de Caso

Globalcode open4education

Sistema de Vendas Online


Apresentamos a seguir um estudo de caso de modelagem
de um sistema de vendas online.
Nosso exemplo vai se concentrar na funcionalidade de
comprar produtos.

58

Globalcode open4education

Diagrama de Casos de Uso

59

Globalcode open4education

Diagrama de Classes

60

Globalcode open4education

Diagrama de Atividades

61

Globalcode open4education

Diagrama de Seqncia

62

Globalcode open4education

Diagrama de Seqncia

63

Globalcode open4education

Você também pode gostar