Normalização de dados

Documentos relacionados
Técnicas de Modelação de Dados

CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGRAMAÇÃO DE SISTEMAS INFORMÁTICOS

conteúdos. bases de dados, SGBD e aplicações. conceitos. modelo relacional (DER) conceitos

2010 Diagrama Entidade - Associação

ENGENHARIA DE SOFTWARE

Diagrama de Entidade Associação ou Relacionamento

F Os tipos de média estáticos agrupam elementos de informação dependentes do tempo, tais como, por exemplo, o áudio, o vídeo e a animação.

POCH FSE

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 550 INFORMÁTICA Planificação Anual /Critérios de avaliação

Análise Estruturada. Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D.

Planificação/Critérios Ano Letivo 2018/2019

Técnicas de Modelação de Dados

Banco de Dados. Professora: Luciana Faria

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

Informática II Cap. 5-1 Modelo Relacional, Normalização e Diagramas E-R

Modelo Lógico de Dados (MLD) Origens do modelo relacional

TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS BANCO DE DADOS I PROFA. CLEIANE GONÇALVES OLIVEIRA

Modelo Relacional. Aula 02

MÓDULO 8 INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA POR OBJETOS O QUE É A PROGRAMAÇÃO ORIENTADA POR OBJETOS 10

3. Modelação Evolução histórica

Análise de Sistemas de Informação

!" # Modelos de dados. 1ª geração. 2ª geração. 3ª geração. Modelo Hierárquico Modelo Rede. Modelo Relacional

Um SGBD permite que cada utilizador tenha uma vista diferente (abstrata) do conteúdo da base de dados;

TABELA ENTIDADE LINHA OCORRÊNCIA DA ENTIDADE COLUNA ATRIBUTO DA ENTIDADE

18/03/2012. Independência de Dados: capacidade de modificar a definição dos esquemas em. determinado nível, sem afetar o esquema do nível superior;

Introdução aos SGBD s

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO SISTEMAS DE GESTÃO DE BASE DE DADOS O MODELO RELACIONAL

Sistemas de Banco de Dados

Modelagem semântica permite aproximar o modelo obtido do mundo real Exemplo de modelos:

Introdução 20 Diagramas de fluxos de dados 20 O processo de elaboração de DFD 22 Regras práticas para a elaboração de DFD 24 Dicionário de dados 26

NORMALIZAÇÃO. Quantidade do Produto. Produto

Revisando Banco de Dados. Modelo Relacional

Cadeira de Tecnologias de Informação. Normalização Relacional

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 2ª Parte Prof. Sandra Pais Soares

Banco de Dados I Parte II a: Abordagem Entidade-Relacionamento

Modelo Comportamental

Parte NORMALIZAÇÃO. As regras mais importantes oferecidas pelo Sistema Gerenciador de Banco de Dados. são:

Banco de Dados Modelagem de Dados

Unidade 3 23/10/2008. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

MAPEAMENTO OBJETO RELACIONAL

Arquitetura dos SBDs Características e Benefícios Visão Geral de Projeto de BD MER: Entidades e Atributos Atividade.

Banco de Dados. Aula 3 - Prof. Bruno Moreno 26/08/2011

Engenharia da Programação 2003/2004

Aula 01 Conceito de Banco de Dados e SGBD

UFCD 0781 Análise de Sistemas de Informação. Formadora: Sónia Rodrigues. Conteúdos. Conteúdos. Conteúdos. Conteúdos. Objectivos da UFCD:

Análise Clássica (Tradicional) X Análise Estruturada

Bancos de Dados Aula #2 - Modelos Conceituais de Dados

LISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS

ORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados

Análise e Projeto de Sistemas I

MODELO ENTIDADE RELACIONAMENTO

Modelagem de Dados MODELAGEM DE DADOS. Lista de Exercícios 01. Luiz Leão Lista de Exercícios AV1

Unidade 2 Modelo Conceitual

Base de Dados. Sistemas de Informação. Base de Dados - Índice Introdução Componentes Base de Dados. Introdução. Introdução. Introdução.

António Rocha Nuno Melo e Castro

Modelo Relacional e Normalização de Dados. ENG1518/3VC Sistemas de Informação Gerenciais Prof. Marcos Villas

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1.

