aula 5 uml1 (1)
TRANSCRIPT
Introdução a UML
Unified Modeling Language (UML)
Linguagem de modelagem que auxilia a visualizar seu desenho e a comunicação entre objetos.
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.
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.
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.
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
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.
Diagrama de Caso de Uso
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.
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.
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”).
Exemplo
Diagrama de Classes
Diagrama de Classes
É uma representação da estrutura e relações das classes que servem de modelo para objetos.
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.
Classes
Define os atributos e os métodos de um conjunto de objetos.
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.
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.
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
AssociaçãoRelacionamentos entre classes.
Relacionamento entre classes
• Associações;• Agregação;• Composição Generalização.
Associações
Relacionamento entre classes, e fornece a semântica comum e a estrutura para muitos tipos de “conexões” entre objetos.
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.
Associações
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.
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.
Representação de Generalização
São representadas por uma linha conectando duas classes, com uma seta no lado da classe base.
Representação
Representadas por uma associação que mostra um romboide no lado do todo.
Romboide: Que tem forma de losango.
Composição
São associações que representam agregações muito fortes. •Representadas por um romboide sólido no lado do todo.
Diagrama de Sequência
Diagrama de Sequência
É um diagrama usado em UML, representando a sequência de processos(mensagens passadas entre objetos) num programa de computador.
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.
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.
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.
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.
Representação
Mensagens de Retorno: Resposta da mensagem para o objeto ou ator que o chamou.
Diagrama de Sequência
Exemplo - Diagrama de Estados
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.
Exemplo
Um tipo de Objeto ServidorRede pode estar em um dos seguintes estados durante sua vida:
•Pronto•Ouvindo•Trabalhando•Parado
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.