SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
27-03-2012




            Bases de Dados

               Paulo Azevedo




Objectivos
• Modelar correctamente Diagramas de Classes;




                  Paulo Azevedo - Mar/2012   2




                                                         1
27-03-2012




Diagramas de Classes
•    Uma das técnicas mais utilizadas no
  desenvolvimento orientado aos objectos;
•    Descrição formal da estrutura de objectos
  de um sistema;
•    Para cada objecto, descreve a sua
  identidade, os seus relacionamentos com os
  outros objectos, os seus atributos e as suas
  operações.

                     Paulo Azevedo - Mar/2012    3




Diagramas de Classes
    Resultam de um processo de abstracção
    através do qual se identificam os objectos
    (entidades e conceitos) relevantes no contexto
    que se pretende modelar e se procuram
    descrever características comuns em termos
    de     propriedades     (atributos)    e    de
    comportamentos (operações).



                     Paulo Azevedo - Mar/2012    4




                                                             2
27-03-2012




Diagramas de Classes
  Diagramas de classes descrevem o modelo
  geral de informação de um sistema.
  Classes descrevem objectos com atributos e
  operações comuns. Servem dois propósitos:
1. Permitir compreender o mundo real, naquilo
   que é importante para o SI;
2. Fornecer     uma     base    prática  para
   implementação em computador.
   (Rumbagh et al, 1991)


                           Paulo Azevedo - Mar/2012   5




Diagramas de Classes
  Utilizam os seguintes elementos abstractos de
  modelação:
• Classes de objectos;
• Relações de Associação e Generalização;
• Multiplicidade.
  A perspectiva estática fornecida pelo diagrama
  de classes tem como objectivo suportar os
  requisitos funcionais do sistema.
                           Paulo Azevedo - Mar/2012   6




                                                                  3
27-03-2012




Diagramas de Classes
                                 Associação
               Classe




   Atributos




                        Multiplicidade



    “Um cliente pode efectuar muitas encomendas”
                          Paulo Azevedo - Mar/2012   7




Diagramas de Classes
  O diagrama de classes é utilizado no seguinte
  conjunto de formas:
• Modelar o vocabulário do sistema – Envolve o
  decidir sobre que abstracções estruturais fazem
  parte do sistema em estudo;
• Modelar colaboração simples – Visualizar o SI
  como um todo, constituído por classes e as suas
  relações;
• Modelar o esquema lógico de uma BD –
  Desenhar a estrutura de dados para uma BD
  relacional ou orientada aos objectos.
                          Paulo Azevedo - Mar/2012   8




                                                                 4
27-03-2012




Diagramas de Classes
 Objecto – Conceito existente em modelação
 (mundo real), relevantes para serem
 incorporados no modelo de informação.
 Caracterizados por um conjunto de
 Propriedades, um comportamento e uma
 identidade.




                Paulo Azevedo - Mar/2012   9




Diagramas de Classes
 Propriedades do objecto – São as
 características que definem o objecto,
 transpostas para um conjunto de atributos,
 cujos valores estabelecem o estado do
 objecto.
 Comportamento – É definido como as
 operações que o objecto pode efectuar.
 Identidade – Permite identificar um objecto
 em particular como único num conjunto de
 objectos semelhantes.
                Paulo Azevedo - Mar/2012   10




                                                        5
27-03-2012




Diagramas de Classes


        PC1               PC2               PC3


 O PC1 é diferente do PC2 e PC3, contudo,
 todos eles possuem um conjunto de atributos
 (S/N, data fabrico, cor, etc.) que os definem
 (estado) e realizam operações como iniciar SO
 ou executar SI (Comportamento). Para além
 de algumas semelhanças, possuem uma
 identidade própria que os torna únicos.
                 Paulo Azevedo - Mar/2012         11




Diagramas de Classes
 Classe - Representa uma abstracção sobre um
 conjunto de objectos que partilham a mesma
 estrutura e comportamento. Um objecto é um
 caso particular de uma classe, também
 referido como uma instância da classe.




                 Paulo Azevedo - Mar/2012         12




                                                               6
27-03-2012




Diagramas de Classes
 Atributo – Característica que os objectos
 possuem e que é representada por um valor
 de dados.


                                    Nome da classe

 Atributos
                                   Operações




                Paulo Azevedo - Mar/2012             13




Diagramas de Classes
 Os objectos apenas comunicam entre si por
 mensagens, o que na prática resulta na
 invocação de operações.
 As operações são a representação lógica do
 comportamento de um objecto, consistindo
 em acções efectuadas por um objecto ou
 sobre um objecto.


                Paulo Azevedo - Mar/2012             14




                                                                  7
27-03-2012




Diagramas de Classes
  Por exemplo, a classe encomenda pode definir
  a operação Ver(). O parêntesis é utilizado
  para simbolizar a existência ou não de
  parâmetros. Para a operação referida poderia
  ser necessário fornecer o ID da encomenda,
  Ver(ID).




                    Paulo Azevedo - Mar/2012      15




Diagramas de Classes
  Tanto os atributos como as operações podem ser
  visíveis ou não para outras classes, visibilidade:
• Público – Qualquer classe tem acesso ao
  elemento. Representado através do prefixo “+”;
• Protegido – Qualquer descendente da classe
  pode utilizar o elemento. É representado através
  do elemento “#”;
• Privado - Apenas a própria classe tem acesso ao
  elemento – É representado através do prefixo “-”.
                    Paulo Azevedo - Mar/2012      16




                                                               8
27-03-2012




Diagramas de Classes
    Para cada atributo pode ser identificado o seu
    tipo de dados, que classifica a informação que o
    atributo irá conter. De uma forma genérica:
•   Integer – Representa um número inteiro;
•   Long – Representa um número inteiro de maior
    dimensão;
•   Double – Para números reais;
•   String - Representa texto;
•   Date – Para datas;
•   Boolean – Valor lógico, Verdadeiro ou Falso.

                     Paulo Azevedo - Mar/2012      17




