SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
ANÁLISE PROJETO E
PROGRAMAÇÃO PARA WEB


CLASSE DE ASSOCIAÇÃO, DEPENDÊNCIA E
NORMALIZAÇÃO DO MODELO DE CLASSES
Profª. Maria Alice Jovinski
FASES DA CONSTRUÇÃO DO DIAGRAMA




                                                 Generalização e   Refinamento
   Classes       Associações         Atributos
                                                  Especialização    do modelo




   Classes candidatas e rejeitadas
IDENTIFICAÇÃO DAS CLASSES (1)
   Cada classe só deve ter uma representa um objeto,
    conceito ou evento, só deve ter propriedades
    associadas a um único “tema”;

   A primeira abordagem consiste em, a partir dos
    requisitos, procurar substantivos que nele estejam
    referenciados, mesmo que de forma implícita.

   Cada substantivo ou cada “tema” presente deve
    ser examinado, em termos da importância de
    armazenarmos informação sobre ele na BD;
IDENTIFICAÇÃO DAS CLASSES (2)
   Substantivos que produzam classes irrelevantes
    para o problema a resolver, deverão ser eliminadas
    da escolha preliminar assim como classes
    redundantes;

   Devemos ter cuidado com os nomes escolhidos
    para as classes. Se tivermos diversos substantivos
    parecidos, devemos escolher o que melhor se
    encaixe ao domínio do nosso problema;
IDENTIFICAÇÃO DAS CLASSES (3)
   Cada classe potencial dever ser examinada em
    termos das suas propriedades. Se uma classe
    assegura a existência de uma propriedade
    importante, deve ser mantida. Se não assegurar, se
    a classe servir apenas para fornecer um valor,
    deverá ser transformada num atributo;

   O teste de cada um dos mecanismo de interação
    entre o utilizador e o sistema, em princípio,
    permitirá determinar classes em falta;
IDENTIFICAÇÃO DE ASSOCIAÇÕES (1)
   Não podemos esquecer que uma associação
    descreve uma relação conceitual ou física entre
    classes;

   Para procurar essa dependência, um bom ponto de
    partida podem ser frases que contenham verbos
    usados numa estrutura substantivo-verbo-
    substantivo (“Uma venda é paga com um meio de
    pagamento”) . No entanto uma frase como “um
    meio de pagamento é o cartão de crédito ou um
    cheque ou dinheiro”, usa um verbo mas descreve
    uma relação do tipo “é um”, pelo que descreve uma
    generalização;
IDENTIFICAÇÃO DE ASSOCIAÇÕES (2)
   Procurar dependências, uma dependência entre
    classes pode ser uma associação (um voo chega
    ou parte a um aeroporto). Algumas associações
    podem resultar de conhecimentos gerais;

   Uma vez identificadas associações “candidatas”,
    deverão ser eliminadas as redundantes e as
    irrelevantes para o problema (aquelas que não têm
    associada informação importante para a BD);

   Deverá procurar evitar-se associações ternárias;
IDENTIFICAÇÃO DE ASSOCIAÇÕES (3)
   Cuidado com os nomes atribuídos às associações.
    Os nomes são importantes para tornar clara a
    natureza da relação entre as classes;

   Definir a multiplicidade de cada associação e os
    nomes dos papéis desempenhados;

   A revisão dos mecanismos de interação entre os
    utilizadores e o sistema permitirá detectar
    associações em falta;
IDENTIFICAÇÃO DE ATRIBUTOS EM CLASSES E
ASSOCIAÇÕES (1)

   Uma vez definida uma estrutura base de classes e
    associações, a especificação de requisitos deve ser
    percorrida, no sentido de identificar as propriedades
    de cada classe e associação. Muitas vezes são
    listadas explicitamente (“cada venda terá um recibo
    com nº, data e hora de emissão”);

   As frases possessivas e as enumerações são
    “fontes” de atributos;
IDENTIFICAÇÃO DE ATRIBUTOS EM CLASSES E
ASSOCIAÇÕES (2)

   Manter apenas os atributos que são relevantes para
    a aplicação;

   Notar atributos discordantes numa dada classe. Isso
    pode ser uma indicação de que a classe necessita de
    ser dividida;

   Uma classe deve ser simples e coerente;
