SlideShare une entreprise Scribd logo
1  sur  57
BANCO DE DADOS




     Rilmar Gomes
   Modelagem de dados de sistemas típicos através do Modelo
    Entidade Relacionamento.

   Conceitos e projeto lógico do Modelo Relacional

   Práticas de Modelagem e Projeto
 Fundamentals of Database Systems
  Elmasri, R; Navathe, S
  Benjamin Cummings, 1994

 Sistemas de banco de Dados
  Korth, H. F.; Silberschatz, A; Sudarshan, S
  Makkron Books, 1999

 Introdução a Sistemas de Bancos de Dados
  Date, C. J. , Editora Campus, 2000
   “É uma coleção de dados inter-relacionados, representando
    informações sobre um domínio específico (conceito geral)
     Representa aspectos do mundo real. Mudanças no mundo
      real são refletidas no BD
     É   uma coleção lógica e coerente de dados com
      relacionamentos intrínsecos;
     É projetado, construído, e mantido para uma proposta
      específica. É direcionado a um grupo de usuários/aplicação
     Pode ter qualquer tamanho/complexidade
Mundo Real                          Solução



Modelo é a representação abstrata e simplificada de uma
determinada realidade. É um conjunto de conceitos para
descrever os dados, de restrições e relacionamento entre
esses dados.
É um conjunto de registros dispostos em estrutura regular que
possibilita a reorganização dos mesmos e produção
de informação.
Um banco de dados normalmente agrupa registros utilizáveis
para um mesmo fim.
Um banco de dados é usualmente mantido e acessado por meio
de um software conhecido como Sistema Gerenciador de Banco
de Dados (SGBD).
Normalmente um SGBD adota um modelo de dados, de forma
pura, reduzida ou estendida. Muitas vezes o termo banco de
dados é usado, de forma errônea, como sinônimo de SGDB.
Os sistemas de gestão de banco de dados possuem
características especiais para o armazenamento, classificação,
gestão da integridade e recuperação dos dados.
Com a evolução de padrões de conectividade entre as tabelas de
um banco de dados e programas desenvolvidos em linguagens
como Java, Delphi, Visual Basic, C++ etc.
Como hoje em dia a maioria das linguagens de programação
fazem ligações a bancos de dados, a apresentação destes tem
ficado cada vez mais a critério dos meios de programação,
fazendo com que os bancos de dados deixem de restringir-se às
pesquisas básicas, dando lugar ao compartilhamento, em tempo
real, de informações, mecanismos de busca inteligentes e
permissividade de acesso hierarquizada.
 Sistema Gerenciador de Bancos de Dados (SGBD):
Software construıdo para facilitar as atividades de definição,
construção e manipulação de bancos de dados;

Consistem em uma coleção de dados inter-relacionados
e de um conjunto de programas
para acessá-los

Sistema de Bancos de Dados: Banco de Dados + Software
que o manipula
Prover um ambiente que seja conveniente e eficiente para recuperar e
armazenar informações de Bancos de Dados.
Eliminar ou Reduzir
   Redundância e inconsistência de dados
   Dificuldade no acesso aos dados
   Isolamento dos dados
   Anomalias de acesso concorrente
   Problemas de segurança
Abstração de dados
Simplifica a interação do usuário com o Sistema
Fucapi
1.Controle de Redundancia;

2. Compartilhamento de Dados;

3. Controle de Acesso aos Dados;

4. Multiplas Interfaces;

5. Representação de associacoes complexas;

6. Garantia de restrições de Integridade;

7. Recuperação de falhas
Modelo de Entidade
              do     Modelo   do
              cliente
Modelo do
sistema na
mente do
cliente
             Representação
             Tabular do modelo       Server
             de entidade


                                   Tabelas no
                                     disco
Mundo Real


Modelo Entidade Relacionamento

                          Nível Conceitual

                                        Modelo Relacional-Objeto Relacional

                           nível lógico


                            nível físico
   Proporciona uma visão lógica de alto nível dos dados

   É uma descrição abstrata de uma porção do mundo real

   Todos os dados são visualizados como fatos específicos sobre
    entidades, relacionamentos e atributos

   Através do MER, podemos ter uma fotografia do sistema

    As entidades, relacionamentos e atributos descrevem as
    regras de negócio da empresa
   Definição: modelo baseado na percepção do
    mundo real que consiste em um conjunto de
    objetos básicos, chamados entidades, e nos
    relacionamentos entre esses objetos.
   Objetivo: facilitar o projeto de banco de
    dados, possibilitando especificar a estrutura lógica
    geral.




                Fucapi
Atributo
                    supervisor                                  DataIni
                                                                                       Relacionamento
                                                   gerenciar


                1         N       1                                                1
    número
                                       N                                  1                               número
   endereço    FUNCIONÁRIO                         trabalhar                      DEPARTAMENTO
                                                                                                          nome
      nome                             N
                          1                                                               1
     salário                                                                                          localização

                                                   participar                          controlar
                    possuir
                                           horas

                                                                                         N
                                                                                                       número
                     N                                                        N        PROJETO         nome
     nome
 DataNiver     DEPENDENTE
 parentesco
                                                                                                   Entidade

                              Fucapi
Entidade

             Entidade Fraca

             Relacionamento

             Relacionamento Identificador

             Atributo

             Atributo Identificador

z            Atributo Multivalorado


    Fucapi
...
                                          Atributo Composto



                                          Atributo Derivado


                                        Participação total de E2 em R
E1       R                   E2
                                        Ex: Agência e Conta Corrente


     1                 N              Cardinalidade 1:N para E1:E2 em R
E1       R                  E2


                 (min,max)       E2     Constraint (min,max) de E em R
E1       R


             Fucapi
código                descrição



                                                                                                                                 GENERO
                   nome
          código           endereço
                                                                                                                                 1,1
salário


