Modelagem de Sistemas de
Informação
Aula 08 – Diagrama de Classes
Diagrama de Caso de Uso - Locadora
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
Diagrama de Classes
• Permite a visualização das classes que irão compor o sistema com
seus respectivos atributos e métodos, mostram como as classes se
relacionam, 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
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á.
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.
Diagrama de Classes - Objetivo
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.
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.
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.
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)
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).
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.
Diagrama de Classes
Tipos de Relacionamentos
• Associação
• Agregação
• Composição
• Generalização/Especialização
Diagrama de Classes
Associação Unária (Reflexiva)
• Relacionamento de um objeto da classe com objetos da mesma
classe.
Diagrama de Classes
Associação Binária
• É a relação mais comum, quando é identificado um
relacionamento entre objetos de duas classes distintas.
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.
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.
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.
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.
Modelagem de Sistemas de Informação 08 - Diagrama de Classes

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

  • 1.
    Modelagem de Sistemasde Informação Aula 08 – Diagrama de Classes
  • 2.
    Diagrama de Casode Uso - Locadora
  • 3.
    Diagrama de Classes “Seo 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
  • 4.
    Diagrama de Classes •Permite a visualização das classes que irão compor o sistema com seus respectivos atributos e métodos, mostram como as classes se relacionam, 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
  • 5.
    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á.
  • 6.
    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.
  • 7.
  • 8.
    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.
  • 9.
    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.
  • 11.
    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.
  • 12.
    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)
  • 13.
    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).
  • 14.
    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.
  • 15.
    Diagrama de Classes Tiposde Relacionamentos • Associação • Agregação • Composição • Generalização/Especialização
  • 16.
    Diagrama de Classes AssociaçãoUnária (Reflexiva) • Relacionamento de um objeto da classe com objetos da mesma classe.
  • 17.
    Diagrama de Classes AssociaçãoBinária • É a relação mais comum, quando é identificado um relacionamento entre objetos de duas classes distintas.
  • 18.
    Diagrama de Classes AssociaçãoTerná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.
  • 19.
    Diagrama de Classes Associaçãode 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.
  • 20.
    Diagrama de Classes Associaçãode 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.
  • 21.
    Diagrama de Classes Associaçãode 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.