Aula 5 uml1 (1)

50
Introdução a UML

Transcript of Aula 5 uml1 (1)

Page 1: Aula 5   uml1 (1)

Introdução a UML

Page 2: Aula 5   uml1 (1)

Unified Modeling Language (UML)

Linguagem de modelagem que auxilia a visualizar seu desenho e a comunicação entre objetos.

Page 3: Aula 5   uml1 (1)

Diferença entre um modelo UML e um diagrama

Os elementos UML são usados para criar diagramas, que representam uma determinada parte, ou um ponto de vista do sistema.

Page 4: Aula 5   uml1 (1)

Objetivos

Especificação, documentação, estruturação para sub-visualização e maior visualização lógica do desenvolvimento completo de um sistema de informação.

Page 5: Aula 5   uml1 (1)

Vantagens

• Define um mapeamento, da análise à implementação.• Define uma notação expressiva e consistente

Facilita a comunicação entre as pessoas; Ajuda a apontar inconsistências e omissões; Suporta a análise e projeto de sistemas de pequeno

e grande porte.

Page 6: Aula 5   uml1 (1)

Divisão da UML

Estruturais

•Diagrama de classes•Diagrama de objetos•Diagrama de componentes•Diagrama de instalação ou de implantação•Diagrama de pacotes•Diagrama de estrutura composta•Diagrama de Perfil

Comportamentais

•Diagrama de Caso de Uso•Diagrama de transição de Estados•Diagrama de Atividade•Diagramas de Interação Diagrama de sequência

Diagrama de Interatividade ou de Interação

Diagrama de Colaboração ou Comunicação

Diagrama de tempo ou Temporal

Page 7: Aula 5   uml1 (1)

Por que tantos diagramas?

Fornecer múltiplas visões do sistema, analisando e modelando sob diversos aspectos, procurando atingir a completitude da modelagem, permitindo que cada diagrama seja complementar ao outro.

Page 8: Aula 5   uml1 (1)

Diagrama de Caso de Uso

Page 9: Aula 5   uml1 (1)

Diagrama de Caso de Uso

• São descrições de interações típicas entre os usuários de um sistema e o sistema propriamente dito.

•Representam a interface externa do sistema e especificam um conjunto de exigências do que o sistema deve fazer.

Page 10: Aula 5   uml1 (1)

Diagrama de Caso de Uso

Facilitar a comunicação com os futuros usuários do sistema, com o cliente, e são especialmente úteis para determinar os recursos necessários que o sistema deve ter.

Page 11: Aula 5   uml1 (1)
Page 12: Aula 5   uml1 (1)
Page 13: Aula 5   uml1 (1)
Page 14: Aula 5   uml1 (1)

Regras - Caso de Uso

•Cada Caso de Uso está relacionado com no mínimo um ator (ou caso de uso);•Cada Caso de Uso possui um iniciador (isto é, um ator).•Cada Caso de Uso liga-se a um resultado relevante (um resultado com “valor de negócio”).

Page 15: Aula 5   uml1 (1)

Exemplo

Page 16: Aula 5   uml1 (1)
Page 17: Aula 5   uml1 (1)

Diagrama de Classes

Page 18: Aula 5   uml1 (1)

Diagrama de Classes

É uma representação da estrutura e relações das classes que servem de modelo para objetos.

Page 19: Aula 5   uml1 (1)

Diagrama de Classes

Define todas as classes que o sistema necessita possuir e é a base para a construção dos diagramas de comunicação, sequência e estados.

Page 20: Aula 5   uml1 (1)

Classes

Define os atributos e os métodos de um conjunto de objetos.

Page 21: Aula 5   uml1 (1)

Classes

São representadas por retângulos, com o nome da classe, e podem também mostrar os atributos e operações da classe em dois outros “compartimentos” dentro do retângulo.

Page 22: Aula 5   uml1 (1)

Atributos

Define características da classe;São mostrados com pelo menos seu nome, e podem também mostrar seu tipo, valor inicial e outras propriedades.

Atributos podem também ser exibidos com sua visibilidade:

• + atributos públicos;• # atributos protegidos;• - atributos privados.

Page 23: Aula 5   uml1 (1)
Page 24: Aula 5   uml1 (1)

Operações