PROJETO DE BANCO DE DADOS

Modelagem Conceitual parte I

Técnicas de Modelação de Dados

Modelagem Conceitual parte I

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

Prof. Fabiano Taguchi

Projeto de BD Relacional

Projeto de BD Relacional

Introdução à Programação de Computadores Fabricação Mecânica

Título PROCESSO LABES ESPECIALIZADO PARA DESENVOLVIMENTO SEGUNDO O PARADIGMA ESTRUTURADO. Projeto. Analista; Requisitos Funcionais Escopo; Cliente;

LINGUAGEM, TIPOS DE USUÁRIOS DE SGBD E MODELOS DE DADOS

Projeto de BD Relacional

MODELAGEM DE SISTEMAS Unidade 4 Modelo de Classes de Projeto. Luiz Leão

Tópico: Modelagem CONTEÚDO PROGRAMÁTICO

Análise de Sistemas 2º Bimestre (material 2)

Qualidade. Ana Madureira

5 a e 6 a Técnicas de BD Normalização e Modelagem (1)

Introdução à Programação. João Manuel R. S. Tavares

Capítulo 2 Modelo Entidade- Relacionamento. Prof. Mario Dantas

Computação Instrumental

Dependências funcionais e normalização

Introdução aos Algoritmos

Unidade II ADMINISTRAÇÃO DE BANCO DE DADOS

Gestão de Base de dados Conceitos Básicos

MAPEAMENTO OBJETO RELACIONAL. Professora Lucélia Oliveira

Administração de Sistemas de Informação. Processos

Bases de Dados. Apresentação da disciplina. Programa

MODELAGEM DE DADOS UNIDADE 3 Modelo Entidade-Relacionamento. Luiz Leão

Abordagem ER. Capítulo 2

Modelagem Orientada a Objetos

Banco de Dados Modelagem e Normalização

BANCO DE DADOS I/MODELAGEM DE DADOS Prof. Ricardo Rodrigues Barcelar

Informática II Cap. 5-2 Bases de Dados - MsAccess

1ª Forma Normal. Uma relação está na 1ª Forma normal se todos os seus atributos são valores escalares.

Prof. Carlos Almeida

Metodologia Simplified. António Rocha

Transcrição:

1 Normalização de dados Vantagens da normalização A normalização permite: Agrupar os atributos de uma entidade de forma a reduzir o número de dependências funcionais existentes entre os dados numa base de dados, diminuindo a redundância Garantir a integridade, a consistência e a fiabilidade dos dados estruturados em relações segundo o modelo relacional Minimizar o espaço utilizado pelos dados criando bases de dados simples e flexíveis A qualquer utilizador aplicar com certa facilidade as suas formas normais

2 Normalização de dados Regras de transformação do diagrama ER no modelo relacional A normalização de dados pode ser feita a partir de modelos de dados resultantes da modelação com diagramas ER A seguir, apresenta-se um conjunto de regras para obter essa transformação, tendo em conta o tipo e o grau do relacionamento Toda a entidade do diagrama ER traduz-se numa relação no modelo relacional, com os mesmos atributos e chaves Nos relacionamentos 1:1, com participação obrigatória em ambos os lados, pode-se construir uma ou duas relações No caso de serem criadas duas relações, cada uma contém uma chave estrangeira Uma chave estrangeira de uma relação é a repetição da chave primária de outra relação, permitindo o relacionamento

Normalização de dados Nos relacionamentos 1:1 com participação obrigatória apenas de um dos lados, constroem-se duas relações A chave estrangeira encontra-se na relação com participação não obrigatória Nos relacionamentos 1:1 com participação opcional em ambos os lados, constroem-se três relações Uma das relações corresponde à entidade associação que contem as chaves estrangeiras das duas entidades iniciais Podem ser precisos mais atributos para constituir a sua chave primária Podem-se criar outros atributos na entidade associativa 3

Normalização de dados Nos relacionamentos 1:M, constrói-se primeiro a relação de cardinalidade 1 e, depois, a de cardinalidade M, adquirindo esta a chave da primeira no caso de existir obrigatoriedade dos dois lados ou apenas do lado 1 Nos relacionamentos de 1:M, constroem-se três relações no caso de existir obrigatoriedade do lado M ou no caso dos dois lados serem de obrigatoriedade opcional Uma das relações corresponde à entidade associação que contem as chaves das duas entidades iniciais Nesta relação, pode ser preciso acrescentar mais atributos para constituir a sua chave primária, assim como outros atributos descritores 4