Diagramas de Classes
    No diagrama de classes as associações
    representam as relações entre os objectos. As
    associações são caracterizadas por possuir um
    nome.
    Uma classe pode possuir uma associação
    consigo própria, significando neste caso que
    um objecto da classe se relaciona com um ou
    mais objectos da mesma classe.

                     Paulo Azevedo - Mar/2012      18




                                                                9
27-03-2012




Diagramas de Classes
    As associações são também caracterizadas por
    possuir uma multiplicidade:
•   0..1 – Opcional;
•   1..1 – Obrigatório existir um objecto, também
    representado utilizando apenas o número 1;
•   1..10 – Um valor entre o intervalo estabelecido,
    neste caso de 1 a 10;
•   0..* - Zero ou infinitos objectos da classe,
    também pode ser representado por *;
•   1..* – Um ou infinitos objectos da classe.

                     Paulo Azevedo - Mar/2012      19




Diagramas de Classes
    É possível efectuar várias combinações de
    multiplicidade numa associação. A relação
    “um para muitos” entre a classe 1 e a classe 2
    significa que um objecto da classe 1 pode
    estar associado ou não (opcional) a muitos
    objectos da classe 2
                        “Um para Um”

                        “Um para Muitos”

                        “Muitos para Muitas”
                     Paulo Azevedo - Mar/2012      20




                                                               10
27-03-2012




Diagramas de Classes
 A identificação das classes não é um processo
 directo.
 São necessárias diversas iterações e
 refinamentos até identificar correctamente
 todas as classes. Uma regra simples é de
 iniciar    o   processo     de    identificação
 sublinhando, na descrição dos uses cases, os
 substantivos.

                  Paulo Azevedo - Mar/2012     21




Diagramas de Classes
 Substantivos. Dá-se o nome de substantivo a
 todas as palavras que nomeiam seres, lugares,
 objectos, (…).
 Toda a palavra que designa ser, coisa ou
 substância




                  Paulo Azevedo - Mar/2012     22




                                                           11
27-03-2012




Diagramas de Classes
  Exemplo:
Efectuar Inscrição
Pré condição         Aluno é utilizador válido.
                     1 – UC começa quando aluno selecciona a opção efectuar
                     inscrição;
                     2 – Sistema mostra lista de escolas;
                     3 – Aluno selecciona escola;
                     4 – Sistema mostra lista de cursos;
                     5 – Aluno selecciona curso;
                     6 – Aluno efectua inscrição.

Pós condição         Aluno recebe comprovativo da inscrição.



                                 Paulo Azevedo - Mar/2012                     23




Regra prática
• Normalmente, na descrição dos UC as classes
  e/ou objectos são identificados através de
  substantivos;
• Os nomes das classes são sempre no singular;
• As classes que estão fora de âmbito do
  sistema (domínio da aplicação, fronteira do
  sistema), não devem ser representadas.


                                 Paulo Azevedo - Mar/2012                     24




                                                                                          12
27-03-2012




Diagramas de Classes
• Representar o sistema – Não é necessário
  representar o próprio sistema;
• Classes semelhantes – Podem existir classes que
  são sinónimos. Se houver dúvidas, estas podem
  ser esclarecidas ao efectuar a descrição das
  classes;
• Nível de detalhe – Eliminar classes onde não é
  possível efectuar uma clara descrição ou que são
  muito especificas, quase como um objecto.
                   Paulo Azevedo - Mar/2012      25




Diagramas de Classes
• Identificação de atributos - Alguns atributos
  não são explicitamente referidos nas
  descrições, mas surgem do conhecimento do
  domínio do problema. Por exemplo, morada
  de um cliente. O levantamento destes
  atributos é muito importante.




                   Paulo Azevedo - Mar/2012      26




                                                             13
27-03-2012




Diagramas de Classes
• Identificação de associações e operações –
  Podem ser identificadas com base nas
  relações lógicas entre as classes. Também
  podem ser identificadas na descrição dos UC
  através dos verbos, como por exemplo, “o
  cliente efectua encomendas”. Só é possível
  compreender na totalidade as associações
  através de uma análise das interacções entre
  os objectos das classes.
                  Paulo Azevedo - Mar/2012    27




Diagramas de Classes
• Generalização – Caso especial do diagrama de
  classes. Demonstra a noção de “superclasse” e
  “subclasse” na perspectiva de uma relação
  “pai e filho”.




                  Paulo Azevedo - Mar/2012    28




                                                          14
27-03-2012




Diagramas de Classes
• Herança – O conceito de herança está
  presente, pois as subclasses, “filhos”, herdam,
  da superclasse “pai”, a estrutura em termos
  de atributos e operações.




                      Paulo Azevedo - Mar/2012        29




Diagramas de Classes
• Agregação - Demonstra o facto que um todo é
  composto por partes. Por exemplo, podemos
  mostrar que um restaurante possui um
  conjunto de mesas:

                 Restaurante
                                             Mesa
                 -Nome
                                          -Num Mesa
                 -Morada
                               1   1..*




                      Paulo Azevedo - Mar/2012        30




                                                                  15
27-03-2012




Diagramas de Classes
• Composição – É uma agregação com um
  significado mais forte, existindo uma
  dependência directa entre as duas classes. Se
  a parte deixar de existir o todo também deixa
  de existir.




                  Paulo Azevedo - Mar/2012    31




Revisão
Perguntas de revisão:
1. Qual o objectivo de um diagrama de classes?
2. O que significa uma classe?
3. Qual a notação para uma classe?
4. O que é um objecto?
5. Defina os conceitos de atributo e operações
   de uma classe.

                  Paulo Azevedo - Mar/2012    32




                                                          16
27-03-2012