4,N       FUNCIONARIO 1,N
                                                                                                                                 classifica

                     1,1
                                                                             código      nome                         código
                                                                                                 principal
                                                                                                                                                      nome
                                                                                                                                       0,N
      supervisor
                                                                                           2,N                           1,N
                                                                                  ATOR                       possui               FILME                   qtde fitas

                                                                                                                                        1,1
                     código      descrição                                                                                                            preço


                    1,1
                             STATUS                                                                                               possui
                             CLIENTE
                                                         dt prev ret    valor pago
                                                   dt aluguel                *   multa
                                                                                                                                        1,N           condição
        possui                                                                                                           1,N
                                                                   aluguel                                                         FITA
                                                                                                                                                      código

                                                 dt retorno
                                      1,N                  valor
                    0,N                                   previsto
                              CLIENTE



                    código     nome         endereço
                                              Fucapi
   ENTIDADE
     Qualquer coisa para a qual desejamos guardar informação
     Conjunto de objetos individuais chamados instâncias

     Uma instância deve ter uma identidade distinta de todas as
      outras




                   Fucapi
   INDEPENDENTES (FORTES)
      ▪ entidade que existe por si só
      ▪ NOTAÇÃO : retângulo
   RESTRIÇÕES
       Não pode existir duas entidades no mesmo model
   DICA:

     Geralmente tem mais de um atributo
       O nome = substantivo




                  Fucapi
DEPENDENTES(FRACAS)
      ▪ Entidades que dependem de outras para sua existência
        (dependência por existência)
      ▪ Entidades que dependem de outras para sua identificação
        (dependência por identificação)
      ▪ NOTAÇÃO: Retângulo duplo


   RESTRIÇÕES
     Só existe enquanto a entidade forte existir



                  Fucapi
Entidade
                                                                              Dependente
                        Nome
               IdFunc            Endereço
                                                                            Nome
     Salário

                                  1                                 N
                 Funcionário
                                            Tem                         Dependente




                                                IdDepto      Nome
                          P-20



                                            1
                  Trabalho                        Departamento



  Entidade
Independente



                             Fucapi
   Atributo- serve para qualificar a entidade

       Simples
       Multivalorado
       Determinante ou Identificador
       Composto
       Derivado ou Calculado




                  Fucapi
   Simples
     só pode assumir um único valor elementar
     Exemplo: Nome, Idade, Data de Nascimento

   Notação


                                    Rua
                Nome        Idade
                                                Num

                                                      CEP
         Fone

                   PESSOAS                Endereço




                   Fucapi
   REGRAS
     Começar o nome do atributo com uma inicial maiúscula e estar no
      singular
     Distinção entre conjunto de entidades e atributo.
      ▪ Exemplo: AUTOR para livro de uma biblioteca
      ▪ AUTOR para uma editora
     Se um conjunto de entidades tem um único atributo, provavelmente
      aquele conjunto é atributo de um outro conjunto de entidades.
     Cada atributo deve ocorrer uma única vez em apenas um conjunto de
      entidades.
     Desconfiar da modelagem de um conjunto de entidades que tem um
      só atributo. Provavelmente, ele é um atributo de outro conjunto.




                   Fucapi
   Multivalorado
     só pode assumir mais de uma valor
     Exemplo: Fones

   Notação
                                          Rua
                           Nome                        Num
                                  Idade

              Fones                                          CEP




                            PESSOAS             Endereço




                  Fucapi
   Determinante
     Identifica unicamente uma entidade da outra
     Lembra o conceito de Chave

   Notação
                                             Rua         Num
                              Nome   Idade
                      Fones
                                                               CEP


           Código              PESSOAS             Endereço




                    Fucapi
   Determinante
     Identifica unicamente uma entidade da outra
     Lembra o conceito de Chave

   Notação

                  Fones                    Rua       Num
                           Nome    Idade
                                                            CEP
           CPF
                               PESSOAS           Endereço
       IdPessoa




                      Fucapi
   Composto
     Pode ser dividido em sub atributos
     Exemplo: Endereço

   Notação
                            Nome   Idade
                                           Rua   Num
                    Fones
                                                        CEP
               Código
                             PESSOAS
                                             Endereço




                  Fucapi
   Derivado ou Calculado
     Seu valor é gerado a partir do valor de outro atributo
     Exemplo: Data de Nascimento e Idade

   Notação

                                  DataNasc   Nome
                          Idade                     Sexo

                             *
                                     PACIENTES




                 Fucapi
   RELACIONAMENTO
     É uma ligação entre duas ou mais entidades
     É representado por um losango       xx




   RESTRIÇÕES
      ▪ Não se pode repetir nomes de relacionamentos
      ▪ O relacionamento deve ligar, no mínimo, duas
        entidades


                 Fucapi
   DEPENDENTES (FORTES)
     o conceito de entidade dependente e independente é
      reforçado pelo tipo de relacionamento
     quando se quer que uma entidade se torne dependente,
      cria-se um relacionamento identificador

   INDEPENDENTES (FRACOS)
      ▪ Conecta entidades fortes e fracas




                 Fucapi
Entidade                                                                                                   Entidade
Independente                                                                                                Dependente
                                                          Identificador
                           Nome
                  Código           Endereço
                                                                                                     Nome
        Salário                                                                         Código

                                     1                                                      N
           1        Funcionário               É de                            possui
                                                               Tem                               Dependente

                            N        N
                                         ÉC
                                          om
                                              po
                                               sto




           Supervisor
                                                   de




                                                                                   Código        Nome


                                                                     Trabalha no    1
                                                        Trabalho                          Departamento
         Não Identificador
                                                                                            Papel do
                                                                                         Relacionamento
                                Fucapi
CARDINALIDADE DO RELACIONAMENTO



  • É a propriedade do relacionamento que define exatamente
  com quantas instâncias uma entidade de um conjunto pode
  se relacionar com outras entidades de outro conjunto;
  • PODE SER:
     • um para um
     • um para muitos; e
     • muitos para muitos


                Fucapi
CARDINALIDADE 1:1
                Médicos             Especialidades
                             1:1

                  M1                      E1

                  M2                      E2

                  M3                      E3
                   .                       .
                   .                       .
                   .                       .
                  Mn                      En




                 1                        1
      MÉDICOS             possuem              ESPECIALIDADES




                 Fucapi
CARDINALIDADE 1:N

                Médicos             Especialidades
                           1:N
                                          E1
                   M1
                                          E2
                   M2

                   M3                     E3
                    .
                    .
                                          E4
                    .
                                           .
                   Mn
                                           .
                                           .
                                          En



                 N                             1
      MÉDICOS             possuem                    ESPECIALIDADES




                Fucapi
