1 Curso de UML Actividad 1 Introducción a UML Dra. Anaisa Hernández González.
Curso de UML Aula 04
-
Upload
weliton-junior -
Category
Documents
-
view
1.288 -
download
29
Transcript of 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
Exercício
2
Resolução do exercício
3
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
Exemplo
5
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
Resolução do exercício
7
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
Resolução do exercício
9
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
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.
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.
13
Diagrama de Implantação
Diagrama de Implantação
14
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
UML 2.0
ObjetivosReestruturaçãoAplicaçãoImplementaçãoAdaptaçãoPrecisãoRe-utilização
16
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
UML 2.0
Abordadegem de MetamodelagemMais intuitivaMais pragmática
Técnicas de especificação formalModularidadeDivisão por camadas (Layering)ParticionamentoExtensibilidadeReuso
18
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
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
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
UML 2.0
22
UML 2.0
NúcleoMetamodelo completoMDA – Model Driven Architecture
23
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
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
UML 2.0
DiagramasDiagrama de Máquina de EstadosDiagrama de ComunicaçãoDiagrama de Estrutura CompostaDiagrama de Interação GeralDiagrama de Tempo
26
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
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
Diagrama de Estrutura Composta
29
Diagrama de Estrutura Composta
30
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
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
Curso de UML
REVISÃO
33
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
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
Resolução do exercício
36
Resolução do exercício
37
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
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
Resolução do exercício
40
Resolução de exercício
41
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
Resolução do exercício
43
Resolução de exercício
44