A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 DIAGRAMA DE CLASSES PERSPECTIVA CONCEITUAL 1ª PARTE DIAGRAMA CLASSE, ATRIBUTO E OPERAÇÃO ASSOCIAÇÃO CLASSE ASSOCIATIVA AGREGAÇÃO E COMPOSIÇÃO RESTRIÇÕES.

Apresentações semelhantes


Apresentação em tema: "1 DIAGRAMA DE CLASSES PERSPECTIVA CONCEITUAL 1ª PARTE DIAGRAMA CLASSE, ATRIBUTO E OPERAÇÃO ASSOCIAÇÃO CLASSE ASSOCIATIVA AGREGAÇÃO E COMPOSIÇÃO RESTRIÇÕES."— Transcrição da apresentação:

1

2 1 DIAGRAMA DE CLASSES PERSPECTIVA CONCEITUAL 1ª PARTE DIAGRAMA CLASSE, ATRIBUTO E OPERAÇÃO ASSOCIAÇÃO CLASSE ASSOCIATIVA AGREGAÇÃO E COMPOSIÇÃO RESTRIÇÕES ELABORANDO O DIAGRAMA

3 2

4 3

5 4

6 5

7 6

8 7 Diagrama de Classes (com perspectiva conceitual) Item faturado quantFaturada Livro isbn título descrição quantEstoque preço prazoMédioEntrega Item pedido quantidadePedida preçoCobrado 1 0..* 1 Cliente código CPF nome endereço telefone [0..1] [0..1] Pedido numPedido dataEmissão nomePresenteado [0..1] endereçoEntrega dataCancelamento [0..1] status 1..* 1 1 faz -> Fatura numFatura dataEmissão dataVencimento valorPago [0..1] dataPagamento [0..1] dataPedidoCancelamento [0..1] dataCancelamento [0..1] status 1..*0..*1..*0..* 1 1 { Se uma fatura atende a um pedido, necessariamente os itens pedidos ligados à fatura devem ser do pedido ao qual a fatura está relacionada }

9 8

10 9

11 10

12 11

13 12

14 13 Cliente código CPF nome endereço telefone [0..1] [0..1] 1..*1 faz -> Pedido numPedido dataEmissão nomePresenteado [0..1] endereçoEntrega dataCancelamento [0..1] status

15 14

16 15

17 16

18 17 Papéis:

19 18

20 19 Fatura numFatura dataEmissão dataVencimento valorPago [0..1] dataPagamento [0..1] dataPedidoCancelamento[0..1] dataCancelamento [0..1] status 1..*0..* Item pedido quantidadePedida preçoCobrado quantFaturada ??

21 20 Classe associativa Fatura numFatura dataEmissão dataVencimento valorPago [0..1] dataPagamento [0..1] dataPedidoCancelamento [0..1] dataCancelamento [0..1] status Item faturado quantFaturada Item pedido quantidadePedida preçoCobrado 1..*0..*1..*0..*

22 21

23 22

24 23

25 24

26 25 Agregação: Departamento disciplina 1 TODO Parte

27 26 Composição: Pedido numPedido dataEmissão nomePresenteado [0..1] endereçoEntrega dataCancelamento [0..1] status Item pedido quantidadePedida preçoCobrado 1..*

28 27

29 28 Venda id forma pagamento data Produto id descrição preço custo preço venda comissão Item quant 1..* * Serviço id descrição preço * {ou} 0..* * Exemplo de restrição ou:

30 29 Exemplo de restrição subconjunto:

31 30 Exemplo de restrição relacionada a associações: Item faturado quantFaturada Livro isbn título descrição quantEstoque preço prazoMédioEntrega Item pedido quantidadePedida preçoCobrado 1 0..* 1 Cliente código CPF nome endereço telefone [0..1] [0..1] Pedido numPedido dataEmissão nomePresenteado [0..1] endereçoEntrega dataCancelamento [0..1] status 1..* 1 1 faz -> Fatura numFatura dataEmissão dataVencimento valorPago [0..1] dataPagamento [0..1] dataPedidoCancelamento [0..1] dataCancelamento [0..1] status 1..*0..*1..*0..* 1 1 { Se uma fatura atende a um pedido, necessariamente os itens pedidos ligados à fatura devem ser do pedido ao qual a fatura está relacionada }