Operações (métodos) também são exibidos com pelo menos seu nome, e podem também mostrar seus parâmetros e valores de retorno.

Também mostra visibilidade: + operações públicas # operações protegidas - operações privadas

Page 25: Aula 5   uml1 (1)
Page 26: Aula 5   uml1 (1)

AssociaçãoRelacionamentos entre classes.

Page 27: Aula 5   uml1 (1)

Relacionamento entre classes

• Associações;• Agregação;• Composição Generalização.

Page 28: Aula 5   uml1 (1)

Associações

Relacionamento entre classes, e fornece a semântica comum e a estrutura para muitos tipos de “conexões” entre objetos.

Page 29: Aula 5   uml1 (1)

Associações

Representadas como linhas conectando as classes participantes do relacionamento, e podem também mostrar a regra e a multiplicidade de cada um dos participantes. A multiplicidade é exibida como um intervalo [min...máx] de valores não negativos, com uma estrela (*) no lado máximo representando infinito.

Page 30: Aula 5   uml1 (1)

Associações

Page 31: Aula 5   uml1 (1)
Page 32: Aula 5   uml1 (1)

Associações de Classe

Generalização:A herança é um dos conceitos fundamentais da programação orientada por objetos, nos quais uma classe “ganha” todos os atributos e operações da classe que herda, podendo sobrepor ou modificar algumas delas, assim como adicionar mais atributos ou operações próprias.

Page 33: Aula 5   uml1 (1)

Associações de Classe

Uma associação Generalização entre duas classes coloca-as numa hierarquia representando o conceito de herança de uma classe derivada de uma classe base.

Page 34: Aula 5   uml1 (1)

Representação de Generalização

São representadas por uma linha conectando duas classes, com uma seta no lado da classe base.

Page 35: Aula 5   uml1 (1)

Representação

Representadas por uma associação que mostra um romboide no lado do todo.

Romboide: Que tem forma de losango.

Page 36: Aula 5   uml1 (1)

Composição

São associações que representam agregações muito fortes. •Representadas por um romboide sólido no lado do todo.

Page 37: Aula 5   uml1 (1)
Page 38: Aula 5   uml1 (1)
Page 39: Aula 5   uml1 (1)

Diagrama de Sequência

Page 40: Aula 5   uml1 (1)

Diagrama de Sequência

É um diagrama usado em UML, representando a sequência de processos(mensagens passadas entre objetos) num programa de computador.

Page 41: Aula 5   uml1 (1)

Diagrama de Sequência

Procura determinar a sequência de eventos que ocorrem em um Caso de Uso.

Baseia-se nos Casos de Uso e Diagrama de Classe.

Page 42: Aula 5   uml1 (1)

Representação

Atores: São entidades externas que interagem com o sistema e que solicitam serviços.Objetos: Representam as instâncias das classes representadas no processo.

Page 43: Aula 5   uml1 (1)

Representação

Linha de vida: Representa o tempo em que um objeto existiu durante um processo.Representada por linhas fina verticais tracejadas partindo do retângulo que representa o objeto.

Page 44: Aula 5   uml1 (1)

Representação

Mensagens ou Estímulos: Demonstra a ocorrência de eventos, que normalmente forçam a chamada de um método em algum dos objetos envolvidos no processo.

Page 45: Aula 5   uml1 (1)

Representação

Mensagens de Retorno: Resposta da mensagem para o objeto ou ator que o chamou.

Page 46: Aula 5   uml1 (1)

Diagrama de Sequência

Page 47: Aula 5   uml1 (1)

Exemplo - Diagrama de Estados

Page 48: Aula 5   uml1 (1)

Diagrama de Estados

Mostram os diferentes estados de um Objeto durante sua vida, e o estímulo que faz com que o Objeto mude seu estado.

Page 49: Aula 5   uml1 (1)

Exemplo

Um tipo de Objeto ServidorRede pode estar em um dos seguintes estados durante sua vida:

•Pronto•Ouvindo•Trabalhando•Parado

Page 50: Aula 5   uml1 (1)

Eventos

Os eventos que podem fazer com que o Objeto mude de estado são:

Objeto é criado Objeto recebe mensagem ouvir Um cliente solicita uma conexão através da rede Um cliente termina um pedido O pedido é executado e terminado Objeto recebe mensagem parar e etc.