CARDINALIDADE 1:N
            Médicos                    Pacientes
                            N:N
                                               P1
              M1


                                               P2
              M2


                                               P3
              M3

                                               P4
              M4                                .
               .                                .
               .                                .
               .                               Pn
              Mn

                   N                     N
        MÉDICOS            consultas                PACIENTES



                   (0,1)               (1,N)
        MÉDICOS            possuem             ESPECIALIDADES


             Fucapi
PARTICIPAÇÃO DO RELACIONAMENTO



   • É a propriedade do relacionamento que define a
   obrigatoriedade ou não de uma entidade participar (se
   relacionar) de um relacionamento.
   •Pode ser:
      • total (obrigatória) ou
      • parcial (opcional)




                  Fucapi
   Situação em que uma entidade se relaciona com outra do mesmo conjunto

                                                Nome
                                       Código          Endereço
                             Salário

                                   1                    N
                                         Funcionário


                  Supervisionado                            Supervisor



                                          Supervisão




                    Fucapi
É dado pelo total de entidades envolvidas no relacionamento
• Binário, ternário, etc.

                N                        N
    MÉDICOS              consultas               PACIENTES




                    N                        N
       VENDEDORES            vendas              PRODUTOS




                                N

                            CLIENTES


               Fucapi
• É definido pela regra de negócio
             N                          N
VENDEDORES            vendas                PRODUTOS

      N                                       N




                 N              N
  vendem             CLIENTES                compram



                                                  N               N
                                    VENDEDORES          vendas        PRODUTOS




                                                           N

                                                       CLIENTES




                       Fucapi
AGREGAÇÃO


                  N                     N
   MÉDICOS              consultas             PACIENTES




• Supondo que um médico faz consultas a pacientes.




             Fucapi
AGREGAÇÃO


                           N                       N
      MÉDICOS                      consultas           PACIENTES

            N                                            N




                               N               N
       solicita                    EXAMES                 faz




• Supondo também que nessas consultas o médico pode
fazer solicitações de exames.
• Vários binários = inconsistência

                  Fucapi
AGREGAÇÃO


                    N               N
       MÉDICOS          consultas       PACIENTES




                          N

                        EXAMES




• O ternário obriga que em toda consulta o médico
solicite um exame.



           Fucapi
AGREGAÇÃO

                      N               N
         MÉDICOS          consultas       PACIENTES



                            N


                           solicita




                            N

                          EXAMES



• O MER não permite relacionamento entre relacionamento



             Fucapi
AGREGAÇÃO



• O melhor modo para representar a situação anterior é
usando a agregação.
• Na agregação não existe obrigatoriedade na entrevista
para encaminhar um candidato a um cargo




               Fucapi
AGREGAÇÃO

• A agregação é a abstração que transforma um
relacionamento em uma entidade;
• Evita inconsistências
• Só pode ser em relacionamentos de cardinalidade N:N
• Não possui atributos




              Fucapi
AGREGAÇÃO

              N                       N
MÉDICOS               consultas               PACIENTES


          N


                                                   N                  N
   solicitações                   MÉDICOS                 consultas       PACIENTES

                                          N


          N

    EXAMES                        solicitações




                                          N

                                   EXAMES




                  Fucapi
A Clínica Salva Vidas, atua na área de saúde disponibilizando à sua clientela serviços
médicos de consultas e realização de exames.
           Para melhor atender seus clientes, a clínica deseja informatizar seus serviços de
forma a gerar controle sobre os agendamentos e realização de consultas, solicitação e
realização de exames. Para isso, é necessário cadastrar os dados sobre os pacientes, exames,
médicos, especialidades dos médicos e funcionários, entre outros.
           Sobre os médicos é necessário que o sistema armazene o CRM, nome, endereço,
fones (residencial e celular) e as especialidades em que atua (oftalmologista, ortopedista,
etc). Cada especialidade também pode ter mais de um médico atuando.
           Sobre os pacientes deve-se armazenar o nome, endereço, fones (residencial,
celular e contato). Para se consultar o paciente pode agendar a data e hora da consulta e o
nome do médico. Durante uma consulta o médico captura e repassa ao sistema os sintomas
do paciente e o diagnóstico e ao final desta, ele pode fazer a solicitação de um exame, para
que o paciente faça. É necessário que o sistema mantenha o controle sobre qual médico
solicitou e qual realizou o exame (já que o médico que realiza não é o mesmo que solicita).
Além disso, o paciente pode fazer o exame em outras clínicas. Nesses casos, para a clínica
não interessa em qual clínica foi feito o exame, bastando apenas a informação se foi feito ou
não na mesma. Sobre a realização do exame deve-se guardar a data da realização e o
resultado. Um outro ponto importante, é que o paciente pode ter uma consulta de retorno e
tal fato também deve ser controlado pelo sistema.
           Com base nas informações descritas faça a modelagem de dados para o sistema.
Se necessário complemente ou incremente a descrição.

                         Fucapi
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO


• É a forma de agrupar um conjunto de entidades que
compartilham características comuns.
                                                                         IdTitulação           Descrição
                  IdPessoa     Nome      Endereço



                                                                                 TITULAÇÕES
                             PESSOAS




            CPF                                 CGC


  DtaNasc                                             NomeFantasia

              PESSOAS                  PESSOAS
               FÍSICAS                 JURÍDICAS
                                                                     ESPECIALISTA             MESTRE




                                       Fucapi
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO


• É a forma de agrupar um conjunto de entidades que
compartilham características comuns.
                                                                         IdTitulação           Descrição
                 IdPessoa     Nome      Diagnóstico




                            PESSOAS                                              TITULAÇÕES




           CPF                                  CGC


 DtaNasc                                              NomeFantasia

             PESSOAS                  PESSOAS
              FÍSICAS                 JURÍDICAS
                                                                     ESPECIALISTA             MESTRE




                                     Fucapi
HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO


• É a forma de agrupar um conjunto de entidades que compartilham
características comuns. Restrições:
d: mutuamente exclusivo - quando uma instância da entidade
generalização só pode estar em uma entidade de especialização
 o: sobrepostos - quando uma instância da entidade generalização pode
estar em duas ou mais entidade de especialização
 total: cada entidade da generalização deve pertencer a pelo menos uma