DETECÇÃO DE GENERALIZAÇÃO /
ESPECIALIZAÇÃO
   As classes devem ser analisadas para determinar a
    necessidade de serem generalizadas (baixo para cima)
    ou especializadas;

   Cada classe só deve ser especializada se tiver atributos
    distintos, não basta que tenha valores distintos para os
    mesmos atributos;

   Frase do tipo “é uma” “é um” podem indicar
    generalização;

   Também se pode tentar encontra classes que tenham
    atributos semelhantes, que possam ser agrupados em
    super-classes;
REFINAMENTO DO MODELO
   Revisão e melhoria da modelagem;
CLASSE DE ASSOCIAÇÃO
   É um elemento de modelagem que tem associação
    e propriedades de classe;

   É um único elemento do modelo e tem apenas um
    nome;

   Em caso de multiplicidade de associação 1 para 1
    basta uma classe para representar a situação,
    fundindo os atributos e operações;

   Em caso de multiplicidade de associação 0 para 1
    ou * para *, nasce a classe associativa;
CLASSE DE ASSOCIAÇÃO
   É representada como o símbolo de classe anexado por
    uma linha tracejada;




         Classe A                                  Classe B




                    Nome da classe de associação

                    atributos

                    operacao
DEPENDÊNCIA
 Indica a ocorrência de um relacionamento
  semântico entre dois ou mais elementos do modelo
  onde uma classe cliente é dependente de algum
  serviço da classe fornecedora;
 Não possui dependência estrutural;

 Mudanças na classe fornecedora podem afetar as
  classes clientes;


                     Dependência
       Classe                        Classe
     Fornecedora                     Cliente
TIPOS DE DEPENDÊNCIA

   Rastro
       Uma conexão histórica entre dois elementos que
        representam o mesmo conceito em níveis diferentes de
        significado;


   Refinamento
       Um histórico ou conexão de derivação entre dois elementos
        com um mapeamento entre eles;
TIPOS DE DEPENDÊNCIA

   Ligação
       Uma ligação de parâmetros de modelo para valores reais
        visando criar um elemento não parametrizado;


   Uso
       Uma situação na qual um elemento requer a presença de
        outro para sua implementação e funcionamento correto.
        Exemplo: chamar uma operação de outra classe,
        conceder permissão de acesso, instanciar um objeto de
        outra classe;
NORMALIZAÇÃO

   É um processo normal que examina os atributos de
    classes com o intuito de minimizar redundância de
    objetos específicos;

   Simplifica os atributos dentro das classes, colabora
    para a integridade e a estabilidade do modelo;

   Alguns atributos determinam o valor de outros,
    criando relações onde os atributos determinantes
    são reagrupados;
NORMALIZAÇÃO

   Dependente da modelagem de banco de dados;

   Um estrutura de atributos não normalizada está na
    zeríssima forma normal;
1ª FORMA NORMAL
   Remoção de grupos repetidos;

   É verifica quando em determinadas estruturas de
    atributos existem dados repetidos;

   Exemplo:
                               Pedido

                     numero_pedido
                     codigo_pedido
                     nome_cliente
                     data_pedido
                     codigo_produto[15]
                     quantidade_produto[15]
                     descricao_produto[15]
1ª FORMA NORMAL
 Aplicando a 1ª forma normal gera a classe Pedido
  Item que herdará os valores repetidos da classe
  Pedido;
 A relação é de agregação de pedido item com
  pedido;

             Pedido                            Pedido Item

    numero_pedido
                      1         1..*   codigo_produto[15]
    codigo_pedido                      quantidade_produto[15]
    nome_cliente                       descricao_produto[15]
    data_pedido
1ª FORMA NORMAL
   Como obter a 1ª forma normal:

       Verificar se há atributos repetidos na classe;

       Destacar os atributos repetidos e suas respectivas
        operações, criando uma nova classe com esses itens;

       Estabelecer a associação de agregação regular e
        multiplicidade entre as classes;

Mais conteúdo relacionado

Mais procurados

Mais procurados (10)

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
 
Diagrama classes
Diagrama classesDiagrama classes
Diagrama classes
 
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
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
8 02
8 028 02
8 02
 