32 31 DIAGRAMA DE CLASSES PERSPECTIVA CONCEITUAL 2ª PARTE DICAS DEPENDÊNCIAS AVANÇADO AGREGAÇÃO ATRIBUTOS E ASSOCIAÇÕES DERIVADAS ASSOCIAÇÃO TERNÁRIA GENERALIZAÇÃO ORGANIZAÇÃO DAS CLASSES EM PACOTES ELABORANDO O DIAGRAMA ERROS COMUNS

33 32 DICAS Foco: aspecto estático do sistema Não prejudicar a leitura com minimalismos Generalizações: evitar mais do que 5 níveis Nome para cada diagrama Evitar linhas cruzadas Elementos semânticos semelhantes próximos fisicamente Pode-se usar notações visuais que chamem a atenção É possível usar mais que um relacionamento, mas tentar evitar

34 33 DEPENDÊNCIAS AVANÇADO Tipos Definidos pela UML Bind: origem instancia o destino Derive: Origem computada através do destino (ex. Idade -> Data de Nascimento) Friend: Origem recebe visibilidade especial no destino InstanceOf Instantiate Powertype Refine Use

35 34

36 35 Atributo derivado Nota

37 36 Pedido numPedido dataEmissão nomePresenteado [0..1] endereçoEntrega dataCancelamento [0..1] status Item pedido quantidadePedida preçoCobrado / quantAtendida 1..* 1 0..* Livro isbn título descrição quantEstoque preço prazoMédioEntrega 0..* 1..* Cliente código CPF nome endereço telefone [0..1] [0..1] <- faz 1..* 1 /escolhe Associação derivada

38 37

39 38

40 39

41 40

42 41

43 42

44 43

45 44 Pagamento Particular tipo número cheque número banco Pagamento por Convênio número associado Convênio nome telefone data cobrança 0..* 1 1 Pagamento data prevista data pagamento valor cobrado valor pago Consulta data hora sintomas diagnóstico medicamentos

46 45

47 46 Restrição

48 47

49 48 Discriminador

50 49

51 50 Usar classes e associações para definir o glossário do sistema Jogo de Futebol descrito de seguida: O jogo de futebol é realizado por duas equipes de jogadores. Cada equipe é composta por 11 jogadores, com diferentes funções: o goleiro, zagueiros, médios, atacantes, e pontas de lança. O ponta de lança é um atacante especial por ter especiais características de goleador... O jogo é realizado num campo com medidas regulamentares (em comprimento e largura), tem duas balizas, cada qual em extremos opostos do campo. Ganha o jogo a equipe que marcar mais gols (i.e., colocar a bola) na baliza do adversário. No jogo apenas existe uma única bola, que apresenta características (peso, diâmetro, …) regulamentares... O jogo de futebol é mediado por uma equipe de 3 árbitros, em que um é o árbitro principal, e os outros dois são árbitros auxiliares… Exercicio: Modele os Relacionamentos

52 51

53 52 Controle de livros Controle de pedidos

54 53

55 54 Item faturado quantFaturada Livro (from Controle de Livros ) isbn título descrição quantEstoque preço prazoMédioEntrega Item pedido quantidadePedida preçoCobrado 1 0..* 1 Cliente código CPF nome endereço telefone [0..1] [0..1] Pedido numPedido dataEmissão nomePresenteado [0..1] endereçoEntrega dataCancelamento [0..1] status 1..* 1 1 faz -> Fatura numFatura dataEmissão dataVencimento valorPago [0..1] dataPagamento [0..1] dataPedidoCancelamento [0..1] dataCancelamento [0..1] status 1..*0..*1..*0..* 1 1 { Se uma fatura atende a um pedido, necessariamente os itens pedidos ligados à fatura devem ser do pedido ao qual a fatura está relacionada } Nome do package

56 55

57 56

