Buscar

Slides de Aula I (2)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 58 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 58 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 58 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Profa. Msc. Sandra Bozolan
UNIDADE I
Banco de Dados
Um banco de dados é uma estante de coleção de dados que, tipicamente, descreve as 
atividades de uma ou mais organizações relacionadas. Por exemplo, um banco de dados de 
uma universidade poderia conter informações sobre:
 Entidades como: alunos, professores, cursos e turmas;
 Relacionamentos entre as entidades, como a matrícula dos alunos nos cursos, os cursos 
ministrados pelos professores e o uso de salas por cursos.
Banco de dados
Fonte: https://portal.educacao.go.gov.br/ 
Exemplo de entidades:
Alunos e professores
 Elmasri (2011) dá uma definição: “[...] um banco de dados é uma coleção de dados 
relacionados. Dados são traduzidos em fatos conhecidos que podem ser registrados e 
possuem significado implícito. Por exemplo, considere os nomes, números de telefone e 
endereços das pessoas que você conhece. Essa coleção de dados relacionados, com um 
significado implícito, é um banco de dados”.
Banco de dados – SGBD
Fonte: 
https://roxpartner.com/consultoria
-de-banco-de-dados-rox-partner/
Um banco de dados, normalmente, é mais restrito e tem funcionalidades específicas quando 
no âmbito de gerenciamento; entre a funcionalidade temos as propriedades implícitas a seguir:
 Representa algum aspecto do mundo real, às vezes chamado de minimundo ou de 
universo de dados. Que podem ser representados pelas mudanças no minimundo em forma 
de dados;
 Representa uma coleção lógica, pois os dados possuem 
um significado inerente. Existe uma variedade aleatória 
desses dados, que pode ser, corretamente, chamada de 
banco de dados;
 Projetado, construído e populado com os dados para uma 
finalidade específica. 
Funcionalidades
 Para se projetar um banco de dados precisamos analisar o ciclo de vida típico de um sistema 
de informação e como os bancos serão encaixados nele. O ciclo de vida do sistema de 
informação tem sido chamado de ciclo de vida macro, enquanto o ciclo de vida do sistema 
de banco de dados tem sido chamado de ciclo de vida micro. O ciclo de vida macro,
normalmente, inclui as seguintes fases:
 Estudo de viabilidade: realiza-se uma análise das aplicações em potencial, identifica-se, 
ainda, a economia da coleta e a disseminação de informações;
 Levantamento e análise de requisitos: detalhar os requisitos 
do sistema definindo a interação com os usuários em 
potencial, identificando os seus problemas e as suas 
necessidades em particular;
 Projeto: será dividido em dois aspectos: o projeto do sistema 
de banco de dados e o projeto dos sistemas de aplicação 
(programas), os quais utilizarão o processamento de banco de 
dados, por meio de recuperações e atualizações;
Ciclos de vida
 Implementação: o sistema de informação é implementado, o banco de dados é carregado, e 
as transações deste são implementadas e testadas;
 Validação e teste de aceitação: nesta etapa, a aceitação do sistema deve atender aos 
requisitos dos usuários e aos critérios de desempenho é validada;
 Implantação, operação e manutenção: antes que o novo sistema seja implantado, a 
validação precedida pela conversão de usuários do sistema mais antigo deve ser 
acompanhada, bem como pelo treinamento do usuário. A operacionalização começa 
quando todas as funções do sistema estiverem em funcionamento e forem validadas.
Ciclos de vida
O ciclo de vida do sistema de aplicação de banco de dados são o seu projeto e a sua 
implementação. O problema do projeto de banco de dados pode ser declarado da 
seguinte forma:
 As partes lógica e física devem ser projetadas em um ou mais bancos de dados para 
