Modelagem de Sistemas de Informação 08 - Diagrama de Classes

22
Modelagem de Sistemas de Informação Aula 08 – Diagrama de Classes

description

Diagrama de Classes

Transcript of Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Page 1: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Modelagem de Sistemas de Informação

Aula 08 – Diagrama de Classes

Page 2: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Caso de Uso - Locadora

Page 3: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes

“Se o protagonista de um sistema desenvolvido sob a análise orientada a objetos é um objeto, nada mais justo do

que termos onde documentar os objetos encontrados nos requisitos do sistema.”

Ana Cristina Melo – Desenvolvendo aplicações com UML 2.0

Page 4: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes

• Permite a visualização das classes que irão compor o sistema comseus respectivos atributos e métodos, mostram como as classes serelacionam, complementam e transmitem informações entre si.

“Após extrairmos dos requisitos os objetos da aplicação, precisaremos separar e classificar suas características, modelando, por conseguinte,

as classes do sistema.

Entretanto, a essência de um sistema não está apenas em suas classes, mas principalmente nos seus relacionamentos.”

Ana Cristina Melo – Desenvolvendo aplicações com UML 2.0

Page 5: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes – Modelo Conceitual

• No Modelo Conceitual representamos as informações que o software necessitará em termos de classes e seus atributos, bem como suas associações, não modelando, nessa etapa, os métodos que esta classe terá.

Page 6: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes – Modelo do Domínio

• Toma-se o modelo conceitual e produz o modelo de domínio que enfoca a solução do problema.

• Os métodos necessários às classes são descobertos a partir da modelagem de diagramas de interação como o de sequência.

Page 7: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes - Objetivo

Page 8: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes - Visibilidade

Indica o nível de acessibilidade de um elemento, isto é, por quem uma propriedade (atributo ou método) pode ser utilizada.

+ Pública – O atributo ou método pode ser usado por qualquer

objeto.

# Protegida – O atributo ou método pode ser usado por qualquer

objeto da classe e também por suas subclasses.

~ Pacote – O atributo ou método é visível por qualquer objeto

dentro do pacote.

- Privada – O atributo ou método é visível somente pela classe que

o define.

Page 9: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes - Multiplicidade

Indica uma faixa de cardinalidade permitida a um elemento, isto é, a quantidade de instância possíveis em um relacionamento.

0..1 Zero ou um.

1..1 Um e somente um.

0..* Zero ou muitos.

* Muitos.

1..* No mínimo um ou muitos.

3..5 Mínimo de três e máximo de cinco.

Page 10: Modelagem de Sistemas de Informação 08 - Diagrama de Classes
Page 11: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes – Atributos e Métodos

• Atributos são os dados das classes. Os valores dos atributos variam de uma instância de classe para outra.

• Métodos são as funções que um objeto pode executar.

Page 12: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes – Exemplo de Atributos

#/ data_encerramento: Date[0..1]

• Atributo do tipo Date (classe), tendo nenhuma (0) ou uma (1) data.

• A barra significa que o atributo sofre algum tipo de cálculo.

#/ saldo: Double = 0

• Atributos com valor inicial de 0 (saldo)

Page 13: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes – Exemplo de Métodos

+ Extrato_conta (Date, Date): String

• O método é público (+), recebe duas datas como parâmetros (data inicial e data final do extrato) e retorna uma String.

- Calcular_Digito_Verificador (long) : int

• O método é privado (-), recebe um long como parâmetro (CPF ou CNPJ, por exemplo) e retorna o dígito verificador (int).

Page 14: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes – Relacionamentos

• Permitem que as classes compartilhem informações entre si e colaborem para a execução dos processos executados pelo sistema.

• Descreve um vínculo que ocorre normalmente entre os objetos de uma ou mais classes.

Page 15: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Tipos de Relacionamentos

• Associação• Agregação

• Composição

• Generalização/Especialização

Page 16: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Associação Unária (Reflexiva)

• Relacionamento de um objeto da classe com objetos da mesma classe.

Page 17: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Associação Binária

• É a relação mais comum, quando é identificado um relacionamento entre objetos de duas classes distintas.

Page 18: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Associação Ternária ou N-ária

• Associações que conectam objetos de mais de duas classes.

• São associações mais complexas e que demandam mais atenção para que seja criado um bom modelo.

Page 19: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Associação de Agregação

• É um tipo de associação onde se demonstra que as informações de um objeto precisam ser complementadas pelas informações contidas em um ou mais objetos de outra classe.

• A função principal da agregação é identificar a obrigatoriedade de uma complementação das informações de objeto-todo para seus objetos-parte.

Page 20: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Associação de Composição

• É uma variação da agregação onde é apresentado um vínculo mais forte entre os objetos.

• A classe parte pertence só e somente só à classe todo, num determinado momento.

• A classe composta é responsável pela criação e destruição de suas partes.

Page 21: Modelagem de Sistemas de Informação 08 - Diagrama de Classes

Diagrama de Classes Associação de Generalização/Especialização

• É uma variação da agregação onde é apresentado um vínculo mais forte entre os objetos.

• A classe parte pertence só e somente só à classe todo, num determinado momento.

• A classe composta é responsável pela criação e destruição de suas partes.

Page 22: Modelagem de Sistemas de Informação 08 - Diagrama de Classes