44
Exercício Considerando o processo de encerramento de conta abordado em exercício anterior, defina um Diagrama de Gráfico de Estados referente ao processo, enfocando os estados assumidos pelo objeto conta2. Tome como base o diagrama de sequência que foi definido para o processo. 1

Curso de UML Aula 04

Embed Size (px)

Citation preview

Page 1: Curso de UML Aula 04

Exercício

Considerando o processo de encerramento de conta abordado em exercício anterior, defina um Diagrama de Gráfico de Estados referente ao processo, enfocando os estados assumidos pelo objeto conta2.

Tome como base o diagrama de sequência que foi definido para o processo.

1

Page 2: Curso de UML Aula 04

Exercício

2

Page 3: Curso de UML Aula 04

Resolução do exercício

3

Page 4: Curso de UML Aula 04

Estado de Ponto de Escolha

Representa um ponto na Transição de Estados de um objeto em que deve ser tomada uma decisão, a partir da qual um determinado Estado será ou não gerado

4

Page 5: Curso de UML Aula 04

Exemplo

5

Page 6: Curso de UML Aula 04

Exercício

Para fixar o conceito sobre Diagrama de Atividade vamos definir um diagrama para a atividade Consulta Conta, definida no cenário do caso de uso de encerramento de conta, estudado no exercício anterior.

6

Page 7: Curso de UML Aula 04

Resolução do exercício

7

Page 8: Curso de UML Aula 04

Exercício

Elabore um Diagrama de Atividades para representar o algoritmo de cálculo de fatorial.

Lei de formação: N! = N*(N-1)*(N-2)...*1

8

Page 9: Curso de UML Aula 04

Resolução do exercício

9

Page 10: Curso de UML Aula 04

Diagrama de Implantação

Visão mais física da UMLEnfoca a questão da organização da

estrutura física sobre a qual o software irá ser implantado e executadoSó é útil se o sistema for ser executado

sobre múltiplas máquinas

10

Page 11: Curso de UML Aula 04

11

Diagrama de Implantação

Descreve o arranjo de componentes executáveis em nós de execução.Permite avaliar conseqüências da distribuição e

alocação de recursos.

NóRecurso computacional (tempo de execução)Computadores, memória, dispositivos periféricos.

Page 12: Curso de UML Aula 04

12

Diagrama de Implantação

Nível descritivo (geral)Descreve os elementos contidos em cada nó.Especifica as dependências entre elementos

(possivelmente em nós distintos).Padrão de comunicação entre nós.

Page 13: Curso de UML Aula 04

13

Diagrama de Implantação

Page 14: Curso de UML Aula 04

Diagrama de Implantação

14

Page 15: Curso de UML Aula 04

Exercício

Especifique um diagrama de implantação para o seguinte cenário. Um sistema encontra-se estruturado da seguinte forma:

Site de acesso via Internet Site de acesso via Intranet Webservice de validação de usuário Serviços

A empresa conta com uma DMZ, servidores de aplicação, servidor de dados, servidores Web

15

Page 16: Curso de UML Aula 04

UML 2.0

ObjetivosReestruturaçãoAplicaçãoImplementaçãoAdaptaçãoPrecisãoRe-utilização

16

Page 17: Curso de UML Aula 04

UML 2.0

Problemática UML 1.5Avanço da tecnologiaEntraves de utilizaçãoCompatibilidade

UML 2.0Criação de PerfisAdaptação a uma plataforma ou domínio de

aplicação específico

17

Page 18: Curso de UML Aula 04

UML 2.0

Abordadegem de MetamodelagemMais intuitivaMais pragmática

Técnicas de especificação formalModularidadeDivisão por camadas (Layering)ParticionamentoExtensibilidadeReuso

18

Page 19: Curso de UML Aula 04

UML 2.0 - Metamodelo

Modularidade – aplicado a grupos de construções dentro de pacotes e organiza características em Meta-Classes

Divisão por camadas Estrutura do pacote é dividida em camadas para separar as