colecionar todas as informações necessárias dos usuários da instituição, para um conjunto 
definido de sistemas. Os objetivos do projeto de banco de dados são múltiplos: satisfazer 
os requisitos de conteúdo de informação dos usuários e as aplicações especificadas.
Ciclos de vida
Fases de projeto e implementação para grandes bancos de dados
Fase 1:
Fase 2:
Levantamento
e análise
de requisitos
Projeto conceitual
do banco
de dados
Escolha
do SGBD
Fase 3:
Mapeamento do
modelo de dados
(projeto lógico)
Fase 4:
Fase 5: Projeto
físico
Conteúdo, estrutura e
restrições de dados
Aplicações de
banco de dados
Requisitos
de dados
Requisitos
de processamento
Projeto do
esquema conceitual
(independente do SGBD)
Projeto de
transação e aplicação
(independente do SGBD)
Projeto do esquema
lógico e de visão
(independente do SGBD)
Frequências,
restrições de
desempenho
Projeto do 
esquema interno
(independente do SGBD)
Fase 6:
Implementação
e ajuste
do sistema
Implementação
de transação
e aplicação
Instruções DDL
Instruções SDL
Os dados são utilizados por pessoas diferentes, em diferentes departamentos, e por diversos 
motivos. Portanto, os agentes de integração de gerenciamento de dados devem tratar o 
conceito de dados compartilhados. Os agentes de integração de sistemas se enquadram nos 
seguintes itens:
 A interpretação e a apresentação de dados em formato úteis, transformando os dados 
brutos em informação;
 A distribuição de dados e de informações para as pessoas certas, no momento certo;
 A preservação dos dados e o monitoramento de sua utilização por períodos adequados; 
 O controle da duplicação e da utilização de dados, tanto interno como externo.
A importância dos SGBD nas organizações
 O termo “NoSQL”, “não relacional”, “não sql”, foi primeiramente utilizado, em 1998, 
(entretanto o termo “banco de dados” não relacionais existe desde 1960) como o nome de 
um banco de dados não relacional de código aberto e pode ser explicado como: um termo 
genérico que representa os bancos de dados não relacionais. 
 Existem várias famílias de produtos NoSQL e cada família compartilha de um mesmo modelo 
de armazenamento. O mais tradicional, em vez de possuir uma tabela com um número fixo 
de colunas tipadas, trabalha com o conceito de chave-valor, ou KVS (acrônimo para Key-
Value Store). Isso significa que, em vez de incluir um conjunto de atributos, a operação 
insere, apenas, uma chave e um valor, e nada mais.
Uma breve introdução sobre os bancos de dados relacionais e NoSQL
 Eles não usam SQL como uma linguagem de consulta, no entanto, alguns deles usam as 
linguagens de consulta semelhantes a SQL, como CQL, no Cassandra.
 Em geral, esses são projetos de código aberto.
 Muitos dos bancos de dados NoSQL nasceram da necessidade de executar os serviços em 
cluster, o que influenciou o seu modelo de dados, como a sua abordagem à consistência. No 
entanto, nem em todos os bancos de dados o NoSQL é orientado para executar em um 
cluster.
 Os bancos de dados NoSQL não possuem um esquema fixo.
 De todos os recursos dos bancos de dados NoSQL, destaca a 
inexistência de um esquema. Quando guardar os dados em um 
banco de dados relacional, a primeira coisa a fazer é definir um 
esquema que indica quais tabelas existem, quais colunas de 
cada tabela e que tipo de dados cada coluna possui.
Características dos bancos NoSQL
Diferentes pessoas e departamentos utilizam dados de diferentes formas, e departamentos por 
motivos muitos variados. Portanto, os agentes de integração de gerenciamento de dados 
devem tratar o conceito de dados compartilhados. Os agentes de integração de sistemas se 
enquadram nos seguintes itens:
I. A interpretação e a apresentação de dados em formato binário, transformando os dados 
estruturado em entidades;
II. A distribuição de dados e de informações para qualquer pessoa;
III. Dados devem ser preservados e monitorados de sua utilização, por períodos adequados;
IV. O controle da duplicação e da utilização de dados, tanto interno como externo.
Interatividade
a) As alternativas I e II se enquadram nos agentes de integração dos sistemas.
b) Todas se enquadram nos agentes de integração dos sistemas.
c) As alternativas III e IV se enquadram nos agentes de integração dos sistemas.
d) As alternativasII e IV se enquadram nos agentes de integração dos sistemas.
e) As alternativas I e IV se enquadram nos agentes de integração dos sistemas.
Interatividade
a) As alternativas I e II se enquadram nos agentes de integração dos sistemas.
b) Todas se enquadram nos agentes de integração dos sistemas.
c) As alternativas III e IV se enquadram nos agentes de integração dos sistemas.
d) As alternativas II e IV se enquadram nos agentes de integração dos sistemas.
e) As alternativas I e IV se enquadram nos agentes de integração dos sistemas.
Resposta
 Quando falamos de modelagem, precisamos ter em mente que a escolha de um modelo de 