Uml Diagramas estruturais - parte escrita
Uml   Diagramas estruturais - parte escritaUml   Diagramas estruturais - parte escrita
Uml Diagramas estruturais - parte escrita
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 
Si diagrama de classes
Si  diagrama de classesSi  diagrama de classes
Si diagrama de classes
 

Semelhante a Análise de projeto e programação para web - Classes, associações e normalização

Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptxAula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptxCarlos Albuquerque
 
pec-12-patterns-intro.ppt
pec-12-patterns-intro.pptpec-12-patterns-intro.ppt
pec-12-patterns-intro.pptssuser7025cf
 
Apresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplosApresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplosmauroladeiafilho
 
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
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introduçãoelliando dias
 
Curso de java - Antonio Alves - aula 04
Curso de java - Antonio Alves -  aula 04Curso de java - Antonio Alves -  aula 04
Curso de java - Antonio Alves - aula 04Antonio Alves
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming Alexandre Schmidt
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaMoises Omena
 
Apresentação versão 1.5
Apresentação   versão 1.5Apresentação   versão 1.5
Apresentação versão 1.5oliveiraprog
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objetoelliando dias
 
Script c
Script cScript c
Script cRaphael
 
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
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Ryan Padilha
 

Semelhante a Análise de projeto e programação para web - Classes, associações e normalização (20)

Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptxAula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
 
pec-12-patterns-intro.ppt
pec-12-patterns-intro.pptpec-12-patterns-intro.ppt
pec-12-patterns-intro.ppt
 
Apresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplosApresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplos
 
Padrões de design orientado a objetos
Padrões de design orientado a objetosPadrões de design orientado a objetos
Padrões de design orientado a objetos
 
Sld 4
Sld 4Sld 4
Sld 4
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 
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)
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introdução
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a Objetos
 
03 poo
03 poo03 poo
03 poo
 
Curso de java - Antonio Alves - aula 04
Curso de java - Antonio Alves -  aula 04Curso de java - Antonio Alves -  aula 04
Curso de java - Antonio Alves - aula 04
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
 
Apresentação versão 1.5
Apresentação   versão 1.5Apresentação   versão 1.5
Apresentação versão 1.5
 
Banco de Dados Orientado a Objeto
Banco de Dados Orientado a ObjetoBanco de Dados Orientado a Objeto
Banco de Dados Orientado a Objeto
 
Script c
Script cScript c
Script c
 
POO.pdf
POO.pdfPOO.pdf
POO.pdf
 
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
 
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
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
 

Mais de Maria Alice Jovinski

Marketing pessoal você é sua melhor marca
Marketing pessoal   você é sua melhor marcaMarketing pessoal   você é sua melhor marca
Marketing pessoal você é sua melhor marcaMaria Alice Jovinski
 
5º P - Propaganda Marketing Digital
5º P - Propaganda Marketing Digital5º P - Propaganda Marketing Digital
5º P - Propaganda Marketing DigitalMaria Alice Jovinski
 
Marketing Digital - Publicação e Encontrabilidade
Marketing Digital - Publicação e EncontrabilidadeMarketing Digital - Publicação e Encontrabilidade
Marketing Digital - Publicação e EncontrabilidadeMaria Alice Jovinski
 
Aula de Revisão 1º parcial - Marketing Digital
Aula de Revisão 1º parcial - Marketing DigitalAula de Revisão 1º parcial - Marketing Digital
Aula de Revisão 1º parcial - Marketing DigitalMaria Alice Jovinski
 
Aula 01 introdução marketing digital
Aula 01   introdução marketing digitalAula 01   introdução marketing digital
Aula 01 introdução marketing digitalMaria Alice Jovinski
 
Revisão 2º bimestre - Marketing Digital TSI
Revisão 2º bimestre - Marketing Digital TSIRevisão 2º bimestre - Marketing Digital TSI
Revisão 2º bimestre - Marketing Digital TSIMaria Alice Jovinski
 
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIAula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIMaria Alice Jovinski
 
Aula diagramas de implementacao 3º periodo uniao
Aula diagramas de implementacao 3º periodo uniaoAula diagramas de implementacao 3º periodo uniao
Aula diagramas de implementacao 3º periodo uniaoMaria Alice Jovinski
 