entidade de especialização
 parcial: cada entidade da generalização pode ou não pertencer a uma
entidade de especialização


                    Fucapi
METODOLOGIA PARA PROJETO DE BANCO DE DADOS



   • Requerimentos e análise
   • Projeto conceitual do banco de dados
   • Escolha de um SGBD
   • Mapeamento do modelo de dados
   • Projeto físico do banco de dados
   • Implementação e configuração do banco de dados


               Fucapi
Uma empresa de TV à cabo necessita informatizar alguns dos seus serviços
de forma a atender as seguintes necessidades: O sistema deverá controlar o
cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da
programação (filmes, horários, etc) e do pagamento de mensalidades.
Cada pacote possui um preço e o cliente pode escolher uma combinação
dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar.
O valor de sua mensalidade corresponde ao valor total dos pacotes e seu
vencimento será todos os meses no dia em que comprou o primeiro pacote.
O cliente poderá também escolher a quantidade de tv's para instalação do
cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade.
Cada pacote possui um conjunto de canais exclusivos. Um canal é
identificado por um número e seu nome (33- HBO2, por exemplo). A
programação é composta de todos os filmes que serão exibidos, além de
seus horários e datas de exibição. Vale ressaltar que, um filme pode ser
exibido em mais de um horário e em várias datas diferentes.



                    Fucapi
Uma empresa de TV à cabo necessita informatizar alguns dos seus serviços
de forma a atender as seguintes necessidades: O sistema deverá controlar o
cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da
programação (filmes, horários, etc) e do pagamento de mensalidades.
Cada pacote possui um preço e o cliente pode escolher uma combinação
dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar.
O valor de sua mensalidade corresponde ao valor total dos pacotes e seu
vencimento será todos os meses no dia em que comprou o primeiro pacote.
O cliente poderá também escolher a quantidade de tv's para instalação do
cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade.
Cada pacote possui um conjunto de canais exclusivos. Um canal é
identificado por um número e seu nome (33- HBO2, por exemplo). A
programação é composta de todos os filmes que serão exibidos, além de
seus horários e datas de exibição. Vale ressaltar que, um filme pode ser
exibido em mais de um horário e em várias datas diferentes.



                    Fucapi
Uma loja de CDs deseja informatizar suas transações de venda e de aluguel de títulos, mantendo cadastros atualizados de
clientes, balconistas, títulos, dos distribuidores que os fornecem e dos gêneros musicais em que estes se classificam.
 Entre o cliente e o balconista, as vendas e locações de títulos de CD devem ser armazenadas na base de dados juntamente
com a data em que houve a transação (data de venda e data de locação, respectivamente). Somente para a locação, o
sistema deverá também armazenar a data prevista para a devolução do titulo alugado (data de devolução). É de interesse
da loja, saber, através das informações armazenadas na base de dados, que balconista vendeu ou alugou determinado titulo
para qual cliente.
Eventualmente, um cliente também pode solicitar a encomenda de um CD que não esteja disponível na
loja. As encomendas feitas desta forma são pedidas diretamente para o balconista, mas para a loja somente
é interessante saber qual cliente encomendou determinado titulo e em que data (data da encomenda). Note
que um cliente pode encomendar vários títulos e um título pode ser encomendado por vários clientes.
Normalmente, o processo de encomenda é seguido por uma transação de venda (mas nunca de locação),
caso o(s) pedido(s) do cliente seja(m) atendido(s).
Cada título de CD é classificado somente num gênero musical (pelo menos, aquele gênero que predomina)
dentre os vários que a base de dados mantêm como disponíveis na loja. Além disso, cada título de CD é
fornecido por apenas uma dentre as várias distribuidoras com a qual a loja obedece a contratos de revenda.
Para cada distribuidora é imprescindível, além de outras informações, o nome do vendedor intermediário e
dos telefones para contato.
Um título pode estar disponível somente para venda ou somente para locação. E não se esqueça que,
somente quando da disponibilidade de um CD ser para venda, o seu preço unitário, a quantidade de
unidades vendidas no ato da transação e a sua quantidade, remanescente no estoque, são informações
importantíssimas, além do que, no caso de um título disponível exclusivamente para locação, a sua venda
não é permitida e vice-versa.

                                   Fucapi

Contenu connexe

Tendances

XML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoXML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoGPrimola
 
Modelagem relacional e normalização de dados
Modelagem relacional e normalização de dadosModelagem relacional e normalização de dados
Modelagem relacional e normalização de dadosjulianaveregue
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)Armando Daniel
 
Semântica: dêixis e anáfora
Semântica: dêixis e anáforaSemântica: dêixis e anáfora
Semântica: dêixis e anáforavinivs
 
Introdução ao estudo do verbo
Introdução ao estudo do verboIntrodução ao estudo do verbo
Introdução ao estudo do verboma.no.el.ne.ves
 
Fonética e fonologia
Fonética e fonologiaFonética e fonologia
Fonética e fonologiaDiego Prezia
 
Clodoaldo Pacheco - Constituição hidrogenóide
Clodoaldo Pacheco - Constituição hidrogenóideClodoaldo Pacheco - Constituição hidrogenóide
Clodoaldo Pacheco - Constituição hidrogenóideclodoaldosite
 
Vozes verbais (voz ativa, voz passiva e voz reflexiva)
Vozes verbais (voz ativa, voz passiva e voz reflexiva)Vozes verbais (voz ativa, voz passiva e voz reflexiva)
Vozes verbais (voz ativa, voz passiva e voz reflexiva)Geane Ribeiro
 

Tendances (17)

XML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoXML e Banco de Dados XML Nativo
XML e Banco de Dados XML Nativo
 
Modelagem relacional e normalização de dados
Modelagem relacional e normalização de dadosModelagem relacional e normalização de dados
Modelagem relacional e normalização de dados
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)
 
Semântica: dêixis e anáfora
Semântica: dêixis e anáforaSemântica: dêixis e anáfora
Semântica: dêixis e anáfora
 
Introdução ao estudo do verbo
Introdução ao estudo do verboIntrodução ao estudo do verbo
Introdução ao estudo do verbo
 
Introdução a HTML5
Introdução a HTML5Introdução a HTML5
Introdução a HTML5
 