dados, muitas vezes, foi escolhido para resolver um problema específico. Alguns 
mecanismos de software executam esta tarefa com todos os elementos necessários.
 Os arquivos capturados pelo sistema são transformados em item de dados, que é a menor 
unidade de dados identificável, que possui um significado sabido – por exemplo: caso 
necessite descrever os dados de uma pessoa, podemos registrar dados como: nome, nº de 
CPF etc.
 Segundo Ramakrishnan & Gehrke (2011), um objeto mais 
complexo é uma coleção de dados armazenados e inter-
relacionados, que atende às necessidades de vários usuários 
dentro de uma ou mais organizações.
Modelagem de dados
Dada a complexidade das informações o projeto de banco de dados deve seguir três níveis de 
abstração, conforme a seguir:
Análise de requisitos (realidade)
Nível de abstração: minimundo
Produtos
Vendedores
Clientes
Pedidos
Análise de requisitos (modelo conceitual)
Nível de abstração: modelo conceitual
código
descrição
quantidade
preço
Produto tem Categoria
(1,n) (1,1)
código
nome
Análise de requisitos (modelo lógico)
Nível de abstração: modelo lógico
 Modelos físicos ou, popularmente, conhecidos como Script do BD em SQL. Representa o 
modelo do banco de dados e é enriquecido com detalhes que influenciam no desempenho 
do banco de dados, mas não interferem na sua funcionalidade. Script do banco de dados em 
SQL representa os detalhes dos dados internamente ao BD 
(campo, tipo/domínio, restrições).
Modelo físico
 Contém os detalhes de armazenamento interno de informações.
Detalhes que:
 Não têm influência sobre a programação de aplicações no SGBD;
 Mas influenciam a performance das aplicações.
 Usados por profissionais que fazem sintonia (ajuste de desempenho – “tuning”) de banco 
de dados.
Modelo físico
 O projeto de banco de dados é, apenas, uma parte e está dividido em seis etapas durante 
a concepção de um projeto de banco de dados. O modelo ER é mais relevante nas três 
primeiras etapas.
Segundo Ramakrishnan & Gehrke (2011), essas etapas podem visualizadas a seguir:
Projeto de banco de dados e diagramas ER
 Fase inicial de um projeto de banco de dados, que permite compreender quais dados devem 
ser armazenados, que informações os aplicativos devem manipular, quais as operações mais 
importantes e quais estão sujeitas a requisitos de desempenho. Reuniões informais como os 
usuários da aplicação, devem ser realizadas visando definir quais alterações serão 
trabalhadas, a análise de toda a documentação disponível sobre os aplicativos existentes 
que se deseja substituir ou complementar com o banco de dados, e assim por diante. 
Muitas metodologias são propostas com o foco de organizar e apresentar as informações 
coletadas, quase sempre se usa as ferramentas automatizadas.
Análise de requisitos
Fonte: 
https://supremapropaganda.com.br/agencia-
de-marketing-digital-publicidade-e-
propaganda-em-itajai-sc/
 Nesta etapa, as coletas de dados da fase de análise de requisitos serão utilizadas para 
fornecer uma descrição de dados a serem armazenados, levando em consideração as 
informações mais importantes. O modelo Entidade Relacionamento (ER) disponibiliza 
diversos modelos de dados semânticos ou de alto nível, utilizados no projeto de banco de 
dados. Tem como objetivo criar uma descrição simples dos dados que melhor corresponda 
à visão ou à ideia, que os usuários e desenvolvedores têm em relação aos dados (e às 
pessoas e aos processos a serem representados nos dados).
Projeto Conceitual de Banco de Dados
Fonte: 
https://onsafety.com.br/entenda-
como-funciona-gestao-a-vista/
 A partir da conversão do projeto conceitual de banco de dados, um SGBD será escolhido
