Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML...

Post on 17-Apr-2015

114 views 0 download

Transcript of Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML...

Análise e Projetos de Sistemas

UML-Linguagem de Modelagem UnificadaModelo de Dados com UML

Diagrama de ClassesProfessor: Armando Hage

Diagramas de Classe

Representação dos dados manipulados e armazenados pelos programas de acordo com os conceitos de Orientação a Objetos.

Ilustram as classes, interfaces e seus relacionamentos.

Notação fortemente baseada no Diagrama Entidade-Relacionamento.

Descrevem os tipos de objetos no sistema e os vários relacionamentos estáticos entre eles, que são de 2 tipos associações subtipos (abstração)

Ilustram atributos e operações de uma classe e as restrições à maneira com que os objetos são conectados

Diagramas de Classe

DIAGRAMA DE CLASSES

Classes Atributos Relacionamentos Operaçõe/Métodos Pacotes BD relacionais

DIAGRAMA DE CLASSES

Atributos

Representa alguma propriedade do que está sendo modelado - identifica as características próprias da classe

Descrevem os dados contidos nas instâncias de uma classe

Podem ser identificados apenas com nomes Podem ter seus tipos (Classes) especificados e

terem valores padrão definidos

Atributos

Parede

altura : reallargura : realespessura : realviga : boolean = false

Visibilidade

Usar marcações de acesso para especificar o tipo de acesso permitido aos atributos e operações

Visibilidade: + público : visível em qualquer classe # protegido : qualquer descendente poderá usar - privado : visível somente dentro da classe

Exemplo:

+ saldoEM (date: Date): double

Operações/Métodos

Operação é algo que é executado em um objeto (procedimento de chamada)

Método é o corpo do procedimento Descreve o comportamento da classe Visibilidade

público protegido privado

Relacionamentos

Comunicação entre classes Definem responsabilidades

3 Tipos AOO: Associações

Agregação Composição

Generalização (herança) Dependências

Agregação

Herança

Composição

Dependência

Associação

Associação

Associação - Relacionamentos estruturais entre instâncias. Especifica que objetos de uma classe estão conectados a objetos de outras Ex: Em um sistema de engenharia civil, as salas são

formadas por paredes Associação unária, binária, n-ária

ternárias e superiores são mostradas com diamantes

Associação

Associação

Associação - Papel

Associação – Entre Objetos

Associação – Cardinalidade

Dependência

Dependência - Relacionamentos de utilização, no qual uma mudança na especificação de um elemento pode alterar a especificação do elemento dependente Ex: Em um sistema de engenharia civil, os canos

dependem do aquecedor para fornecerem água quente

Dependência Indica que mudanças em um elemento (o servidor)

podem afetar outro elemento (o cliente) Mostrar que uma classe usa outra como argumento na

assinatura de uma operação Dependência entre classes indica que os objetos de

uma classe usam serviços dos objetos de outra classe

Cliente Servidor

Import java.awt.Graphics;

class HelloWorld extends java.applet.Applet {

public void paint (Graphics g)

g.drawString(“Hello, world!”, 10, 10);

}

HelloWorld

paint()

Graphics

Applet

Dependência

Generalização Generalização (herança simples e múltipla) -

Relacionamento entre um elemento mais geral e um mais específico É um relacionamento de taxonomia entre um elemento

mais geral e um mais específico, que é totalmente consistente com o primeiro, somando-o informação especializada

Superclasse, subclasses Ex: Veículo terrestre pode ser do tipo automóvel ou

caminhão (TIPO DE), Tipos de Animal (mamífero, ave, peixe)

Generalização

Agregação (regular e de composição) Agregação Regular - tipo especial de associação -

relacionamento “é parte de, todo/parte” (diamante aberto) Forma especial de associação para mostrar que um

objeto é COMPOSTO - RELACIONAMENTO POR REFERÊNCIA

Semanticamente: objeto parte é um atributo do todo, e que a vida daquele é dependente da vida deste. Objetos parte não são criados a menos que o todo ao qual estão agregados seja criado. Destruído somente porquem o criou em primeiro lugar

Ex: pedido é composto por itens de pedido

Agregação

Objeto TODO mantém um ponteiro ou uma referência parasuas partes

Composição Composição - relacionamento entre um elemento

(o todo) e outros elementos (as partes) indica que as partes só podem pertencer ao “todo” e são criadas e destruídas com ele

É semanticamente esquivalente a um ATRIBUTO, mas pode ser mais atraente quando a parte tem uma estrutura interna

Objeto contido tem estrutura complexa e não pode ser compartilhado

Composição

Relacionamentos Nome

descrever a natureza do relacionamento Papel

função específica a executar nesse relacionamento Multiplicidade

quantidade de objetos que podem ser conectados no relacionamento

1, zero ou um (0..1), muitos (0..*), um ou mais (1..*) 0..1, 3..4, 6..* = o que significa?

Relacionamentos