Revisão
1. Qual o objectivo de um diagrama de classes?
   Descrever o modelo geral de informação de um
   sistema.
   Resultam de um processo de abstracção através
   do qual se identificam os objectos (entidades e
   conceitos) relevantes no contexto que se
   pretende modelar e se procuram descrever
   características comuns em termos de
   propriedades (atributos) e de comportamento
   (operações).
                   Paulo Azevedo - Mar/2012      33




Revisão
2. O que significa uma classe?
   Representa uma abstracção sobre um
   conjunto de objectos que partilham a mesma
   estrutura e comportamento. Um objecto é
   um caso particular de uma classe, também
   referido como uma instância da classe.



                   Paulo Azevedo - Mar/2012      34




                                                             17
27-03-2012




Revisão
3. Qual a notação para uma classe?
   Rectângulo dividido em três. Nome, atributo
   e operações.




                  Paulo Azevedo - Mar/2012       35




Revisão
4. O que é um objecto?
   Conceito existente em modelação (mundo
   real), relevantes para serem incorporados no
   modelo de informação. Caracterizados por
   um conjunto de Propriedades, um
   comportamento e uma identidade.



                  Paulo Azevedo - Mar/2012       36




                                                             18
27-03-2012




Revisão
5. Defina os conceitos de atributo e operações
   de uma classe.
   Atributo – Característica que os objectos
   possuem e que é representada por um valor
   de dados.
   Operações - São a representação lógica do
   comportamento de um objecto, consistindo
   em acções efectuadas por ou sobre um
   objecto.

                     Paulo Azevedo - Mar/2012          37




Exercícios
 Biblioteca:
 As publicações que se encontram disponíveis para os
 alunos são os livros e as revistas. Um aluno dirige-se
 com as publicações ao balcão de atendimento para
 preencher a ficha de empréstimo. Tem de preencher
 uma ficha para cada publicação, colocando a cota e o
 título. Caso seja um livro, tem de escrever os autores e
 o ISBN. Quando chega uma nova publicação esta é
 encaminhada para a responsável de catalogação que
 analisará e definirá a área de conhecimento. Existem
 várias áreas pré definidas, por exemplo, sociologia,
 psicologia, informática, etc. Podem ser definidas novas
 áreas de conhecimento.
                     Paulo Azevedo - Mar/2012          38




                                                                   19
27-03-2012




Resolução
Biblioteca
Objectos:
• Livro; Revista; Autor; Aluno; Ficha de
  Empréstimo; Área de Publicação; Publicação
Classes:
• Publicação; Autor; Empréstimo; Aluno; Área.



                  Paulo Azevedo - Mar/2012   39




Resolução
Diagrama de classes




                  Paulo Azevedo - Mar/2012   40




                                                         20
27-03-2012




Exercícios
  Parque de estacionamento:
• Interessa apenas guardar no sistema a matrícula de cada
  veículo;
• Um veículo pode efectuar vários estacionamentos no
  mesmo dia;
• Os veículos podem ser automóveis ou motas;
• De início, existe uma tarifa base que é aplicada a todos os
  veículos. Para veículos com elevado número de
  estacionamentos é possível criar tarifas específicas. Cada
  tarifa possui um custo por hora;
• O estacionamento (parque) possui um número de lugares
  limitado. Os lugares são caracterizados por um número,
  piso e um estado. Este estado pode assumir os valores livre
  ou ocupado.
                        Paulo Azevedo - Mar/2012           41




Resolução
Parque estacionamento
Objectos:
• Carro; Mota; Tarifa; Estacionamento; Lugar,
Classes:
• Tarifa; Veículo; Estacionamento; Lugar.




                        Paulo Azevedo - Mar/2012           42




                                                                       21
27-03-2012




Resolução
Diagrama de classes




                  Paulo Azevedo - Mar/2012   43




                                                         22

Mais conteúdo relacionado

Mais procurados

Introdução à análise orientada a objetos parte 1
Introdução à análise orientada a objetos parte 1Introdução à análise orientada a objetos parte 1
Introdução à análise orientada a objetos parte 1ariovaldodias
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E ClassesCursoSENAC
 
Exercitando modelagem em UML
Exercitando modelagem em UMLExercitando modelagem em UML
Exercitando modelagem em UMLinfo_cimol
 
Revisão 1º bimestre - Casos de Usos e Classes
Revisão 1º bimestre - Casos de Usos e ClassesRevisão 1º bimestre - Casos de Usos e Classes
Revisão 1º bimestre - Casos de Usos e ClassesMaria Alice Jovinski
 
Uml Diagramas estruturais - parte escrita
Uml   Diagramas estruturais - parte escritaUml   Diagramas estruturais - parte escrita
Uml Diagramas estruturais - parte escritathaisedd
 
Analise e projetos orientados a objetos
Analise e projetos orientados a objetosAnalise e projetos orientados a objetos
Analise e projetos orientados a objetosSliedesharessbarbosa
 
07 diagrama de classes de análise
07  diagrama de classes de análise07  diagrama de classes de análise
07 diagrama de classes de análiseFilipe Soares
 
Engenharia de Software II - Atividade: Diagramas da UML
Engenharia de Software II - Atividade: Diagramas da UMLEngenharia de Software II - Atividade: Diagramas da UML
Engenharia de Software II - Atividade: Diagramas da UMLAlessandro Almeida
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesRodrigo Cascarrolho
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosLeonardo Melo Santos
 
Metodologia orientado a objetos
Metodologia orientado a objetosMetodologia orientado a objetos
Metodologia orientado a objetosGabriel Faustino
 
Padrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAAPadrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAAAricelio Souza
 

Mais procurados (20)

Introdução à análise orientada a objetos parte 1
Introdução à análise orientada a objetos parte 1Introdução à análise orientada a objetos parte 1
Introdução à análise orientada a objetos parte 1
 
Si diagrama de classes
Si  diagrama de classesSi  diagrama de classes
Si diagrama de classes
 
Aula diagrama de classes
Aula diagrama de classesAula diagrama de classes
Aula diagrama de classes
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E Classes
 