para implementar as informações de um esquema ER para um esquema de banco de dados
relacional.
As três etapas restantes do projeto de banco de dados:
 A partir do esquema lógico, novas funções devem receber atenção;
 Desempenho e protótipos dos esquemas físico;
 Aspectos de segurança, que assegurem que os usuários sejam capazes de acessar os 
dados de que eles precisam, mas não os dados que desejamos ocultar deles.
Projeto Lógico de Banco de Dados
 Nesta etapa, o projeto de banco de dados consiste em analisar a coleção de relações em 
nosso esquema de banco de dados relacional, para identificar os problemas em potencial e 
refiná-los. Contrastando às etapas de análise de requisitos e o projeto conceitual, os quais 
são essenciais ao esquema de refinamento.
Refinamento do esquema
 Nesta etapa, todas as alterações devem, ainda, suportar e refinar maior projeto de banco de 
dados, para assegurar que este satisfaça os critérios de desempenho desejados. Criação de 
índices em algumas tabelas e agrupamento de tabelas serão inicializados nesta fase, e pode 
envolver um reprojeto substancial de partes do esquema de banco de dados obtido das 
etapas anteriores de projeto.
Projeto físico de banco de dados
 A partir desta etapa novas ferramentas e metodologias podem ser implementadas ao SGBD, 
e deve-se identificar as entidades (por exemplo: usuários, grupos de usuários, 
departamentos) e os processos envolvidos no aplicativo. Descrever o papel de cada entidade 
em cada processo que é refletido em alguma tarefa de aplicativo, como parte de um fluxo 
dessa tarefa, identificando as partes do banco de dados que devem ser acessíveis e as 
partes que não devem ser acessíveis, criando as regras de segurança.
Projeto de aplicativos e segurança
Fonte: 
https://www.pinterest.com/pin/8568
80266584216530/
Existe um momento em que os dados são utilizados por pessoas diferentes, em diferentes 
departamentos, e por diversos motivos. Portanto, os agentes de integração de gerenciamento 
de dados devem tratar o conceito de dados compartilhados. Os agentes de integração de 
sistemas se enquadram nos seguintes itens:
I. A interpretação e a apresentação de dados em formato úteis, transformando os dados 
brutos em informação;
II. A distribuição de dados e de informações, para as pessoas certas no momento certo;
III.A preservação dos dados e o monitoramento de sua utilização por períodos adequados;
IV.O controle da duplicação e da utilização de dados, tanto interno como externo.
a) Todas as alternativas estão corretas.
b) Apenas as alternativas I, II e IV estão corretas.
c) Apenas as alternativas I, II e III estão corretas.
d) Apenas as alternativas II e IV estão corretas.
e) Apenas as alternativas I e IV estão corretas.
Interatividade
Existe um momento em que os dados são utilizados por pessoas diferentes, em diferentes 
departamentos, e por diversos motivos. Portanto, os agentes de integração de gerenciamento 
de dados devem tratar o conceito de dados compartilhados. Os agentes de integração de 
sistemas se enquadram nos seguintes itens:
I. A interpretação e a apresentação de dados em formato úteis, transformando os dados 
brutos em informação;
II. A distribuição de dados e de informações, para as pessoas certas no momento certo;
III.A preservação dos dados e o monitoramento de sua utilização por períodos adequados;
IV.O controle da duplicação e da utilização de dados, tanto interno como externo.
a) Todas as alternativas estão corretas.
b) Apenas as alternativas I, II e IV estão corretas.
c) Apenas as alternativas I, II e IIIestão corretas.
d) Apenas as alternativas II e IV estão corretas.
e) Apenas as alternativas I e IV estão corretas.
Resposta
 Uma entidade é um objeto do mundo real, que pode ser descrita por qualquer pessoa, seja 
ela concreta ou abstrata. Exemplos incluem: um carro popular, a concessionária, o gerente 
da loja, as filiais que vendem o mesmo modelo do veículo. Normalmente, é útil identificar 
uma coleção de entidades semelhantes.
 Uma coleção é chamada de conjunto de entidades. Um conjunto de entidade não precisa ser 