construções do núcleo da metalinguagem das de nível mais alto Separação em 4 camadas; separar interesses em camadas de

abstração Particionamento – Organiza áreas conceituais dentro da mesma

camada Extensibilidade

Novo dialeto UML : utilização de perfis Nova linguagem relacionada a UML

Reuso – redefinição do metamodelo de UML, MOF e CWM

19

Page 20: Curso de UML Aula 04

UML 2.0

MOF – Meta-Object Facility Adotada pela OMG Define metadados para representação de objetos CORBA Auto-definição de sintaxe Sub-conjunto da sintaxe UML

Pacotes EMOF – Essential MOF CMOF – Complete MOF

20

Page 21: Curso de UML Aula 04

UML 2.0

InfraestruturaBiblioteca de infraestruturaDefinir um núcleo de metalinguagem que possa ser

reutilizado para definir uma variedade de metamodelosAlinhar o intercâmbio entre os modelosPermitir customização da UML através de perfis e a

criação de novas linguagens baseadas no mesmo núcleo de metalinguagem que a UML

21

Page 22: Curso de UML Aula 04

UML 2.0

22

Page 23: Curso de UML Aula 04

UML 2.0

NúcleoMetamodelo completoMDA – Model Driven Architecture

23

Page 24: Curso de UML Aula 04

UML 2.0

Tipos primitivos – tipos predefinidos que são comumente usados durante a metamodelagem

Abstrações – metaclasses abstratas que podem ser especializadas ou reutilizadas em outros modelos

Construções – metaclasses concretas utilizadas para modelagem orientada a objetos

Básico – base para produzir XMI (Metadata interchange) para UML, MOF e outros metamodelos

24

Page 25: Curso de UML Aula 04

UML 2.0

PerfisAdaptação de metamodelo existenteNão é útil sozinhoCriação de dialetos da UMLAdaptação ao surgimento de novas tecnologiasNão altera o núcleo da linguagem

25

Page 26: Curso de UML Aula 04

UML 2.0

DiagramasDiagrama de Máquina de EstadosDiagrama de ComunicaçãoDiagrama de Estrutura CompostaDiagrama de Interação GeralDiagrama de Tempo

26

Page 27: Curso de UML Aula 04

Diagramas UML 2.0

Estrutura Composta; Descreve a estrutura interna de um classificador; Também utilizado para descrever uma colaboração onde um

conjunto de instâncias que cooperam entre si para realizar uma tarefa;

Interação Geral; Variação do diagrama de atividades; Fornece uma visão geral dentro de um sistema ou processo de

negócio; Tempo;

Descreve a mudança no estado ou condição de uma instância de uma classe ou seu papel durante um tempo;

Mudança de estados de um objeto no tempo em resposta a eventos externos;

27

Page 28: Curso de UML Aula 04

Diagrama de Estrutura Composta

Pode representas as partes internas de uma classe, bem como suas portas de comunicação e interfaces

Utilizados para modelar colaborações Visão de um conjunto de instâncias que cooperam entre si Realização de uma tarefa ou um conjunto de tarefas interligadas Um objeto poderá fazer parte de n colaborações Cada colaboração deverá representar somente os aspectos do

objeto relevantes ao seu propósito

28

Page 29: Curso de UML Aula 04

Diagrama de Estrutura Composta

29

Page 30: Curso de UML Aula 04

Diagrama de Estrutura Composta

30

Page 31: Curso de UML Aula 04

Diagrama de Interação Geral

Variação do Diagrama de Atividades Fornece uma visão geral do controle de fluxos Utilização de quadros ao invés de Estados de Ação Dois tipos de quadros

Quadros de Interação Quadros de Ocorrência de Interação

Normalmente pode se tornar muito grande e confuso

31

Page 32: Curso de UML Aula 04

Diagrama de Tempo

Semelhante ao Diagrama de Máquina de Estados Representa a mudança de estados de um objeto durante o tempo Pouca utilidade para aplicações comerciais Foco em aplicações de tempo real

32

Page 33: Curso de UML Aula 04