Exercitando modelagem em UML
Exercitando modelagem em UMLExercitando modelagem em UML
Exercitando modelagem em UML
 
Revisão 1º bimestre - Casos de Usos e Classes
Revisão 1º bimestre - Casos de Usos e ClassesRevisão 1º bimestre - Casos de Usos e Classes
Revisão 1º bimestre - Casos de Usos e Classes
 
Uml Diagramas estruturais - parte escrita
Uml   Diagramas estruturais - parte escritaUml   Diagramas estruturais - parte escrita
Uml Diagramas estruturais - parte escrita
 
Analise e projetos orientados a objetos
Analise e projetos orientados a objetosAnalise e projetos orientados a objetos
Analise e projetos orientados a objetos
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a Objetos
 
Diagrama classes
Diagrama classesDiagrama classes
Diagrama classes
 
07 diagrama de classes de análise
07  diagrama de classes de análise07  diagrama de classes de análise
07 diagrama de classes de análise
 
Engenharia de Software II - Atividade: Diagramas da UML
Engenharia de Software II - Atividade: Diagramas da UMLEngenharia de Software II - Atividade: Diagramas da UML
Engenharia de Software II - Atividade: Diagramas da UML
 
Diagrama de Classes
Diagrama de ClassesDiagrama de Classes
Diagrama de Classes
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
Metodologia orientado a objetos
Metodologia orientado a objetosMetodologia orientado a objetos
Metodologia orientado a objetos
 
UML
UMLUML
UML
 
Curso Básico de UML
Curso Básico de UMLCurso Básico de UML
Curso Básico de UML
 
Uml
UmlUml
Uml
 
Padrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAAPadrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAA
 

Semelhante a Classes

Introdução à programação por objectos final
Introdução à programação por objectos finalIntrodução à programação por objectos final
Introdução à programação por objectos finalemcp11
 
Curso : Introdução Orientação a Objetos
Curso : Introdução Orientação a ObjetosCurso : Introdução Orientação a Objetos
Curso : Introdução Orientação a Objetosdanielrpgj30
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Vitor Hugo Melo Araújo
 
1 - Introduação - Classes - Objetos.pdf
1 - Introduação - Classes - Objetos.pdf1 - Introduação - Classes - Objetos.pdf
1 - Introduação - Classes - Objetos.pdfJoberthSilva
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosRamon Mayor Martins
 
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfAPOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfpedrina4
 
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfAula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfCelestino24
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de DadosFabio Abel
 
Matrizes de referencia para a avaliação
Matrizes de referencia para a avaliaçãoMatrizes de referencia para a avaliação
Matrizes de referencia para a avaliaçãoprisciladamico
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming Alexandre Schmidt
 

Semelhante a Classes (20)

Introdução à programação por objectos final
Introdução à programação por objectos finalIntrodução à programação por objectos final
Introdução à programação por objectos final
 
Curso : Introdução Orientação a Objetos
Curso : Introdução Orientação a ObjetosCurso : Introdução Orientação a Objetos
Curso : Introdução Orientação a Objetos
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
 
1 - Introduação - Classes - Objetos.pdf
1 - Introduação - Classes - Objetos.pdf1 - Introduação - Classes - Objetos.pdf
1 - Introduação - Classes - Objetos.pdf
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfAPOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
 
A Linguagem UML
A Linguagem UMLA Linguagem UML
A Linguagem UML
 
Análise de Sistemas Orientado a Objetos - 06 - Diagrama de Classes
Análise de Sistemas Orientado a Objetos - 06 - Diagrama de ClassesAnálise de Sistemas Orientado a Objetos - 06 - Diagrama de Classes
Análise de Sistemas Orientado a Objetos - 06 - Diagrama de Classes
 
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdfAula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdf
 
Modelagem de Sistemas de Informação 08 - Diagrama de Classes
Modelagem de Sistemas de Informação 08 - Diagrama de ClassesModelagem de Sistemas de Informação 08 - Diagrama de Classes
Modelagem de Sistemas de Informação 08 - Diagrama de Classes
 
Trabalho de análise e projeto 2
Trabalho de análise e projeto 2Trabalho de análise e projeto 2
Trabalho de análise e projeto 2
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
Aula 01 introdução aoo
Aula 01   introdução aooAula 01   introdução aoo
Aula 01 introdução aoo
 
Aula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aooAula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aoo
 
Matrizes de referencia para a avaliação
Matrizes de referencia para a avaliaçãoMatrizes de referencia para a avaliação
Matrizes de referencia para a avaliação
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Introdução à linguagem UML
Introdução à linguagem UMLIntrodução à linguagem UML
Introdução à linguagem UML
 
Sld 4
Sld 4Sld 4
Sld 4
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming
 

Mais de Marco Coelho (20)

Comportamento humano nas organizações
Comportamento humano nas organizaçõesComportamento humano nas organizações
Comportamento humano nas organizações
 
Ismai testes 2º semestre
Ismai testes 2º semestreIsmai testes 2º semestre
Ismai testes 2º semestre
 
Comportamento humano nas organizações2
Comportamento humano nas organizações2Comportamento humano nas organizações2
Comportamento humano nas organizações2
 
Sisdata
SisdataSisdata
Sisdata
 
Parque de estacionamento
Parque de estacionamentoParque de estacionamento
Parque de estacionamento
 
Leilão
LeilãoLeilão
Leilão
 
Lampada
LampadaLampada
Lampada
 
Clube xpto
Clube xptoClube xpto
Clube xpto
 
Cinéfilo
CinéfiloCinéfilo
Cinéfilo
 
Biblioteca
BibliotecaBiblioteca
Biblioteca
 
Telemóvel
TelemóvelTelemóvel
Telemóvel
 
Ex9
Ex9Ex9
Ex9
 
Ex7
Ex7Ex7
Ex7
 