disjunto: o conjunto de funcionários da concessionária e o conjunto de funcionários da 
manutenção de veículos, ambos podem conter o funcionário João José da Silva (que pode 
trabalhar em ambos os departamentos). 
Entidades
Fonte: 
https://dribbble.com/shots/5958438-
Agora-Place-Animated-Illustration
Fonte: https://dribbble.com/shots/2216022-
Team-Collaboration-Illustration
 Um atributo é um valor de dado assumido pelos objetos de uma classe. 
 Exemplo de atributos da entidade/Classe Aluno: nome, idade e peso são exemplos de 
atributos. Cor, peso e modelo são possíveis atributos de entidade/Classe Carro. Cada 
atributo tem um valor para cada instância de objeto.
Atributos
 Na notação de Chen original, os atributos são representados por elipses e conectados ao 
retângulo da entidade por uma reta.
 Cada elipse contém o nome dos atributos que representa.
 Na notação pé de galinha, os atributos são escritos na caixa de atributos, abaixo do 
retângulo da entidade. 
Atributos
Fonte: BOB, 2011, p. 116.
ALU_INICIAL
ALU_NOME
ALU_SOBRENOME
ALU_EMAIL
ALU_TEL
ALUNO
 Atributo necessário: aquele que deve apresentar valor.
 Atributo opcional: aquele que não exige um valor.
 Domínio: conjunto de valores possíveis de determinado atributo.
 Os atributos podem compartilhar um domínio.
 Identificadores: um ou mais atributos que identifiquem, de modo exclusivo, cada 
instância de entidade.
 Identificadores compostos: composto de um único atributo.
Atributos
 Identificador composto pode ser subdividido.
 Atributo simples não pode ser subdividido.
 Atributo pode ter, apenas, um valor.
 Atributos multivalorados possuem muitos valores. 
 Exemplo: telefone; uma pessoa poderá ter mais de um número de telefone.
Atributos
 Associação entre duas ou mais entidades. 
 Participantes: as entidades que participam de um relacionamento.
 Os relacionamentos entre as entidades sempre operam em ambas as direções.
 Um relacionamento pode ser classificado como 1:M.
 A classificação torna-se difícil de estabelecer quando, apenas,
um lado do relacionamento é conhecido.
Relacionamentos 
 O termo “conectividade” é utilizado para descrever a classificação dos relacionamentos.
 A cardinalidade expressa o número mínimo e máximo de ocorrências de entidades
associadas a uma única ocorrência da entidade relacionada.
 São estabelecidas por afirmações muito
concisas, conhecidas como regras de negócio.
Conectividade e Cardinalidade
Fonte: BOB, 2011.
Conectividade
ensina
Cardinalidades
Relacionamento fraco (não identificado):
 Ocorre quando a PK da entidade relacionada não contém um componente da PK da
entidade pai.
Relacionamento forte (de identificação):
 Ocorre quando a PK da entidade relacionada contém um componente de PK da entidade pai.
Força de relacionamento
Entidade fraca é aquela que atende a duas condições:
 É dependente de existência;
 A entidade possui uma chave primária que é parcial ou, totalmente, derivada da entidade
pai do relacionamento;
 O projetista do banco de dados, normalmente, determina se uma entidade pode ser descrita
como fraca, com base nas regras de negócio.
Entidade fraca
Entidade fraca em um DER
 O conjunto de entidades fracas Dependentes e o seu relacionamento com funcionários são 
ilustrados a seguir. A participação total de Dependentes em Apólice é indicada pela ligação 
entre eles com uma linha grossa. 
 A seta de Dependentes a Apólice indica que cada entidade de Dependentes aparece em, no 
máximo, um (exatamente um, na realidade, em razão à restrição de participação) 
relacionamento Apólice. 
 Para ressaltar o fato de que Dependentes é uma entidade fraca e a Apólice é seu 