58 57

59 58

60 59 DIAGRAMA DE ESTADOS DIAGRAMA ESTADO TRANSIÇÃO ENTRE ESTADOS

61 60 I. DIAGRAMA DE ESTADOS Um diagrama de estados é uma das formas de se visualizar uma máquina de estados Máquinas de Estado permitem a modelagem de aspectos dinâmicos de um sistema Máquinas de estado também podem ser vistas através de Diagramas de Atividades Diagrama de Estados enfatizam os estados dos objetos e as transições entre estes estados enquanto o Diagrama de Atividades enfatiza o fluxo de controle de uma atividade para outra

62 61 Em um Diagrama de Estado são descritos os estados de um objeto ao longo de sua vida. A modelagem dos estados de um objeto descreve a ordem que o objeto pode responder a eventos, desde a sua criação até a sua destruição. Há muitas possibilidades de se utilizar um Diagrama de Estados. Na etapa de Análise, por exemplo, ele pode ser útil para observarmos a mudança de estados ao longo de toda a vida do objeto a partir dos eventos e dos casos de uso que foram descritos. Exemplo: Diagrama de Estados representando um objeto Pedido.

63 62 Pedido criado Pedido parcialmente atendido Pedido totalmente atendido Pedido com solicitação de cancelamento de fatura Pedido cancelado Pedido fechado Cliente faz pedido Funcionário fatura pedido [ não foram enviados todos os livros ] Gerente avalia cancelamento de fatura [ há faturas a serem avaliadas ] Cliente solicita cancelamento de fatura Cliente paga fatura[ todas as faturas foram pagas ] Funcionário fatura pedido [ foram enviados todos os livros ] Cliente solicita cancelamento de fatura Funcionário fatura pedido[ não foram enviados todos os livros ] Funcionário fatura pedido [ foram enviados todos os livros ] Cliente solicita cancelamento de pedido Gerente avalia cancelamento de fatura [ canceladas todas as faturas ] Gerente avalia cancelamento de fatura [ há livros a enviar ] Gerente avalia cancelamento de fatura [ foram enviados todos os livros e há fatura não paga ] Gerente avalia cancelamento de fatura[ o cancelamento é aprovado, foram enviados todos os livros e já tinham sido pagas as demais faturas ]

64 63 II. ESTADO Estado: representa uma situação na vida de um objeto durante a qual o objeto satisfaz alguma condição, realiza alguma atividade ou aguarda um evento. Exemplo: Pedido criado Este estado corresponde a uma situação em que o pedido foi feito por um cliente mas ainda não foi atendido.

65 64 Estado inicial e final: são dois estados especiais Estado inicial: indica o local de início da máquina de estado Estado final: indica que a execução da máquina de estado foi concluída

66 65 Partes que compõem um estado: -Nome -Ações de Entrada e Saída -Transições Internas -Subestados -Eventos Adiados

67 66 Estado: representa uma situação na vida de um objeto durante a qual o objeto satisfaz alguma condição, realiza alguma atividade ou aguarda um evento. Exemplo: Pedido criado Este estado corresponde a uma situação em que o pedido foi feito por um cliente mas ainda não foi atendido.

68 67 Tipos de Eventos: -Externos: sistema e atores -Internos: objetos no interior do sistema III. Eventos

69 68 III. Eventos

70 69 É um relacionamento entre dois estados, indicando que um objeto passará de um estado origem ao estado destino quando um certo evento ocorrer e as condições especificadas forem satisfeitas. IV. TRANSIÇÃO

71 70 Componentes da transição: Estado de origem: é o estado atingido pela transição. Estado de destino: é o estado que estará ativo após a conclusão da transição. Evento de ativação: é a ocorrência de um estímulo capaz de ativar uma transição de estado. Estado de origem Estado de destino Evento de ativação

72 71 Condição de proteção: é representada por uma expressão booleana entre colchetes, colocada depois do evento, que é avaliada quando a transição é iniciada. Se a expressão for avaliada como falsa a transição não será iniciada.

73 72

74 73

75 74 ESTADOS HIERÁRQUICOS