Diagrama de classes
Diagrama de classesDiagrama de classes
Diagrama de classes
 
Ex5
Ex5Ex5
Ex5
 
Parque estacionamento
Parque estacionamentoParque estacionamento
Parque estacionamento
 
Desenho2
Desenho2Desenho2
Desenho2
 
Ex8
Ex8Ex8
Ex8
 
Sugestão para biblioteca
Sugestão para bibliotecaSugestão para biblioteca
Sugestão para biblioteca
 
Reunião
ReuniãoReunião
Reunião
 

Último

Dengue - Atividades números naturais.docx
Dengue - Atividades números naturais.docxDengue - Atividades números naturais.docx
Dengue - Atividades números naturais.docxAndré Morária
 
Exercícios_Figuras_de_Linguagem para fundamental e medio
Exercícios_Figuras_de_Linguagem  para fundamental e medioExercícios_Figuras_de_Linguagem  para fundamental e medio
Exercícios_Figuras_de_Linguagem para fundamental e medioFernanda Mota
 
MAPA - ADM - CIÊNCIAS SOCIAIS - 51/2024
MAPA - ADM - CIÊNCIAS SOCIAIS -  51/2024MAPA - ADM - CIÊNCIAS SOCIAIS -  51/2024
MAPA - ADM - CIÊNCIAS SOCIAIS - 51/2024excellenceeducaciona
 
5. Em caso de sentença condenatória do Estado agressor, quais as penas?
5. Em caso de sentença condenatória do Estado agressor, quais as penas?5. Em caso de sentença condenatória do Estado agressor, quais as penas?
5. Em caso de sentença condenatória do Estado agressor, quais as penas?excellenceeducaciona
 
trabalho de didatica 09/03/2024 pedagogia
trabalho de didatica 09/03/2024 pedagogiatrabalho de didatica 09/03/2024 pedagogia
trabalho de didatica 09/03/2024 pedagogiakarinareserva924
 
Densidade e solubilidade 5 ano, aula 1 - 1° bimestre
Densidade e solubilidade 5 ano, aula 1 - 1° bimestreDensidade e solubilidade 5 ano, aula 1 - 1° bimestre
Densidade e solubilidade 5 ano, aula 1 - 1° bimestreAnaPaulaAmaral44
 
Regimento da ADUFC-Seção Sindical do ANDES-SN
Regimento da ADUFC-Seção Sindical do ANDES-SNRegimento da ADUFC-Seção Sindical do ANDES-SN
Regimento da ADUFC-Seção Sindical do ANDES-SNADUFC S.Sind
 
Projeto escolar dia da água educação infantil e fundamental
Projeto escolar dia da água educação infantil e fundamentalProjeto escolar dia da água educação infantil e fundamental
Projeto escolar dia da água educação infantil e fundamentalDiana328805
 
Lição 10 - A Ceia do Senhor - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptx
Lição 10 - A Ceia do Senhor  - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptxLição 10 - A Ceia do Senhor  - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptx
Lição 10 - A Ceia do Senhor - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptxTiagoCarpesDoNascime
 
Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...
Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...
Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...excellenceeducaciona
 
Slides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptx
Slides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptxSlides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptx
Slides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Jean Piaget - Trajetória, teoria e contribuições para educação.
Jean Piaget - Trajetória, teoria e contribuições para educação.Jean Piaget - Trajetória, teoria e contribuições para educação.
Jean Piaget - Trajetória, teoria e contribuições para educação.marianedesouzapadua
 
01. Considerando as informações da imagem acima, explique de formas simples e...
01. Considerando as informações da imagem acima, explique de formas simples e...01. Considerando as informações da imagem acima, explique de formas simples e...
01. Considerando as informações da imagem acima, explique de formas simples e...atividademapa3
 
CADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdf
CADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdfCADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdf
CADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdfPaulissandraCoelho1
 
AULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptx
AULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptxAULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptx
AULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptxJosé Roberto Pinto
 
1. A atividade toda jurídica ocorre no plano do direito interno ou externo?
1. A atividade toda jurídica ocorre no plano do direito interno ou externo?1. A atividade toda jurídica ocorre no plano do direito interno ou externo?
1. A atividade toda jurídica ocorre no plano do direito interno ou externo?excellenceeducaciona
 
Introdução à Cartografia e Geoprocessamento - Conceitos Básicos
Introdução à Cartografia e Geoprocessamento - Conceitos  BásicosIntrodução à Cartografia e Geoprocessamento - Conceitos  Básicos
Introdução à Cartografia e Geoprocessamento - Conceitos BásicosVitor Vieira Vasconcelos
 

Último (20)

Dengue - Atividades números naturais.docx
Dengue - Atividades números naturais.docxDengue - Atividades números naturais.docx
Dengue - Atividades números naturais.docx
 
Exercícios_Figuras_de_Linguagem para fundamental e medio
Exercícios_Figuras_de_Linguagem  para fundamental e medioExercícios_Figuras_de_Linguagem  para fundamental e medio
Exercícios_Figuras_de_Linguagem para fundamental e medio
 
MAPA - ADM - CIÊNCIAS SOCIAIS - 51/2024
MAPA - ADM - CIÊNCIAS SOCIAIS -  51/2024MAPA - ADM - CIÊNCIAS SOCIAIS -  51/2024
MAPA - ADM - CIÊNCIAS SOCIAIS - 51/2024
 
5. Em caso de sentença condenatória do Estado agressor, quais as penas?
5. Em caso de sentença condenatória do Estado agressor, quais as penas?5. Em caso de sentença condenatória do Estado agressor, quais as penas?
5. Em caso de sentença condenatória do Estado agressor, quais as penas?
 
trabalho de didatica 09/03/2024 pedagogia
trabalho de didatica 09/03/2024 pedagogiatrabalho de didatica 09/03/2024 pedagogia
trabalho de didatica 09/03/2024 pedagogia
 