relacionamento identificador. O atributo nome_dep é uma chave parcial de Dependentes.
Entidade fraca – Dependente
Funcionário
Apólice Dependentes
custo
nome_dep
idade
(0,n)
Entidade fraca e opcional em um DER
TURMA opcional para DISCIPLINA
DISCIPLINA e TURMA em relacionamento obrigatório
FIGURA
4.13
FIGURA
4.14
DISCIPLINA TURMA
gera
(1,1) (0, N)
DISCIPLINA TURMA
gera
(1,1) (0, N)
Simbologias
Notação Pé
de galinha
Cardinalidade Comentários
(0,N)
Zero ou muitos. O lado 
“muitos” é opcional.
(1,N)
Um ou muitos. O lado 
“muitos” é obrigatório.
(1,1)
Um e somente um. O lado 
“1” é obrigatório.
(0,1)
Zero ou um. O lado “1” é 
opcional.
 Indica o número de entidades ou participantes associados a um relacionamento.
 Relacionamento unário: ocorre quando uma associação é mantida em uma única entidade.
 Relacionamento binário: se dá quando duas entidades estão associadas.
 Relacionamento ternário:
quando três entidades 
estão associadas.
Três tipos de graus de relacionamento
Relacionamento unário Relacionamento binário
gerência
ensina
FUNCIONÁRIO PROFESSOR TURMA
MÉDICO RECEITA PACIENTE
recebeescreve
Relacionamento ternário
aparece no
Um relacionamento deve ser identificado, unicamente, pelas entidades participantes, sem a 
referência aos atributos descritivos, deve ser identificado, apenas, como a relação entre as 
entidades. Assim, para um determinado par funcionário-departamento. Baseado no diagrama, 
assinale a seguir quem pode ser considerado como relacionamento para esta relação:
a) Funcionário.
b) Funcionário_Departamento.
c) Trabalha_em.
d) Funcionário_Trabalha_em.
e) Departamento_Trabalha_em.
Interatividade
Trabalha_em
DepartamentoFuncionário (0, n)
desde
Um relacionamento deve ser identificado, unicamente, pelas entidades participantes, sem a 
referência aos atributos descritivos, deve ser identificado, apenas, como a relação entre as 
entidades. Assim, para um determinado par funcionário-departamento. Baseado no diagrama, 
assinale a seguir quem pode ser considerado como relacionamento para esta relação:
a) Funcionário.
b) Funcionário_Departamento.
c) Trabalha_em.
d) Funcionário_Trabalha_em.
e) Departamento_Trabalha_em.
Resposta
Trabalha_em
DepartamentoFuncionário (0, n)
desde
 Classificar as entidades de um conjunto de entidades em subclasses é uma atividade muito 
comum. Por exemplo, poderíamos considerar um conjunto de entidades 
Funcionário_Horistas e um conjunto de entidades Funcionário_Contratados para distinguir a 
forma como os funcionários são pagos. Poderíamos ter atributos horas_trabalhadas e 
salário_hora definidos para Funcionário_Horistas e um atributo id-contrato definido para 
Funcionário_Contratados.
Hierarquias de classes
Fonte: RAMAKRISHNAN; GEHRKE, 2011. Funcionário
Funcionário_Horista
Funcionário_contratado
 A superclasse de Funcionários é dividida em duas classes especializadas. A especialização 
é o processo de identificar subconjuntos de um conjunto de entidades (a superclasse) que 
compartilham algumas características distinguíveis. Tipicamente, a superclasse é definida 
primeiro, as subclasses são definidas em seguida, e os atributos específicos da subclasse e 
os conjuntos de relacionamentos são adicionados depois.
 Funcionário_Horistas e Funcionário_Contratados são generalizados em Funcionários.
Hierarquias de classes – Especialização
Fonte: 
RAMAKRISHNAN; 
GEHRKE, 2011.
 Toda entidade deve possuir uma semântica em que um desses conjuntos seja, também, 
uma entidade de Funcionários e, como tal, deva possuir todos os atributos definidos 
para os Funcionários.
As subclasses podem ser identificadas em duas subclasses (por especialização ou 
generalização): Acrescentando a descrição dos atributos que façam sentido, apenas, às entidades em uma 
subclasse. Por exemplo, salário_hora não faz sentido para uma entidade 
Funcionário_Contratados, cujo pagamento é determinado por um contrato individual.
Hierarquias de classes
 Generalização consiste em identificar quais são as características comuns de uma coleção 