Curso de UML

REVISÃO

33

Page 34: Curso de UML Aula 04

Exercícios de Fixação

Arnaldo deseja escrever uma aplicação de controle de tarefas para colocar em seu Palm. As especificações da aplicação são as seguintes:

O cadastro de cada tarefa contém o número da prioridade, representado por um valor real. Isso permite entrar com intervalos intermediários. Além da prioridade, o cadastro deve conter: o nome da tarefa, a data limite de execução (se houver), o percentual já concluído e o detalhamento da tarefa.

Para cada tarefa há uma lista de itens que descrevem sua execução. Para cada item de execução, cadastram-se: o percentual correspondente, a descrição da execução e a data da execução (qdo for concluída)

Quando uma tarefa receber 100% de execução, esta deverá ser movida automaticamente para a lista de tarefas concluídas, podendo ser apagada, se for o caso.

34

Page 35: Curso de UML Aula 04

Exercícios de Fixação

TAREFA 1.1 – Aniversário do Zé

Data Limite = 06/08/2005

Percentual já concluído = 65%

Detalhamento = planejamento da festa de aniversário do Zé no dia 06 de agosto

Lista de Itens para serem executados:

[20%] Aluguel do salão e da animação – 01/03/2005

[20%] Encomenda do bolo e salgados – 15/07/2005

[05%] Compra de bebidas -

[25%] Compra dos itens de decoração – 01/07/2005

[30%] Arrumação do salão -

35

Desenhe o diagrama de casos de usoDesenhe o diagrama de classes com atributos e multiplicidades

Page 36: Curso de UML Aula 04

Resolução do exercício

36

Page 37: Curso de UML Aula 04

Resolução do exercício

37

Page 38: Curso de UML Aula 04

Resolução – comentários

A lista de itens de execução faz parte da tarefa que representa o todo. Desta forma, o relacionamento foi representado como uma agregação.

O atributo percentualConclusao não é um atributo que será cadastrado. Ele será calculado a partir do somatório dos percentuais dos itens concluídos. A regra de formação está na Nota.

O atributo status poderia ser um booleano, porém ficaria restrito a dois valores. Incluindo uma enumeração já prevemos uma evolução futura onde poderão ser incluídos mais status.

O caso de uso Verificar Conclusão da Tarefa tem por objetivo verificar se todos os itens associados a uma tarefa já foram concluídos, alterando automaticamente o status da tarefa para concluída.

No caso de uso Manter Itens da Tarefa, o ator cadastra, inicialmente somente o percentual da tarefa e sua descrição. Depois, retorna a essa tarefa para lanças a data de execução. O item de tarefa é considerado como concluído se tiver essa data cadastrada.

38

Page 39: Curso de UML Aula 04

Exercício de Fixação

A empresa Aprof oferece cursos diversos de aperfeiçoamento profissional. O dono da empresa precisa controlar, inicialmente: os cursos oferecidos, a data de início e término, o horário de início e término, o nome e o telefone celular do professor e o valor da sua hora/aula.

Para cada curso, deve-se controlar: a carga horária, o conteúdo programático e o valor do curso.

Desenhe o diagrama de casos de usoDesenhe o diagrama de classes com atributos e multiplicidades.

39

Page 40: Curso de UML Aula 04

Resolução do exercício

40

Page 41: Curso de UML Aula 04

Resolução de exercício

41

Page 42: Curso de UML Aula 04

Exercício de Fixação

Considere o cenário anterior, da empresa de cursos. Numa segunda versão da aplicação, passa-se a ter o controle da matrícula e do cadastro de alunos. Para a matrícula cadastram-se: data da matrícula, valor pago, aluno e a turma.

O cadastro do aluno compreende: nome, número da carteira de identidade, CPF, data de nascimento, endereço completo e telefones de contato.

Atualize o diagrama de casos de uso e o modelo de classes no que for necessário.

42

Page 43: Curso de UML Aula 04

Resolução do exercício

43

Page 44: Curso de UML Aula 04

Resolução de exercício

44