NBR 10520.2023. Citações. 1s24 (revisão em 09mar24).pdf
NBR 10520.2023. Citações. 1s24 (revisão em 09mar24).pdfNBR 10520.2023. Citações. 1s24 (revisão em 09mar24).pdf
NBR 10520.2023. Citações. 1s24 (revisão em 09mar24).pdf
 
NBR 14724.2011. Trabalhos acadêmicos. 1s24.pdf
NBR 14724.2011. Trabalhos acadêmicos. 1s24.pdfNBR 14724.2011. Trabalhos acadêmicos. 1s24.pdf
NBR 14724.2011. Trabalhos acadêmicos. 1s24.pdf
 
Densidade e solubilidade 5 ano, aula 1 - 1° bimestre
Densidade e solubilidade 5 ano, aula 1 - 1° bimestreDensidade e solubilidade 5 ano, aula 1 - 1° bimestre
Densidade e solubilidade 5 ano, aula 1 - 1° bimestre
 
Regimento da ADUFC-Seção Sindical do ANDES-SN
Regimento da ADUFC-Seção Sindical do ANDES-SNRegimento da ADUFC-Seção Sindical do ANDES-SN
Regimento da ADUFC-Seção Sindical do ANDES-SN
 
Projeto escolar dia da água educação infantil e fundamental
Projeto escolar dia da água educação infantil e fundamentalProjeto escolar dia da água educação infantil e fundamental
Projeto escolar dia da água educação infantil e fundamental
 
Lição 10 - A Ceia do Senhor - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptx
Lição 10 - A Ceia do Senhor  - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptxLição 10 - A Ceia do Senhor  - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptx
Lição 10 - A Ceia do Senhor - A Segunda Ordenança da Igreja(COM ANIMAÇÃO).pptx
 
Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...
Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...
Explique o modelo de determinação social da saúde proposto por Dahlgren e Whi...
 
Slides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptx
Slides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptxSlides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptx
Slides Lição 12, BETEL, O verdadeiro sentido de serem dois em um, 1Tr24.pptx
 
Jean Piaget - Trajetória, teoria e contribuições para educação.
Jean Piaget - Trajetória, teoria e contribuições para educação.Jean Piaget - Trajetória, teoria e contribuições para educação.
Jean Piaget - Trajetória, teoria e contribuições para educação.
 
01. Considerando as informações da imagem acima, explique de formas simples e...
01. Considerando as informações da imagem acima, explique de formas simples e...01. Considerando as informações da imagem acima, explique de formas simples e...
01. Considerando as informações da imagem acima, explique de formas simples e...
 
CADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdf
CADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdfCADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdf
CADERNO_DE_CULTURA_ESPANHOLA_E_HISPANO-AMERICANA.pdf
 
Complementação: Aplicando as Normas da ABNT. 1s24.pdf
Complementação: Aplicando as Normas da ABNT. 1s24.pdfComplementação: Aplicando as Normas da ABNT. 1s24.pdf
Complementação: Aplicando as Normas da ABNT. 1s24.pdf
 
AULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptx
AULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptxAULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptx
AULA-05---TRANSITIVIDADE-VERBAL-I_bc6ac78f0ec049a9bf66e829ce05ac19.pptx
 
1. A atividade toda jurídica ocorre no plano do direito interno ou externo?
1. A atividade toda jurídica ocorre no plano do direito interno ou externo?1. A atividade toda jurídica ocorre no plano do direito interno ou externo?
1. A atividade toda jurídica ocorre no plano do direito interno ou externo?
 
Introdução à Cartografia e Geoprocessamento - Conceitos Básicos
Introdução à Cartografia e Geoprocessamento - Conceitos  BásicosIntrodução à Cartografia e Geoprocessamento - Conceitos  Básicos
Introdução à Cartografia e Geoprocessamento - Conceitos Básicos
 