76 75 ESTADOS DE HISTÓRICO

77 76 Exemplo Espera Persegue Morre Ataque Fuga Atacado Dist (player) < 10m Dist (player) < 4m Vida < 30% Levou tiro Vida <= 0 Dist (player) > 4m Dist (player) > 10m

78 77 DIAGRAMA DE ATIVIDADES ATIVIDADE, TRANSIÇÃO, PONTO DE DECISÃO, BARRA DE SINCRONIZAÇÃO E RAIAS (SWIMLANE)

79 78

80 79

81 80

82 81

83 82

84 83 Diferença em relação aos estados

85 84

86 85 - Podem haver pontos de decisão encadeados? - Podem ocorrer loops

87 86

88 87 Diferença dos pontos de decisão e barra de sincronização?

89 88

90 89

91 90 DIAGRAMA DE SEQÜÊNCIA DIAGRAMA DE SEQÜÊNCIA NOTAÇÕES DO DIAGRAMA DE SEQÜÊNCIA DIAGRAMA DE SEQÜÊNCIA COM PERSPECTIVA CONCEITUAL

92 91 Diagrama de colaboração: ênfase a organização estrutural dos objetos que enviam e recebem mensagens

93 92 Exemplo de Diagrama de Seqüência:

94 93

95 94

96 95

97 96

98 97

99 98

100 99

101 Engenharia de Projetos

102 Documentos de especificacao de Projetos - Projeto Arquitetural - Projeto de Interface - Projeto de dados - Projeto de componentes - Projeto de implantacao

103 PROJETO DE ARQUITETURA

104 Quatro passos elementares - -Representação do contexto - -Abstrações de mais alto nível através de arquétipos - -Componentes identificados e representados no contexto de arquitetura - Instanciações especificas de arquitetura

105 Atividades - Estruturacao do sistema - Modelagem de controle - Decomposicao modular

106 ESTRUTURACAO DO SISTEMA (divisao em subsistemas) DIAGRAMA DE CASO DE USO REAL PROJETO DE INTERFACE DIAGRAMA DE CLASSES ELABORANDO O DIAGRAMA DE CLASSES

107 Tipos - Arquitetura centrada em dados (grande fluxo de dados entre subsistemas) - Arquitetura Cliente / Servidor (componentes: cliente, servidor, redes) - Arquitetura em camadas ou Maquinas Abstratas - Arquitetura de chamada e retorno - Arquitetura orientada a objetos Depósito de dados Subsistema 1 Subsistema 2 Subsistema 3

108 Padroes Arquiteturais - Concorrencia - Persistencia (dados subsistem depois de criados) - Distribuicao (ex.: uso de broker - intermediario, CORBA)

109 Diagrama Arquitetural de Contexto - Subordinadores - Subordinados - Sistema no nivel de pares - Atores

110 Modelagem de Controle - Controle centralizado: um subsistema possui responsabilidade geral (ex. Main() ) - Controle baseado em eventos: resposta a eventos externos

111 Decomposicao em Modulos - Modelo orientado a objetos - Modelo de fluxo de dados (ex. Unix: duto e filtro) Filtro

112 Arquétipos Classe ou Padrão que representa uma abstração central critica para o projeto de arquitetura para sistema alvo. (classes abstratas, blocos construtivos, modelagem abstrata parcial)

113 Exercício Desenvolva para o projeto de um simulador de submarinos da PETROBRAS os seguintes projetos de arquitetura: - Diagrama de Classes -Tipos de Arquitetura a serem usados - Padrões de Arquitetura em relação a Concorrência, Persistência e Distribuição [descreva na forma de requisitos de sistema]


Carregar ppt "1 DIAGRAMA DE CLASSES PERSPECTIVA CONCEITUAL 1ª PARTE DIAGRAMA CLASSE, ATRIBUTO E OPERAÇÃO ASSOCIAÇÃO CLASSE ASSOCIATIVA AGREGAÇÃO E COMPOSIÇÃO RESTRIÇÕES."

Apresentações semelhantes


Anúncios Google