de conjuntos de entidades e criar um novo conjunto de entidades que contenha as entidades 
possuindo essas características comuns. É recorrente que as subclasses são definidas 
primeiro, a superclasse é definida em seguida e quaisquer conjuntos de relacionamentos, 
que envolvam a superclasse, são definidos depois.
Hierarquias de classes – Generalização
Funcionário
Salario_hora
Horas_trabalhada
As subclasses podem ser identificadas em duas subclasses 
(por especialização ou generalização):
1. Acrescentando a descrição dos atributos que façam sentido, apenas, às entidades em uma 
subclasse. Por exemplo, salário_hora não faz sentido para uma entidade 
Funcionário_Contratados, cujo pagamento é determinado por um contrato individual.
Hierarquias de classes – Especialização/Generalização
2. A identificação do conjunto de entidades que participam em algum relacionamento. Por 
exemplo, poderíamos definir o relacionamento Gerência de forma que os conjuntos de 
entidades participantes sejam Funcionário_Sêniores e Departamentos, para assegurar que, 
apenas, os funcionários sêniores possam ser gerentes. 
Hierarquias de classes – Especialização/Generalização
 Um outro exemplo, Barcos_Motorizados e Carros podem ter atributos descritivos diferentes, 
como a tonelagem e o número de portas, mas como as entidades de Veículos_Motorizados, 
eles devem ter licenciamento. A informação de licenciamento pode ser capturada por um 
relacionamento Licenciado_para entre Veículos_Motorizados e um conjunto de entidades 
chamado Proprietários.
Hierarquias de classes – Especialização/Generalização
Veículos_Motorizados
CarrosBarcos_Motorizados
 É um tipo especial de associação onde se tenta demonstrar que as informações de um 
objeto, precisam ser complementadas pelas informações de um objeto de outra classe. 
 Esse tipo de associação tenta demonstrar uma relação entre o todo ou a parte entre os 
objetos associados.
 O conjunto de relacionamentos Financia captura essa informação. Um departamento que 
financia um projeto pode designar os funcionários para monitorar o financiamento.
Agregação
 Intuitivamente, Monitora deve ser um conjunto de relacionamentos que associa um 
relacionamento Financia (em vez de uma entidade Projetos ou Departamentos) a uma 
entidade Funcionários. Entretanto, definimos os relacionamentos para associar duas 
ou mais entidades.
Agregação
Podemos definir uma entidade como um objeto do mundo real, que pode ser descrito por 
qualquer pessoa, seja ela concreta ou abstrata. Exemplos incluem: um carro popular, a 
concessionária, o gerente da loja, as filiais que vendem o mesmo modelo do veículo. 
Normalmente, é útil identificar uma coleção de entidades semelhantes. Existem outras 
definições. Assinale a seguir qual das alternativas não pode ser considerada como uma 
entidade em banco de dados:
a) Uma coleção de atributos.
b) Um conjunto de atributos.
c) Uma tabela do banco de dados.
d) Uma concessionária.
e) Um nome.
Interatividade
Podemos definir uma entidade como um objeto do mundo real, que pode ser descrito por 
qualquer pessoa, seja ela concreta ou abstrata. Exemplos incluem: um carro popular, a 
concessionária, o gerente da loja, as filiais que vendem o mesmo modelo do veículo. 
Normalmente, é útil identificar uma coleção de entidades semelhantes. Existem outras 
definições. Assinale a seguir qual das alternativas não pode ser considerada como uma 
entidade em banco de dados:
a) Uma coleção de atributos.
b) Um conjunto de atributos.
c) Uma tabela do banco de dados.
d) Uma concessionária.
e) Um nome.
Resposta
 ELMASRI, R.; NAVATHE, S. B. Sistemas de banco de dados: fundamentos e aplicações. 
4. ed. São Paulo: Pearson, 2011.
 RAMAKRISHNAN, R., GEHRKE, J. Sistemas de Gerenciamento de Banco de Dados. 
Porto Alegre: Bookman, 2011.
Referências
ATÉ A PRÓXIMA!

Continue navegando