Fonética e fonologia
Fonética e fonologiaFonética e fonologia
Fonética e fonologia
 
Fonologia
FonologiaFonologia
Fonologia
 
Pronomes relativos
Pronomes relativosPronomes relativos
Pronomes relativos
 
Apostila-RM-Vitae.pdf
Apostila-RM-Vitae.pdfApostila-RM-Vitae.pdf
Apostila-RM-Vitae.pdf
 
Chap05 c
Chap05 cChap05 c
Chap05 c
 
O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?O que é um Banco de Dados Relacional?
O que é um Banco de Dados Relacional?
 
Clodoaldo Pacheco - Constituição hidrogenóide
Clodoaldo Pacheco - Constituição hidrogenóideClodoaldo Pacheco - Constituição hidrogenóide
Clodoaldo Pacheco - Constituição hidrogenóide
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
Vozes verbais (voz ativa, voz passiva e voz reflexiva)
Vozes verbais (voz ativa, voz passiva e voz reflexiva)Vozes verbais (voz ativa, voz passiva e voz reflexiva)
Vozes verbais (voz ativa, voz passiva e voz reflexiva)
 
Alphabet
AlphabetAlphabet
Alphabet
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 

En vedette

Modelagem
ModelagemModelagem
Modelagemprsimon
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Vitor Leal Diniz
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Ricardo Terra
 
Análise e Modelagem de Software
Análise e Modelagem de SoftwareAnálise e Modelagem de Software
Análise e Modelagem de SoftwareMarcelo Yamaguti
 
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)Gustavo Zimmermann
 
Modelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoModelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoHelder Lopes
 
DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosCláudio Amaral
 
Diagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDiagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDjonathas Cardoso
 
Modelo Conceitual
Modelo ConceitualModelo Conceitual
Modelo Conceitualkottrim
 

En vedette (16)

Modelagem
ModelagemModelagem
Modelagem
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Exercícios de relacionamento 2012
Exercícios de relacionamento 2012Exercícios de relacionamento 2012
Exercícios de relacionamento 2012
 
Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)Apostila Modelo ER (Entidade Relacionamento)
Apostila Modelo ER (Entidade Relacionamento)
 
Banco de Dados Relacional Estendido
Banco de Dados Relacional EstendidoBanco de Dados Relacional Estendido
Banco de Dados Relacional Estendido
 
Banco de Dados Relacional Estendido
Banco de Dados Relacional EstendidoBanco de Dados Relacional Estendido
Banco de Dados Relacional Estendido
 
Análise e Modelagem de Software
Análise e Modelagem de SoftwareAnálise e Modelagem de Software
Análise e Modelagem de Software
 
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
Banco de Dados II: Conversão do Modelo Conceitual para o Modelo Lógico (aula 6)
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Modelagem de Sistemas de Informação
Modelagem de Sistemas de InformaçãoModelagem de Sistemas de Informação
Modelagem de Sistemas de Informação
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e Relacionamentos
 
Diagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados IDiagrama Entidade Relacionamento - Bancos de Dados I
Diagrama Entidade Relacionamento - Bancos de Dados I
 
Aula 9 banco de dados
Aula 9   banco de dadosAula 9   banco de dados
Aula 9 banco de dados
 
Modelo Conceitual
Modelo ConceitualModelo Conceitual
Modelo Conceitual
 
Apostila modelagem de banco de dados
Apostila modelagem de banco de dadosApostila modelagem de banco de dados
Apostila modelagem de banco de dados
 

Similaire à Introdução a banco de dados à modelagem e

bd_aula02-IPMY.pdf
bd_aula02-IPMY.pdfbd_aula02-IPMY.pdf
bd_aula02-IPMY.pdfssuser69006f
 
Bdm aula 5 - construindo modelos er e mapeamento er-relacional
Bdm   aula 5 - construindo modelos er e mapeamento er-relacionalBdm   aula 5 - construindo modelos er e mapeamento er-relacional
Bdm aula 5 - construindo modelos er e mapeamento er-relacionalTicianne Darin
 
02 2 - modelagem er
02   2 - modelagem er02   2 - modelagem er
02 2 - modelagem erElton Costa
 

Similaire à Introdução a banco de dados à modelagem e (6)

bd_aula02-IPMY.pdf
bd_aula02-IPMY.pdfbd_aula02-IPMY.pdf
bd_aula02-IPMY.pdf
 
Aula7 diagrama classes
Aula7 diagrama classesAula7 diagrama classes
Aula7 diagrama classes
 
Bdm aula 5 - construindo modelos er e mapeamento er-relacional
Bdm   aula 5 - construindo modelos er e mapeamento er-relacionalBdm   aula 5 - construindo modelos er e mapeamento er-relacional
Bdm aula 5 - construindo modelos er e mapeamento er-relacional
 
Bd aula3
Bd aula3Bd aula3
Bd aula3
 
02 2 - modelagem er
02   2 - modelagem er02   2 - modelagem er
02 2 - modelagem er
 
Aula projetologico
Aula projetologicoAula projetologico
Aula projetologico
 