5 Normalização de dados Nos relacionamentos M:M, constroem-se primeiro as relações de cardinalidade M e, depois, a relação que corresponde à entidade associação Esta relação adquire a chave das entidades iniciais Nesta relação, pode ser preciso acrescentar mais atributos para constituir a sua chave primária, assim como outros atributos descritores

6 Normalização de dados O quadro 14 resume a informação relacionada com o número de relações que se podem derivar do modelo ER de acordo com o tipo e o grau de cardinalidade de associação presente entre as entidades, de forma a garantir que não haja em cada uma atributos com valores que não estejam definidos Na coluna Descrição são, inicialmente, apresentadas as entidades e o respectivo diagrama ER Por fim, são apresentadas as relações obtidas para o modelo relacional De salientar que o símbolo @ é utilizado para identificar a chave primária e o sublinhado é utilizado para identificar uma chave primária

Normalização de dados 7

Normalização de dados 8

Normalização 9

Normalização 10

Normalização 11

12 Normalização A partir do diagrama da figura 1.20 exemplifica-se a aplicação das regras de transformação de um modelo ER num esquema relacional, descrevendo-se a seguir as relações do modelo relacional obtidas

Normalização 13

14 Normalização Atleta = @codatleta + nomenascimento + datanascimento Modalidade = @codmodalidade + nomemodalidade + pavilhão + codtreinador Cacifo = @codcacifo + local + dataaluga + codatleta Treinador = @codtreinador + nometreinador Inscrito = @codatleta + @codmodalidade + datainscrição

4.2.5. Esquema de tabelas 15

16 Esquema de tabelas Durante a análise de um sistema têm sido utilizados diferentes diagramas ou desenhos, representando, modelando ou idealizando esse sistema Estes desenhos permitem mostrar como podem vir a ser realmente implementados esses sistemas O esquema de tabelas é um desenho que se debruça sobre os dados armazenados no sistema e que se designa por modelo estático

17 Esquema de tabelas Na aplicação do modelo estático, parte-se do princípio que é preciso garantir uma redundância reduzida entre os dados, minimizar o número de tabelas e garantir a integridade e fiabilidade dos dados Sendo assim, obter um esquema de tabelas é derivar do modelo ER as relações para uma base de dados relacional Esta derivação é conseguida quando se aplicam ao modelo ER as regras de normalização e da cardinalidade

18 Esquema de tabelas A normalização aplica-se sobre um modelo ER quando as suas entidades ainda não estão normalizadas como, por exemplo, no caso apresentado no ponto Fases da normalização, relativamente à entidade inicial Encomenda Encomenda = @Número_encomenda + Data_encomenda + Código_cliente + Nome_cliente + Telefone + {Código_produto + Nome_produto + Preo_unitário + Quantidade} + Total_encomenda

19 Esquema de tabelas As regras da cardinalidade (quadro 14) aplicam-se sobre o modelo ER quando as suas entidades já se encontram normalizadas O ponto Regras de transformação do diagrama ER no modelo relacional é o exemplo de como se obtêm as relações de um modelo relacional a partir do modelo ER Aqui, é de salientar que uma relação nem sempre deriva de uma entidade

20 Esquema de tabelas Podem surgir relações de entidades associativas Estas relações passam a ter atributos identificadores de outras entidades e que se designam por chaves estrangeiras Por exemplo, das relações do Modelo relacional obtidas a partir da figura 1.20, codatleta e codmodalidade não são atributos da entidade ER inscrito Inscrito = @codatleta + @codmodalidade + datainscrição

21 Esquema de tabelas Há, também, relações derivadas de entidades ER que contêm atributos de outras entidades Por exemplo, das relações do Modelo relacional obtidas a partir da figura 1.20, codtreinador e codatleta são respectivamente atributos das entidades ER Atleta e Treinador Modalidade = @codmodalidade + nomemodalidade + pavilhão + codtreinador Cacifo = @codcacifo + Local + codatleta + dataaluga