Aula diagrama de colaboracao 3º periodo uniao
Aula diagrama de colaboracao 3º periodo uniaoAula diagrama de colaboracao 3º periodo uniao
Aula diagrama de colaboracao 3º periodo uniaoMaria Alice Jovinski
 
Aula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniaoAula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniaoMaria Alice Jovinski
 
Aula diagrama de estados 3º periodo uniao
Aula diagrama de estados 3º periodo uniaoAula diagrama de estados 3º periodo uniao
Aula diagrama de estados 3º periodo uniaoMaria Alice Jovinski
 
Marketing digital - Aula Google Analytics
Marketing digital - Aula Google AnalyticsMarketing digital - Aula Google Analytics
Marketing digital - Aula Google AnalyticsMaria Alice Jovinski
 
Aula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniaoAula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniaoMaria Alice Jovinski
 
Aula de Revisão - Marketing Digital - 1º bimestre
Aula de Revisão - Marketing Digital -  1º bimestreAula de Revisão - Marketing Digital -  1º bimestre
Aula de Revisão - Marketing Digital - 1º bimestreMaria Alice Jovinski
 
Aula classes abstratas 3º periodo uniao
Aula classes abstratas  3º periodo uniaoAula classes abstratas  3º periodo uniao
Aula classes abstratas 3º periodo uniaoMaria Alice Jovinski
 

Mais de Maria Alice Jovinski (18)

Marketing pessoal você é sua melhor marca
Marketing pessoal   você é sua melhor marcaMarketing pessoal   você é sua melhor marca
Marketing pessoal você é sua melhor marca
 
5º P - Propaganda Marketing Digital
5º P - Propaganda Marketing Digital5º P - Propaganda Marketing Digital
5º P - Propaganda Marketing Digital
 
AOO - Diagrama de Caso de Uso
AOO - Diagrama de Caso de UsoAOO - Diagrama de Caso de Uso
AOO - Diagrama de Caso de Uso
 
Marketing Digital - Publicação e Encontrabilidade
Marketing Digital - Publicação e EncontrabilidadeMarketing Digital - Publicação e Encontrabilidade
Marketing Digital - Publicação e Encontrabilidade
 
Aula de Revisão 1º parcial - Marketing Digital
Aula de Revisão 1º parcial - Marketing DigitalAula de Revisão 1º parcial - Marketing Digital
Aula de Revisão 1º parcial - Marketing Digital
 
Aula 01 introdução aoo
Aula 01   introdução aooAula 01   introdução aoo
Aula 01 introdução aoo
 
Aula 01 introdução marketing digital
Aula 01   introdução marketing digitalAula 01   introdução marketing digital
Aula 01 introdução marketing digital
 
Revisão 2º bimestre - Marketing Digital TSI
Revisão 2º bimestre - Marketing Digital TSIRevisão 2º bimestre - Marketing Digital TSI
Revisão 2º bimestre - Marketing Digital TSI
 
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSIAula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
Aula de revisão 2º bimestre - Análise Projeto e Programação para Web - TSI
 
Aula diagramas de implementacao 3º periodo uniao
Aula diagramas de implementacao 3º periodo uniaoAula diagramas de implementacao 3º periodo uniao
Aula diagramas de implementacao 3º periodo uniao
 
Aula diagrama de colaboracao 3º periodo uniao
Aula diagrama de colaboracao 3º periodo uniaoAula diagrama de colaboracao 3º periodo uniao
Aula diagrama de colaboracao 3º periodo uniao
 
Aula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniaoAula diagrama de atividade 3º periodo uniao
Aula diagrama de atividade 3º periodo uniao
 
Aula diagrama de estados 3º periodo uniao
Aula diagrama de estados 3º periodo uniaoAula diagrama de estados 3º periodo uniao
Aula diagrama de estados 3º periodo uniao
 
Marketing digital - Aula Google Analytics
Marketing digital - Aula Google AnalyticsMarketing digital - Aula Google Analytics
Marketing digital - Aula Google Analytics
 
Md aula 10
Md   aula 10Md   aula 10
Md aula 10
 
Aula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniaoAula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniao
 
Aula de Revisão - Marketing Digital - 1º bimestre
Aula de Revisão - Marketing Digital -  1º bimestreAula de Revisão - Marketing Digital -  1º bimestre
Aula de Revisão - Marketing Digital - 1º bimestre
 