Introdução a banco de dados à modelagem e

  • 1. BANCO DE DADOS Rilmar Gomes
  • 2. Modelagem de dados de sistemas típicos através do Modelo Entidade Relacionamento.  Conceitos e projeto lógico do Modelo Relacional  Práticas de Modelagem e Projeto
  • 3.  Fundamentals of Database Systems Elmasri, R; Navathe, S Benjamin Cummings, 1994  Sistemas de banco de Dados Korth, H. F.; Silberschatz, A; Sudarshan, S Makkron Books, 1999  Introdução a Sistemas de Bancos de Dados Date, C. J. , Editora Campus, 2000
  • 4. “É uma coleção de dados inter-relacionados, representando informações sobre um domínio específico (conceito geral)  Representa aspectos do mundo real. Mudanças no mundo real são refletidas no BD  É uma coleção lógica e coerente de dados com relacionamentos intrínsecos;  É projetado, construído, e mantido para uma proposta específica. É direcionado a um grupo de usuários/aplicação  Pode ter qualquer tamanho/complexidade
  • 5. Mundo Real Solução Modelo é a representação abstrata e simplificada de uma determinada realidade. É um conjunto de conceitos para descrever os dados, de restrições e relacionamento entre esses dados.
  • 6. É um conjunto de registros dispostos em estrutura regular que possibilita a reorganização dos mesmos e produção de informação. Um banco de dados normalmente agrupa registros utilizáveis para um mesmo fim. Um banco de dados é usualmente mantido e acessado por meio de um software conhecido como Sistema Gerenciador de Banco de Dados (SGBD). Normalmente um SGBD adota um modelo de dados, de forma pura, reduzida ou estendida. Muitas vezes o termo banco de dados é usado, de forma errônea, como sinônimo de SGDB.
  • 7. Os sistemas de gestão de banco de dados possuem características especiais para o armazenamento, classificação, gestão da integridade e recuperação dos dados. Com a evolução de padrões de conectividade entre as tabelas de um banco de dados e programas desenvolvidos em linguagens como Java, Delphi, Visual Basic, C++ etc. Como hoje em dia a maioria das linguagens de programação fazem ligações a bancos de dados, a apresentação destes tem ficado cada vez mais a critério dos meios de programação, fazendo com que os bancos de dados deixem de restringir-se às pesquisas básicas, dando lugar ao compartilhamento, em tempo real, de informações, mecanismos de busca inteligentes e permissividade de acesso hierarquizada.
  • 8.  Sistema Gerenciador de Bancos de Dados (SGBD): Software construıdo para facilitar as atividades de definição, construção e manipulação de bancos de dados; Consistem em uma coleção de dados inter-relacionados e de um conjunto de programas para acessá-los Sistema de Bancos de Dados: Banco de Dados + Software que o manipula
  • 9. Prover um ambiente que seja conveniente e eficiente para recuperar e armazenar informações de Bancos de Dados. Eliminar ou Reduzir Redundância e inconsistência de dados Dificuldade no acesso aos dados Isolamento dos dados Anomalias de acesso concorrente Problemas de segurança Abstração de dados Simplifica a interação do usuário com o Sistema
  • 11. 1.Controle de Redundancia; 2. Compartilhamento de Dados; 3. Controle de Acesso aos Dados; 4. Multiplas Interfaces; 5. Representação de associacoes complexas; 6. Garantia de restrições de Integridade; 7. Recuperação de falhas
  • 12. Modelo de Entidade do Modelo do cliente Modelo do sistema na mente do cliente Representação Tabular do modelo Server de entidade Tabelas no disco
  • 13. Mundo Real Modelo Entidade Relacionamento Nível Conceitual Modelo Relacional-Objeto Relacional nível lógico nível físico
  • 14. Proporciona uma visão lógica de alto nível dos dados  É uma descrição abstrata de uma porção do mundo real  Todos os dados são visualizados como fatos específicos sobre entidades, relacionamentos e atributos  Através do MER, podemos ter uma fotografia do sistema  As entidades, relacionamentos e atributos descrevem as regras de negócio da empresa
  • 15. Definição: modelo baseado na percepção do mundo real que consiste em um conjunto de objetos básicos, chamados entidades, e nos relacionamentos entre esses objetos.  Objetivo: facilitar o projeto de banco de dados, possibilitando especificar a estrutura lógica geral. Fucapi
  • 16. Atributo supervisor DataIni Relacionamento gerenciar 1 N 1 1 número N 1 número endereço FUNCIONÁRIO trabalhar DEPARTAMENTO nome nome N 1 1 salário localização participar controlar possuir horas N número N N PROJETO nome nome DataNiver DEPENDENTE parentesco Entidade Fucapi
  • 17. Entidade Entidade Fraca Relacionamento Relacionamento Identificador Atributo Atributo Identificador z Atributo Multivalorado Fucapi
  • 18. ... Atributo Composto Atributo Derivado Participação total de E2 em R E1 R E2 Ex: Agência e Conta Corrente 1 N Cardinalidade 1:N para E1:E2 em R E1 R E2 (min,max) E2 Constraint (min,max) de E em R E1 R Fucapi
  • 19. código descrição GENERO nome código endereço 1,1 salário 4,N FUNCIONARIO 1,N classifica 1,1 código nome código principal nome 0,N supervisor 2,N 1,N ATOR possui FILME qtde fitas 1,1 código descrição preço 1,1 STATUS possui CLIENTE dt prev ret valor pago dt aluguel * multa 1,N condição possui 1,N aluguel FITA código dt retorno 1,N valor 0,N previsto CLIENTE código nome endereço Fucapi
  • 20. ENTIDADE  Qualquer coisa para a qual desejamos guardar informação  Conjunto de objetos individuais chamados instâncias  Uma instância deve ter uma identidade distinta de todas as outras Fucapi
  • 21. INDEPENDENTES (FORTES) ▪ entidade que existe por si só ▪ NOTAÇÃO : retângulo  RESTRIÇÕES  Não pode existir duas entidades no mesmo model  DICA:  Geralmente tem mais de um atributo  O nome = substantivo Fucapi
  • 22. DEPENDENTES(FRACAS) ▪ Entidades que dependem de outras para sua existência (dependência por existência) ▪ Entidades que dependem de outras para sua identificação (dependência por identificação) ▪ NOTAÇÃO: Retângulo duplo  RESTRIÇÕES  Só existe enquanto a entidade forte existir Fucapi
  • 23. Entidade Dependente Nome IdFunc Endereço Nome Salário 1 N Funcionário Tem Dependente IdDepto Nome P-20 1 Trabalho Departamento Entidade Independente Fucapi
  • 24. Atributo- serve para qualificar a entidade  Simples  Multivalorado  Determinante ou Identificador  Composto  Derivado ou Calculado Fucapi
  • 25. Simples  só pode assumir um único valor elementar  Exemplo: Nome, Idade, Data de Nascimento  Notação Rua Nome Idade Num CEP Fone PESSOAS Endereço Fucapi
  • 26. REGRAS  Começar o nome do atributo com uma inicial maiúscula e estar no singular  Distinção entre conjunto de entidades e atributo. ▪ Exemplo: AUTOR para livro de uma biblioteca ▪ AUTOR para uma editora  Se um conjunto de entidades tem um único atributo, provavelmente aquele conjunto é atributo de um outro conjunto de entidades.  Cada atributo deve ocorrer uma única vez em apenas um conjunto de entidades.  Desconfiar da modelagem de um conjunto de entidades que tem um só atributo. Provavelmente, ele é um atributo de outro conjunto. Fucapi
  • 27. Multivalorado  só pode assumir mais de uma valor  Exemplo: Fones  Notação Rua Nome Num Idade Fones CEP PESSOAS Endereço Fucapi
  • 28. Determinante  Identifica unicamente uma entidade da outra  Lembra o conceito de Chave  Notação Rua Num Nome Idade Fones CEP Código PESSOAS Endereço Fucapi
  • 29. Determinante  Identifica unicamente uma entidade da outra  Lembra o conceito de Chave  Notação Fones Rua Num Nome Idade CEP CPF PESSOAS Endereço IdPessoa Fucapi
  • 30. Composto  Pode ser dividido em sub atributos  Exemplo: Endereço  Notação Nome Idade Rua Num Fones CEP Código PESSOAS Endereço Fucapi
  • 31. Derivado ou Calculado  Seu valor é gerado a partir do valor de outro atributo  Exemplo: Data de Nascimento e Idade  Notação DataNasc Nome Idade Sexo * PACIENTES Fucapi
  • 32. RELACIONAMENTO  É uma ligação entre duas ou mais entidades  É representado por um losango xx  RESTRIÇÕES ▪ Não se pode repetir nomes de relacionamentos ▪ O relacionamento deve ligar, no mínimo, duas entidades Fucapi
  • 33. DEPENDENTES (FORTES)  o conceito de entidade dependente e independente é reforçado pelo tipo de relacionamento  quando se quer que uma entidade se torne dependente, cria-se um relacionamento identificador  INDEPENDENTES (FRACOS) ▪ Conecta entidades fortes e fracas Fucapi
  • 34. Entidade Entidade Independente Dependente Identificador Nome Código Endereço Nome Salário Código 1 N 1 Funcionário É de possui Tem Dependente N N ÉC om po sto Supervisor de Código Nome Trabalha no 1 Trabalho Departamento Não Identificador Papel do Relacionamento Fucapi
  • 35. CARDINALIDADE DO RELACIONAMENTO • É a propriedade do relacionamento que define exatamente com quantas instâncias uma entidade de um conjunto pode se relacionar com outras entidades de outro conjunto; • PODE SER: • um para um • um para muitos; e • muitos para muitos Fucapi
  • 36. CARDINALIDADE 1:1 Médicos Especialidades 1:1 M1 E1 M2 E2 M3 E3 . . . . . . Mn En 1 1 MÉDICOS possuem ESPECIALIDADES Fucapi
  • 37. CARDINALIDADE 1:N Médicos Especialidades 1:N E1 M1 E2 M2 M3 E3 . . E4 . . Mn . . En N 1 MÉDICOS possuem ESPECIALIDADES Fucapi
  • 38. CARDINALIDADE 1:N Médicos Pacientes N:N P1 M1 P2 M2 P3 M3 P4 M4 . . . . . . Pn Mn N N MÉDICOS consultas PACIENTES (0,1) (1,N) MÉDICOS possuem ESPECIALIDADES Fucapi
  • 39. PARTICIPAÇÃO DO RELACIONAMENTO • É a propriedade do relacionamento que define a obrigatoriedade ou não de uma entidade participar (se relacionar) de um relacionamento. •Pode ser: • total (obrigatória) ou • parcial (opcional) Fucapi
  • 40. Situação em que uma entidade se relaciona com outra do mesmo conjunto Nome Código Endereço Salário 1 N Funcionário Supervisionado Supervisor Supervisão Fucapi
  • 41. É dado pelo total de entidades envolvidas no relacionamento • Binário, ternário, etc. N N MÉDICOS consultas PACIENTES N N VENDEDORES vendas PRODUTOS N CLIENTES Fucapi
  • 42. • É definido pela regra de negócio N N VENDEDORES vendas PRODUTOS N N N N vendem CLIENTES compram N N VENDEDORES vendas PRODUTOS N CLIENTES Fucapi
  • 43. AGREGAÇÃO N N MÉDICOS consultas PACIENTES • Supondo que um médico faz consultas a pacientes. Fucapi
  • 44. AGREGAÇÃO N N MÉDICOS consultas PACIENTES N N N N solicita EXAMES faz • Supondo também que nessas consultas o médico pode fazer solicitações de exames. • Vários binários = inconsistência Fucapi
  • 45. AGREGAÇÃO N N MÉDICOS consultas PACIENTES N EXAMES • O ternário obriga que em toda consulta o médico solicite um exame. Fucapi
  • 46. AGREGAÇÃO N N MÉDICOS consultas PACIENTES N solicita N EXAMES • O MER não permite relacionamento entre relacionamento Fucapi
  • 47. AGREGAÇÃO • O melhor modo para representar a situação anterior é usando a agregação. • Na agregação não existe obrigatoriedade na entrevista para encaminhar um candidato a um cargo Fucapi
  • 48. AGREGAÇÃO • A agregação é a abstração que transforma um relacionamento em uma entidade; • Evita inconsistências • Só pode ser em relacionamentos de cardinalidade N:N • Não possui atributos Fucapi
  • 49. AGREGAÇÃO N N MÉDICOS consultas PACIENTES N N N solicitações MÉDICOS consultas PACIENTES N N EXAMES solicitações N EXAMES Fucapi
  • 50. A Clínica Salva Vidas, atua na área de saúde disponibilizando à sua clientela serviços médicos de consultas e realização de exames. Para melhor atender seus clientes, a clínica deseja informatizar seus serviços de forma a gerar controle sobre os agendamentos e realização de consultas, solicitação e realização de exames. Para isso, é necessário cadastrar os dados sobre os pacientes, exames, médicos, especialidades dos médicos e funcionários, entre outros. Sobre os médicos é necessário que o sistema armazene o CRM, nome, endereço, fones (residencial e celular) e as especialidades em que atua (oftalmologista, ortopedista, etc). Cada especialidade também pode ter mais de um médico atuando. Sobre os pacientes deve-se armazenar o nome, endereço, fones (residencial, celular e contato). Para se consultar o paciente pode agendar a data e hora da consulta e o nome do médico. Durante uma consulta o médico captura e repassa ao sistema os sintomas do paciente e o diagnóstico e ao final desta, ele pode fazer a solicitação de um exame, para que o paciente faça. É necessário que o sistema mantenha o controle sobre qual médico solicitou e qual realizou o exame (já que o médico que realiza não é o mesmo que solicita). Além disso, o paciente pode fazer o exame em outras clínicas. Nesses casos, para a clínica não interessa em qual clínica foi feito o exame, bastando apenas a informação se foi feito ou não na mesma. Sobre a realização do exame deve-se guardar a data da realização e o resultado. Um outro ponto importante, é que o paciente pode ter uma consulta de retorno e tal fato também deve ser controlado pelo sistema. Com base nas informações descritas faça a modelagem de dados para o sistema. Se necessário complemente ou incremente a descrição. Fucapi
  • 51. HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO • É a forma de agrupar um conjunto de entidades que compartilham características comuns. IdTitulação Descrição IdPessoa Nome Endereço TITULAÇÕES PESSOAS CPF CGC DtaNasc NomeFantasia PESSOAS PESSOAS FÍSICAS JURÍDICAS ESPECIALISTA MESTRE Fucapi
  • 52. HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO • É a forma de agrupar um conjunto de entidades que compartilham características comuns. IdTitulação Descrição IdPessoa Nome Diagnóstico PESSOAS TITULAÇÕES CPF CGC DtaNasc NomeFantasia PESSOAS PESSOAS FÍSICAS JURÍDICAS ESPECIALISTA MESTRE Fucapi
  • 53. HERANÇA: GENERALIZAÇÃO E ESPECIALIZAÇÃO • É a forma de agrupar um conjunto de entidades que compartilham características comuns. Restrições: d: mutuamente exclusivo - quando uma instância da entidade generalização só pode estar em uma entidade de especialização o: sobrepostos - quando uma instância da entidade generalização pode estar em duas ou mais entidade de especialização total: cada entidade da generalização deve pertencer a pelo menos uma entidade de especialização parcial: cada entidade da generalização pode ou não pertencer a uma entidade de especialização Fucapi
  • 54. METODOLOGIA PARA PROJETO DE BANCO DE DADOS • Requerimentos e análise • Projeto conceitual do banco de dados • Escolha de um SGBD • Mapeamento do modelo de dados • Projeto físico do banco de dados • Implementação e configuração do banco de dados Fucapi
  • 55. Uma empresa de TV à cabo necessita informatizar alguns dos seus serviços de forma a atender as seguintes necessidades: O sistema deverá controlar o cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da programação (filmes, horários, etc) e do pagamento de mensalidades. Cada pacote possui um preço e o cliente pode escolher uma combinação dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar. O valor de sua mensalidade corresponde ao valor total dos pacotes e seu vencimento será todos os meses no dia em que comprou o primeiro pacote. O cliente poderá também escolher a quantidade de tv's para instalação do cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade. Cada pacote possui um conjunto de canais exclusivos. Um canal é identificado por um número e seu nome (33- HBO2, por exemplo). A programação é composta de todos os filmes que serão exibidos, além de seus horários e datas de exibição. Vale ressaltar que, um filme pode ser exibido em mais de um horário e em várias datas diferentes. Fucapi
  • 56. Uma empresa de TV à cabo necessita informatizar alguns dos seus serviços de forma a atender as seguintes necessidades: O sistema deverá controlar o cadastro dos clientes, pacotes (família, adulto, infantil, cinema, etc), da programação (filmes, horários, etc) e do pagamento de mensalidades. Cada pacote possui um preço e o cliente pode escolher uma combinação dos mesmos, podendo mais tarde adicionar mais pacotes se assim o desejar. O valor de sua mensalidade corresponde ao valor total dos pacotes e seu vencimento será todos os meses no dia em que comprou o primeiro pacote. O cliente poderá também escolher a quantidade de tv's para instalação do cabo, e a cada 2 tv's ele paga um adicional em sua mensalidade. Cada pacote possui um conjunto de canais exclusivos. Um canal é identificado por um número e seu nome (33- HBO2, por exemplo). A programação é composta de todos os filmes que serão exibidos, além de seus horários e datas de exibição. Vale ressaltar que, um filme pode ser exibido em mais de um horário e em várias datas diferentes. Fucapi
  • 57. Uma loja de CDs deseja informatizar suas transações de venda e de aluguel de títulos, mantendo cadastros atualizados de clientes, balconistas, títulos, dos distribuidores que os fornecem e dos gêneros musicais em que estes se classificam. Entre o cliente e o balconista, as vendas e locações de títulos de CD devem ser armazenadas na base de dados juntamente com a data em que houve a transação (data de venda e data de locação, respectivamente). Somente para a locação, o sistema deverá também armazenar a data prevista para a devolução do titulo alugado (data de devolução). É de interesse da loja, saber, através das informações armazenadas na base de dados, que balconista vendeu ou alugou determinado titulo para qual cliente. Eventualmente, um cliente também pode solicitar a encomenda de um CD que não esteja disponível na loja. As encomendas feitas desta forma são pedidas diretamente para o balconista, mas para a loja somente é interessante saber qual cliente encomendou determinado titulo e em que data (data da encomenda). Note que um cliente pode encomendar vários títulos e um título pode ser encomendado por vários clientes. Normalmente, o processo de encomenda é seguido por uma transação de venda (mas nunca de locação), caso o(s) pedido(s) do cliente seja(m) atendido(s). Cada título de CD é classificado somente num gênero musical (pelo menos, aquele gênero que predomina) dentre os vários que a base de dados mantêm como disponíveis na loja. Além disso, cada título de CD é fornecido por apenas uma dentre as várias distribuidoras com a qual a loja obedece a contratos de revenda. Para cada distribuidora é imprescindível, além de outras informações, o nome do vendedor intermediário e dos telefones para contato. Um título pode estar disponível somente para venda ou somente para locação. E não se esqueça que, somente quando da disponibilidade de um CD ser para venda, o seu preço unitário, a quantidade de unidades vendidas no ato da transação e a sua quantidade, remanescente no estoque, são informações importantíssimas, além do que, no caso de um título disponível exclusivamente para locação, a sua venda não é permitida e vice-versa. Fucapi