Classes

  • 1. 27-03-2012 Bases de Dados Paulo Azevedo Objectivos • Modelar correctamente Diagramas de Classes; Paulo Azevedo - Mar/2012 2 1
  • 2. 27-03-2012 Diagramas de Classes • Uma das técnicas mais utilizadas no desenvolvimento orientado aos objectos; • Descrição formal da estrutura de objectos de um sistema; • Para cada objecto, descreve a sua identidade, os seus relacionamentos com os outros objectos, os seus atributos e as suas operações. Paulo Azevedo - Mar/2012 3 Diagramas de Classes Resultam de um processo de abstracção através do qual se identificam os objectos (entidades e conceitos) relevantes no contexto que se pretende modelar e se procuram descrever características comuns em termos de propriedades (atributos) e de comportamentos (operações). Paulo Azevedo - Mar/2012 4 2
  • 3. 27-03-2012 Diagramas de Classes Diagramas de classes descrevem o modelo geral de informação de um sistema. Classes descrevem objectos com atributos e operações comuns. Servem dois propósitos: 1. Permitir compreender o mundo real, naquilo que é importante para o SI; 2. Fornecer uma base prática para implementação em computador. (Rumbagh et al, 1991) Paulo Azevedo - Mar/2012 5 Diagramas de Classes Utilizam os seguintes elementos abstractos de modelação: • Classes de objectos; • Relações de Associação e Generalização; • Multiplicidade. A perspectiva estática fornecida pelo diagrama de classes tem como objectivo suportar os requisitos funcionais do sistema. Paulo Azevedo - Mar/2012 6 3
  • 4. 27-03-2012 Diagramas de Classes Associação Classe Atributos Multiplicidade “Um cliente pode efectuar muitas encomendas” Paulo Azevedo - Mar/2012 7 Diagramas de Classes O diagrama de classes é utilizado no seguinte conjunto de formas: • Modelar o vocabulário do sistema – Envolve o decidir sobre que abstracções estruturais fazem parte do sistema em estudo; • Modelar colaboração simples – Visualizar o SI como um todo, constituído por classes e as suas relações; • Modelar o esquema lógico de uma BD – Desenhar a estrutura de dados para uma BD relacional ou orientada aos objectos. Paulo Azevedo - Mar/2012 8 4
  • 5. 27-03-2012 Diagramas de Classes Objecto – Conceito existente em modelação (mundo real), relevantes para serem incorporados no modelo de informação. Caracterizados por um conjunto de Propriedades, um comportamento e uma identidade. Paulo Azevedo - Mar/2012 9 Diagramas de Classes Propriedades do objecto – São as características que definem o objecto, transpostas para um conjunto de atributos, cujos valores estabelecem o estado do objecto. Comportamento – É definido como as operações que o objecto pode efectuar. Identidade – Permite identificar um objecto em particular como único num conjunto de objectos semelhantes. Paulo Azevedo - Mar/2012 10 5
  • 6. 27-03-2012 Diagramas de Classes PC1 PC2 PC3 O PC1 é diferente do PC2 e PC3, contudo, todos eles possuem um conjunto de atributos (S/N, data fabrico, cor, etc.) que os definem (estado) e realizam operações como iniciar SO ou executar SI (Comportamento). Para além de algumas semelhanças, possuem uma identidade própria que os torna únicos. Paulo Azevedo - Mar/2012 11 Diagramas de Classes Classe - Representa uma abstracção sobre um conjunto de objectos que partilham a mesma estrutura e comportamento. Um objecto é um caso particular de uma classe, também referido como uma instância da classe. Paulo Azevedo - Mar/2012 12 6
  • 7. 27-03-2012 Diagramas de Classes Atributo – Característica que os objectos possuem e que é representada por um valor de dados. Nome da classe Atributos Operações Paulo Azevedo - Mar/2012 13 Diagramas de Classes Os objectos apenas comunicam entre si por mensagens, o que na prática resulta na invocação de operações. As operações são a representação lógica do comportamento de um objecto, consistindo em acções efectuadas por um objecto ou sobre um objecto. Paulo Azevedo - Mar/2012 14 7
  • 8. 27-03-2012 Diagramas de Classes Por exemplo, a classe encomenda pode definir a operação Ver(). O parêntesis é utilizado para simbolizar a existência ou não de parâmetros. Para a operação referida poderia ser necessário fornecer o ID da encomenda, Ver(ID). Paulo Azevedo - Mar/2012 15 Diagramas de Classes Tanto os atributos como as operações podem ser visíveis ou não para outras classes, visibilidade: • Público – Qualquer classe tem acesso ao elemento. Representado através do prefixo “+”; • Protegido – Qualquer descendente da classe pode utilizar o elemento. É representado através do elemento “#”; • Privado - Apenas a própria classe tem acesso ao elemento – É representado através do prefixo “-”. Paulo Azevedo - Mar/2012 16 8
  • 9. 27-03-2012 Diagramas de Classes Para cada atributo pode ser identificado o seu tipo de dados, que classifica a informação que o atributo irá conter. De uma forma genérica: • Integer – Representa um número inteiro; • Long – Representa um número inteiro de maior dimensão; • Double – Para números reais; • String - Representa texto; • Date – Para datas; • Boolean – Valor lógico, Verdadeiro ou Falso. Paulo Azevedo - Mar/2012 17 Diagramas de Classes No diagrama de classes as associações representam as relações entre os objectos. As associações são caracterizadas por possuir um nome. Uma classe pode possuir uma associação consigo própria, significando neste caso que um objecto da classe se relaciona com um ou mais objectos da mesma classe. Paulo Azevedo - Mar/2012 18 9
  • 10. 27-03-2012 Diagramas de Classes As associações são também caracterizadas por possuir uma multiplicidade: • 0..1 – Opcional; • 1..1 – Obrigatório existir um objecto, também representado utilizando apenas o número 1; • 1..10 – Um valor entre o intervalo estabelecido, neste caso de 1 a 10; • 0..* - Zero ou infinitos objectos da classe, também pode ser representado por *; • 1..* – Um ou infinitos objectos da classe. Paulo Azevedo - Mar/2012 19 Diagramas de Classes É possível efectuar várias combinações de multiplicidade numa associação. A relação “um para muitos” entre a classe 1 e a classe 2 significa que um objecto da classe 1 pode estar associado ou não (opcional) a muitos objectos da classe 2 “Um para Um” “Um para Muitos” “Muitos para Muitas” Paulo Azevedo - Mar/2012 20 10
  • 11. 27-03-2012 Diagramas de Classes A identificação das classes não é um processo directo. São necessárias diversas iterações e refinamentos até identificar correctamente todas as classes. Uma regra simples é de iniciar o processo de identificação sublinhando, na descrição dos uses cases, os substantivos. Paulo Azevedo - Mar/2012 21 Diagramas de Classes Substantivos. Dá-se o nome de substantivo a todas as palavras que nomeiam seres, lugares, objectos, (…). Toda a palavra que designa ser, coisa ou substância Paulo Azevedo - Mar/2012 22 11
  • 12. 27-03-2012 Diagramas de Classes Exemplo: Efectuar Inscrição Pré condição Aluno é utilizador válido. 1 – UC começa quando aluno selecciona a opção efectuar inscrição; 2 – Sistema mostra lista de escolas; 3 – Aluno selecciona escola; 4 – Sistema mostra lista de cursos; 5 – Aluno selecciona curso; 6 – Aluno efectua inscrição. Pós condição Aluno recebe comprovativo da inscrição. Paulo Azevedo - Mar/2012 23 Regra prática • Normalmente, na descrição dos UC as classes e/ou objectos são identificados através de substantivos; • Os nomes das classes são sempre no singular; • As classes que estão fora de âmbito do sistema (domínio da aplicação, fronteira do sistema), não devem ser representadas. Paulo Azevedo - Mar/2012 24 12
  • 13. 27-03-2012 Diagramas de Classes • Representar o sistema – Não é necessário representar o próprio sistema; • Classes semelhantes – Podem existir classes que são sinónimos. Se houver dúvidas, estas podem ser esclarecidas ao efectuar a descrição das classes; • Nível de detalhe – Eliminar classes onde não é possível efectuar uma clara descrição ou que são muito especificas, quase como um objecto. Paulo Azevedo - Mar/2012 25 Diagramas de Classes • Identificação de atributos - Alguns atributos não são explicitamente referidos nas descrições, mas surgem do conhecimento do domínio do problema. Por exemplo, morada de um cliente. O levantamento destes atributos é muito importante. Paulo Azevedo - Mar/2012 26 13
  • 14. 27-03-2012 Diagramas de Classes • Identificação de associações e operações – Podem ser identificadas com base nas relações lógicas entre as classes. Também podem ser identificadas na descrição dos UC através dos verbos, como por exemplo, “o cliente efectua encomendas”. Só é possível compreender na totalidade as associações através de uma análise das interacções entre os objectos das classes. Paulo Azevedo - Mar/2012 27 Diagramas de Classes • Generalização – Caso especial do diagrama de classes. Demonstra a noção de “superclasse” e “subclasse” na perspectiva de uma relação “pai e filho”. Paulo Azevedo - Mar/2012 28 14
  • 15. 27-03-2012 Diagramas de Classes • Herança – O conceito de herança está presente, pois as subclasses, “filhos”, herdam, da superclasse “pai”, a estrutura em termos de atributos e operações. Paulo Azevedo - Mar/2012 29 Diagramas de Classes • Agregação - Demonstra o facto que um todo é composto por partes. Por exemplo, podemos mostrar que um restaurante possui um conjunto de mesas: Restaurante Mesa -Nome -Num Mesa -Morada 1 1..* Paulo Azevedo - Mar/2012 30 15
  • 16. 27-03-2012 Diagramas de Classes • Composição – É uma agregação com um significado mais forte, existindo uma dependência directa entre as duas classes. Se a parte deixar de existir o todo também deixa de existir. Paulo Azevedo - Mar/2012 31 Revisão Perguntas de revisão: 1. Qual o objectivo de um diagrama de classes? 2. O que significa uma classe? 3. Qual a notação para uma classe? 4. O que é um objecto? 5. Defina os conceitos de atributo e operações de uma classe. Paulo Azevedo - Mar/2012 32 16
  • 17. 27-03-2012 Revisão 1. Qual o objectivo de um diagrama de classes? Descrever o modelo geral de informação de um sistema. Resultam de um processo de abstracção através do qual se identificam os objectos (entidades e conceitos) relevantes no contexto que se pretende modelar e se procuram descrever características comuns em termos de propriedades (atributos) e de comportamento (operações). Paulo Azevedo - Mar/2012 33 Revisão 2. O que significa uma classe? Representa uma abstracção sobre um conjunto de objectos que partilham a mesma estrutura e comportamento. Um objecto é um caso particular de uma classe, também referido como uma instância da classe. Paulo Azevedo - Mar/2012 34 17
  • 18. 27-03-2012 Revisão 3. Qual a notação para uma classe? Rectângulo dividido em três. Nome, atributo e operações. Paulo Azevedo - Mar/2012 35 Revisão 4. O que é um objecto? Conceito existente em modelação (mundo real), relevantes para serem incorporados no modelo de informação. Caracterizados por um conjunto de Propriedades, um comportamento e uma identidade. Paulo Azevedo - Mar/2012 36 18
  • 19. 27-03-2012 Revisão 5. Defina os conceitos de atributo e operações de uma classe. Atributo – Característica que os objectos possuem e que é representada por um valor de dados. Operações - São a representação lógica do comportamento de um objecto, consistindo em acções efectuadas por ou sobre um objecto. Paulo Azevedo - Mar/2012 37 Exercícios Biblioteca: As publicações que se encontram disponíveis para os alunos são os livros e as revistas. Um aluno dirige-se com as publicações ao balcão de atendimento para preencher a ficha de empréstimo. Tem de preencher uma ficha para cada publicação, colocando a cota e o título. Caso seja um livro, tem de escrever os autores e o ISBN. Quando chega uma nova publicação esta é encaminhada para a responsável de catalogação que analisará e definirá a área de conhecimento. Existem várias áreas pré definidas, por exemplo, sociologia, psicologia, informática, etc. Podem ser definidas novas áreas de conhecimento. Paulo Azevedo - Mar/2012 38 19
  • 20. 27-03-2012 Resolução Biblioteca Objectos: • Livro; Revista; Autor; Aluno; Ficha de Empréstimo; Área de Publicação; Publicação Classes: • Publicação; Autor; Empréstimo; Aluno; Área. Paulo Azevedo - Mar/2012 39 Resolução Diagrama de classes Paulo Azevedo - Mar/2012 40 20
  • 21. 27-03-2012 Exercícios Parque de estacionamento: • Interessa apenas guardar no sistema a matrícula de cada veículo; • Um veículo pode efectuar vários estacionamentos no mesmo dia; • Os veículos podem ser automóveis ou motas; • De início, existe uma tarifa base que é aplicada a todos os veículos. Para veículos com elevado número de estacionamentos é possível criar tarifas específicas. Cada tarifa possui um custo por hora; • O estacionamento (parque) possui um número de lugares limitado. Os lugares são caracterizados por um número, piso e um estado. Este estado pode assumir os valores livre ou ocupado. Paulo Azevedo - Mar/2012 41 Resolução Parque estacionamento Objectos: • Carro; Mota; Tarifa; Estacionamento; Lugar, Classes: • Tarifa; Veículo; Estacionamento; Lugar. Paulo Azevedo - Mar/2012 42 21
  • 22. 27-03-2012 Resolução Diagrama de classes Paulo Azevedo - Mar/2012 43 22