Aula classes abstratas 3º periodo uniao
Aula classes abstratas  3º periodo uniaoAula classes abstratas  3º periodo uniao
Aula classes abstratas 3º periodo uniao
 

Último

Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreElianeElika
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
Mapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxMapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxBeatrizLittig1
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptMaiteFerreira4
 
Atividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas GeográficasAtividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas Geográficasprofcamilamanz
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinhaMary Alvarenga
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memorialgrecchi
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumAugusto Costa
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?AnabelaGuerreiro7
 

Último (20)

Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
Mapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxMapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docx
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.ppt
 
Atividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas GeográficasAtividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas Geográficas
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinha
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memoria
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?
 

Análise de projeto e programação para web - Classes, associações e normalização

  • 1. ANÁLISE PROJETO E PROGRAMAÇÃO PARA WEB CLASSE DE ASSOCIAÇÃO, DEPENDÊNCIA E NORMALIZAÇÃO DO MODELO DE CLASSES Profª. Maria Alice Jovinski
  • 2. FASES DA CONSTRUÇÃO DO DIAGRAMA Generalização e Refinamento Classes Associações Atributos Especialização do modelo Classes candidatas e rejeitadas
  • 3. IDENTIFICAÇÃO DAS CLASSES (1)  Cada classe só deve ter uma representa um objeto, conceito ou evento, só deve ter propriedades associadas a um único “tema”;  A primeira abordagem consiste em, a partir dos requisitos, procurar substantivos que nele estejam referenciados, mesmo que de forma implícita.  Cada substantivo ou cada “tema” presente deve ser examinado, em termos da importância de armazenarmos informação sobre ele na BD;
  • 4. IDENTIFICAÇÃO DAS CLASSES (2)  Substantivos que produzam classes irrelevantes para o problema a resolver, deverão ser eliminadas da escolha preliminar assim como classes redundantes;  Devemos ter cuidado com os nomes escolhidos para as classes. Se tivermos diversos substantivos parecidos, devemos escolher o que melhor se encaixe ao domínio do nosso problema;
  • 5. IDENTIFICAÇÃO DAS CLASSES (3)  Cada classe potencial dever ser examinada em termos das suas propriedades. Se uma classe assegura a existência de uma propriedade importante, deve ser mantida. Se não assegurar, se a classe servir apenas para fornecer um valor, deverá ser transformada num atributo;  O teste de cada um dos mecanismo de interação entre o utilizador e o sistema, em princípio, permitirá determinar classes em falta;
  • 6. IDENTIFICAÇÃO DE ASSOCIAÇÕES (1)  Não podemos esquecer que uma associação descreve uma relação conceitual ou física entre classes;  Para procurar essa dependência, um bom ponto de partida podem ser frases que contenham verbos usados numa estrutura substantivo-verbo- substantivo (“Uma venda é paga com um meio de pagamento”) . No entanto uma frase como “um meio de pagamento é o cartão de crédito ou um cheque ou dinheiro”, usa um verbo mas descreve uma relação do tipo “é um”, pelo que descreve uma generalização;
  • 7. IDENTIFICAÇÃO DE ASSOCIAÇÕES (2)  Procurar dependências, uma dependência entre classes pode ser uma associação (um voo chega ou parte a um aeroporto). Algumas associações podem resultar de conhecimentos gerais;  Uma vez identificadas associações “candidatas”, deverão ser eliminadas as redundantes e as irrelevantes para o problema (aquelas que não têm associada informação importante para a BD);  Deverá procurar evitar-se associações ternárias;
  • 8. IDENTIFICAÇÃO DE ASSOCIAÇÕES (3)  Cuidado com os nomes atribuídos às associações. Os nomes são importantes para tornar clara a natureza da relação entre as classes;  Definir a multiplicidade de cada associação e os nomes dos papéis desempenhados;  A revisão dos mecanismos de interação entre os utilizadores e o sistema permitirá detectar associações em falta;
  • 9. IDENTIFICAÇÃO DE ATRIBUTOS EM CLASSES E ASSOCIAÇÕES (1)  Uma vez definida uma estrutura base de classes e associações, a especificação de requisitos deve ser percorrida, no sentido de identificar as propriedades de cada classe e associação. Muitas vezes são listadas explicitamente (“cada venda terá um recibo com nº, data e hora de emissão”);  As frases possessivas e as enumerações são “fontes” de atributos;
  • 10. IDENTIFICAÇÃO DE ATRIBUTOS EM CLASSES E ASSOCIAÇÕES (2)  Manter apenas os atributos que são relevantes para a aplicação;  Notar atributos discordantes numa dada classe. Isso pode ser uma indicação de que a classe necessita de ser dividida;  Uma classe deve ser simples e coerente;
  • 11. DETECÇÃO DE GENERALIZAÇÃO / ESPECIALIZAÇÃO  As classes devem ser analisadas para determinar a necessidade de serem generalizadas (baixo para cima) ou especializadas;  Cada classe só deve ser especializada se tiver atributos distintos, não basta que tenha valores distintos para os mesmos atributos;  Frase do tipo “é uma” “é um” podem indicar generalização;  Também se pode tentar encontra classes que tenham atributos semelhantes, que possam ser agrupados em super-classes;
  • 12. REFINAMENTO DO MODELO  Revisão e melhoria da modelagem;
  • 13. CLASSE DE ASSOCIAÇÃO  É um elemento de modelagem que tem associação e propriedades de classe;  É um único elemento do modelo e tem apenas um nome;  Em caso de multiplicidade de associação 1 para 1 basta uma classe para representar a situação, fundindo os atributos e operações;  Em caso de multiplicidade de associação 0 para 1 ou * para *, nasce a classe associativa;
  • 14. CLASSE DE ASSOCIAÇÃO  É representada como o símbolo de classe anexado por uma linha tracejada; Classe A Classe B Nome da classe de associação atributos operacao
  • 15. DEPENDÊNCIA  Indica a ocorrência de um relacionamento semântico entre dois ou mais elementos do modelo onde uma classe cliente é dependente de algum serviço da classe fornecedora;  Não possui dependência estrutural;  Mudanças na classe fornecedora podem afetar as classes clientes; Dependência Classe Classe Fornecedora Cliente
  • 16. TIPOS DE DEPENDÊNCIA  Rastro  Uma conexão histórica entre dois elementos que representam o mesmo conceito em níveis diferentes de significado;  Refinamento  Um histórico ou conexão de derivação entre dois elementos com um mapeamento entre eles;
  • 17. TIPOS DE DEPENDÊNCIA  Ligação  Uma ligação de parâmetros de modelo para valores reais visando criar um elemento não parametrizado;  Uso  Uma situação na qual um elemento requer a presença de outro para sua implementação e funcionamento correto. Exemplo: chamar uma operação de outra classe, conceder permissão de acesso, instanciar um objeto de outra classe;
  • 18. NORMALIZAÇÃO  É um processo normal que examina os atributos de classes com o intuito de minimizar redundância de objetos específicos;  Simplifica os atributos dentro das classes, colabora para a integridade e a estabilidade do modelo;  Alguns atributos determinam o valor de outros, criando relações onde os atributos determinantes são reagrupados;
  • 19. NORMALIZAÇÃO  Dependente da modelagem de banco de dados;  Um estrutura de atributos não normalizada está na zeríssima forma normal;
  • 20. 1ª FORMA NORMAL  Remoção de grupos repetidos;  É verifica quando em determinadas estruturas de atributos existem dados repetidos;  Exemplo: Pedido numero_pedido codigo_pedido nome_cliente data_pedido codigo_produto[15] quantidade_produto[15] descricao_produto[15]
  • 21. 1ª FORMA NORMAL  Aplicando a 1ª forma normal gera a classe Pedido Item que herdará os valores repetidos da classe Pedido;  A relação é de agregação de pedido item com pedido; Pedido Pedido Item numero_pedido 1 1..* codigo_produto[15] codigo_pedido quantidade_produto[15] nome_cliente descricao_produto[15] data_pedido
  • 22. 1ª FORMA NORMAL  Como obter a 1ª forma normal:  Verificar se há atributos repetidos na classe;  Destacar os atributos repetidos e suas respectivas operações, criando uma nova classe com esses itens;  Estabelecer a associação de agregação regular e multiplicidade entre as classes;