22 Esquema de tabelas Observando o exemplo da figura 1.20, de quatro entidades e três relacionamentos derivaram cinco relações O objectivo do esquema de tabelas é conseguir obter um número mínimo de tabelas, garantindo que todos os atributos estejam correctamente definidos dentro dos objectivos do modelo relacional

23 Esquema de tabelas A figura 1.21 apresenta um esquema de tabela característico da representação de relações O nome da tabela corresponde ao nome da relação A chave primária é constituída pelos atributos identificadores, isto é, atributos que identificam de forma exclusiva cada ocorrência de uma relação Os atributos descritores são atributos que descrevem a relação As chaves estrangeiras são atributos identificadores de outras relações

24 Esquema de tabelas A figura 1.22 exemplifica o esquema de tabelas das relações obtidas do modelo ER da figura 1.20

4.2.6. Especificação estrutural 25

26 Especificação estrutural O modelo dinâmico debruça-se sobre as interligações existentes entre os componentes do sistema e utiliza as ferramentas diagrama de estrutura e diagrama de acção para especificar estruturalmente um sistema segundo um conjunto de módulos, pequenos, independentes, simples, flexíveis e dispostos hierarquicamente em árvore O modelo dinâmico permite estruturar as operações do sistema de forma sequencial e no tempo Outra característica importante é a possibilidade de especificar aspectos de controlo do sistema

27 Especificação estrutural A partir do Diagrama de Fluxo de Dados, do Dicionário de Dados e do esquema de tabelas, é possível segmentar o sistema e obter uma hierarquia de módulos Esta modularização tem como objectivo facilitar o desenvolvimento, a manutenção e a visualização dos sistemas ao segmentar um problema complexo em problemas menores e mais simples, pois cada módulo funciona como uma caixa preta em que se conhecem as entradas, as saídas e a função que transforma as entradas em saídas previsíveis

28 Especificação estrutural Diagramas de estrutura Um diagrama de estrutura é uma ferramenta gráfica que segmenta o sistema em módulos, mostrando a sua organização e hierarquia, a sua função, as suas interfaces de comunicação e a comunicação entre eles O quadro 15 apresenta os símbolos utilizados por esta ferramenta gráfica para se desenhar a estrutura de um sistema baseada em três componentes básicos como os módulos, as ligações e as comunicações (chamadas) No caso de um sistema informático, os módulos podiam representar sub-rotinas de programação e as ligações, os fluxos de dados e/ou controlo

Especificação estrutural 29

30 Especificação estrutural Quadro 15 (continuação)

31 Especificação estrutural Diagramas de estrutura (continuação) A figura 1.23 mostra dois diagramas de estrutura, um errado (A) e outro correcto (B) O diagrama A não apresenta nenhuma ligação de dados, o nome do módulo de Obter registo do funcionário não abrange a função abaixo, Calcular salário, e os módulos predefinidos não podem apresentar módulos subordinados Portanto, os nomes dos módulos devem ser claros e de forma a apresentarem a sua função e a de todos os módulos que ficam hierarquicamente abaixo Os módulos predefinidos, apesar de poderem ter muitos módulos subordinados, nunca apresentam esses módulos subordinados num diagrama de estrutura

Especificação estrutural 32

Especificação estrutural Diagramas de acção Como se pode perceber, um diagrama de estrutura não mostra o funcionamento interno dos módulos, os dados acedidos por eles e a sequência das operações no tempo Cabe a um diagrama de acção mostrar detalhadamente a lógica de funcionamento da função do módulo e o modo como os dados de entrada são transformados em dados de saída A implementação de um diagrama de acção consiste na utilização de uma linguagem de codificação para especificar os módulos Consoante a complexidade do módulo, assim se podem utilizar linguagens com maior ou menor detalhe Podem ser utilizadas simples especificações ou linguagens mais estruturadas ou, ainda, pseudocódigos mais próximos das linguagens de programação 33

Especificação estrutural Diagramas de acção (continuação) A seguir, apresenta-se um exemplo de um diagrama de acção, utilizando uma linguagem simples, que codifica o diagrama de estrutura da figura 1.23 B Emitir cheque pagamento Para cada empregado Lê o nome e salário-base do do registo do empregado Calcula salário Salário é igual ao salário-base menos os descontos Imprime no cheque o nome do empregado, montante a receber, data de emissão e localidade 34