Buscar

E-book 1 Estrutura e Modelagem de Dados

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 43 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 43 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 43 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

ESTRUTURA E 
MODELAGEM 
DE DADOS
E-book 1
 César Torres Fernandes 
Neste E-Book:
INTRODUÇÃO ����������������������������������������������4
BANCO DE DADOS: UMA VISÃO 
GERAL ������������������������������������������������������������ 5
EVOLUÇÃO HISTÓRICA �������������������������������������������5
DADO, INFORMAÇÃO, BANCO 
DE DADOS E SISTEMA DE 
GERENCIAMENTO DE BANCO DE 
DADOS ����������������������������������������������������������10
TERMOS COMUNS EM BANCO DE 
DADOS �����������������������������������������������������������11
TIPOS DE BANCO DE DADOS ���������������13
Arquiteturas de banco de dados �������������������������� 15
ABSTRAÇÃO DE DADOS: MODELOS 
CONCEITUAL, LÓGICO E FÍSICO ����������20
PROJETO DE BANCO DE DADOS �������� 22
MODELO ENTIDADE-
RELACIONAMENTO ���������������������������������24
ENTIDADE ��������������������������������������������������� 25
ATRIBUTOS �������������������������������������������������26
RELACIONAMENTOS �������������������������������28
2
DIAGRAMA ENTIDADE-
RELACIONAMENTO ��������������������������������� 35
CONSIDERAÇÕES FINAIS ����������������������39
SÍNTESE ������������������������������������������������������ 40
3
INTRODUÇÃO
Neste módulo, estudaremos a evolução históri-
ca dos bancos de dados e, em seguida, estudare-
mos a diferença entre dados, informação, banco 
de dados e sistemas de gerenciamento de banco 
de dados� Analisaremos a visão de três camadas: 
conceitual, lógica e física. Por fim, trataremos os 
sistemas de bancos de dados relacionais e o modelo 
Entidade-Relacionamento�
4
BANCO DE DADOS: UMA 
VISÃO GERAL
Neste tópico, abordamos a evolução histórica dos 
bancos de dados e o surgimento dos sistemas de 
gerenciamento de banco de dados� Vamos iniciar 
traçando um panorama da disciplina, ou seja, com 
sua evolução histórica�
EVOLUÇÃO HISTÓRICA
Com a evolução humana — isto é, o desenvolvimento 
da fala e escrita, bem como o surgimento das pri-
meiras sociedades primitivas —, surge a demanda 
de registrar fatos importantes sobre animais, cultivo, 
tempo e outros eventos do cotidiano� Nesse perío-
do, marcava-se tudo que era importante em ossos, 
pedaços de madeira, chifres, nós feitos em cordas 
ou escrevia-se em tábuas de argila/barro�
Esse ato de registrar os fatos acompanhou a evolu-
ção da sociedade e das tecnologias� A invenção de 
papiros, pergaminhos e papel possibilitou a capa-
cidade de armazenar mais dados, auxiliando gover-
nantes, comerciantes e diversos outros profissionais 
ao longo dos tempos�
Nesse sentido, a invenção de Johannes Gutenberg, 
por volta de 1430, gerou uma verdadeira revolu-
ção: estamos falando da imprensa� A partir de en-
5
tão, livros podiam ser produzidos e reproduzidos 
em quantidades muito maiores do que o processo 
manual existente, utilizando o papel como meio de 
armazenamento�
No final do século 19, Herman Hollerith (1860-1929) 
desenvolveu um sistema de codificação de dados 
que eram armazenados em uma fita de papel perfu-
rada e, posteriormente, eram lidos por uma máquina 
que processava os dados estatísticos� Seu sistema 
foi aperfeiçoado com a utilização de cartões perfu-
rados em vez da fita de papel perfurado; assim, em 
1889 Hollerith realizou a contagem do censo norte-
-americano, diminuindo em muito o tempo para se 
obter o resultado�
Apesar de todos esses avanços, aspectos como 
praticidade, rapidez na consulta, confiabilidade nos 
dados armazenados etc�, ainda não eram atendidos 
de forma plena, fato ocorrido somente com o surgi-
mento dos computadores�
Segundo Alves (2014), os primeiros programas de 
computador trabalhavam com arquivos sequenciais 
para o armazenamento de dados, em que a aplicação 
era responsável tanto pela definição quanto pelo 
gerenciamento dos dados, fazendo uso de recursos 
do sistema operacional para a leitura e gravação dos 
dados em discos ou fitas (Figura 1).
6
Aplicação 
Vendas
Aplicação 
Estoque
Arquivos dados
Estoque
Arquivos dados
Vendas
Sistema Operacional
Figura 1: Sistema de arquivos. Fonte: Adaptada de Alves (2014).
Esse tipo de sistema, apesar de melhorar a pratici-
dade e a rapidez no acesso aos dados, apresenta 
vários problemas, por exemplo, ausência de controle 
de acesso concorrente por múltiplos usuários, im-
possibilidade de execução de mais de um processo 
ao mesmo tempo sobre um mesmo arquivo de da-
dos, inconsistências, redundâncias, segurança dos 
dados e uma relação de dependência estrutural e 
de dados indesejada entre o arquivo de dados e as 
estruturas do arquivo codificadas na aplicação, tor-
nando o processo de manutenção de todo o sistema 
muito complexo�
7
Com isso, surge a necessidade de se criar um sis-
tema em que os dados fossem relacionados logi-
camente, bem como armazenados em um único 
repositório de dados, na tentativa de eliminar ou 
minimizar os problemas encontrados com o sistema 
de arquivos para armazenamento de dados� Dessa 
forma, surge o sistema de banco de dados (Figura 2):
Aplicação 
Estoque
Aplicação 
Vendas
Banco de 
Dados
Sistema de Banco de dados
Figura 2: Sistema de Banco de Dados. Fonte: Adaptada de Alves 
(2014).
O sistema de banco de dados surgiu como um con-
junto de componentes de software que auxilia na 
definição e regulação da coleta, do armazenamento, 
do gerenciamento e da utilização de dados (ROB; 
CORONEL, 2011). Os sistemas de banco de dados 
8
permitem, então, uma maior produtividade no desen-
volvimento e na manutenção tanto dos aplicativos 
quanto dos próprios bancos de dados, contribuindo 
para o aumento da qualidade, diminuição dos custos 
e melhores estimativas de prazos nos projetos de 
sistemas e softwares�
9
DADO, INFORMAÇÃO, 
BANCO DE DADOS 
E SISTEMA DE 
GERENCIAMENTO DE 
BANCO DE DADOS
Neste momento, mostra-se relevante formalizar-
mos alguns conceitos sobre dados, informação, 
banco de dados e, principalmente, o Sistema de 
Gerenciamento de Banco de Dados (SGBD).
Rob e Coronel (2011) afirmam que um dado repre-
senta um fato que ainda não foi processado para re-
velar o seu significado. Por exemplo: nome, endereço 
e telefone� A informação é o resultado do proces-
samento de dados, revelando assim seu significado 
dentro de um contexto com precisão, relevância e 
rapidez, permitindo ao usuário uma tomada de deci-
são mais adequada� Por exemplo: dados das peças 
em estoque, quando processados, possibilitam a 
obtenção de uma lista de peças em falta�
Um banco de dados, segundo Alves (2014), é uma 
estrutura formada por um conjunto lógico e orde-
nado de dados e metadados (dados sobre dados), 
fornecendo uma descrição das características dos 
dados e de relacionamentos� Um sistema de geren-
ciamento de banco de dados (SGBD) é composto de 
uma coleção de programas que permite a definição, 
construção e manipulação do banco de dados� A 
seguir, exploramos mais detalhadamente alguns 
pontos�
10
TERMOS COMUNS EM 
BANCO DE DADOS
Os bancos de dados têm um conjunto de termos 
técnicos (ALVES, 2014), do qual abordaremos os 
principais aqui:
 ● Campo (ou atributo): menor unidade de armaze-
namento de valores existente em uma tabela de um 
banco de dados; pode conter apenas um tipo de 
dado� Cada campo em uma tabela recebe um nome 
de identificação e seus atributos (a especificação 
do tipo de dado que será armazenado e o tamanho 
para armazenamento). 
 ● Registro (ou linha) também chamado de tuplas 
ou n-uplas: conjunto de campos de uma tabela que 
forma a unidade básica tanto para o armazenamento 
quanto para a recuperação de dados, identificando 
um único item de informação em uma tabela do 
banco de dados� Todos os registros de uma tabela 
de dados são do mesmo tipo, mas os campos que 
o constituem podem ser de diferentes tipos e tama-
nhos. Assim, a definição do formato dos registros é 
realizada durante o processo de estruturação das 
tabelas do banco de dados�
 ● Tabela de dados: conjunto ordenado de registros; 
cada tabela estrutura-se de modo a conter somente 
um tipo de informação� Assim, cada uma, dentro de 
umbanco de dados, deve ser identificada por um 
único nome�
11
 ● Índices: em um banco de dados, os índices permi-
tem que os registros possam ser encontrados com 
mais rapidez� Um índice pode ser simples, quando 
constituído por apenas um campo, ou composto, 
quando constituído por vários campos da tabela�
 ● Chave primária: atributo de uma tabela que per-
mite identificar de maneira única os registros, de-
terminando sua ordem física� O uso de uma chave 
primária evita a duplicidade de registros, além de 
melhorar a velocidade da pesquisa� Assim como 
os índices, uma chave primária pode ser simples ou 
composta� Para escolher a chave primária, devemos 
considerar dois critérios:
a) Se a chave for simples, devemos escolher um 
campo cujo tamanho não seja grande; se a chave 
for composta, devemos considerar o menor número 
possível de campos�
b) O valor armazenado não pode ser modificado. 
Dessa forma, os campos que formam as chaves 
primárias têm seu preenchimento obrigatório�
 ● Chaves candidatas: campos pertencentes à tabela 
de dados que podem ser utilizadas como chaves 
primárias�
 ● Chaves estrangeiras: chaves que permitem relacio-
nar registros de uma tabela com os de outra tabela 
de dados por meio da sua chave primária�
 ● Domínio: seus objetivos são definir os tipos de da-
dos e especificar os valores que podem ser aceitos 
pelos campos nas tabelas de dados�
12
TIPOS DE BANCO DE 
DADOS
Considerando alguns critérios, podemos classificar 
um banco de dados por número de usuários supor-
tados simultaneamente, localização física, modelo 
de dados adotado, grau de estruturação dos seus 
dados, entre outros. A partir da classificação por 
número de usuários, temos um banco de dados mo-
nousuário, quando apenas um usuário tem suporte 
por vez, ou um banco de dados multiusuário, quando 
vários usuários têm suporte ao mesmo tempo (ROB; 
CORONEL, 2011).
Em relação à classificação por localização, consi-
deramos o local onde o SGBD e o próprio banco de 
dados estão armazenados (ALVES, 2014). Quando 
um SGBD e o banco de dados estão localizados em 
um único local (também conhecido como servidor 
de banco de dados), temos um banco de dados cen-
tralizado. Quando o SGBD e o banco de dados estão 
distribuídos em diferentes locais e todos interligados 
em rede, temos um banco de dados distribuído�
Quanto à classificação pelo modelo de dados ado-
tado, isto é, no qual se baseia o SGBD, temos o se-
guinte: um modelo de dados é uma representação 
simples e normalmente gráfica de estruturas de 
dados mais complexas, facilitando a compreensão 
(ALVES, 2014). Na sequência, vamos aprender quais 
tipos de modelo existem�
13
No modelo de dados hierárquico, encontramos uma 
organização estrutural semelhante a uma árvore, for-
mada por tipos de registros e seus relacionamentos� 
O registro é uma coleção de valores que representam 
informações a despeito de uma entidade de um re-
lacionamento� Esses relacionamentos são do tipo 
pai-filho, sendo os registros que antecedem outros 
na hierarquia são denominados pai, já os registros 
que os sucedem são chamados filhos�
A princípio, o modelo de dados em rede é parecido 
com o modelo de dados hierárquico, com a diferença 
de que o em rede permite que um registro possa ter 
vários relacionamentos, pois elimina a hierarquia e 
dá acesso direto a determinado registro (nó da rede). 
Este modelo possui duas estruturas básicas: os re-
gistros, que contêm dados relacionados e agrupados 
em tipos de registros que armazenam os mesmos 
tipos de informações; e os conjuntos, que são a for-
ma de representação dos relacionamentos entre os 
diversos tipos de registros�
O modelo de dados relacional foi criado por Edgar 
Frank Codd em 1968 na IBM. Quando do desen-
volvimento deste modelo, Codd utilizou a teoria de 
conjuntos e a álgebra relacional, baseando-se na 
organização dos dados em tabelas (ou relações), 
formadas por linhas e colunas, permitindo a reali-
zação de operações entre essas tabelas�
Anos mais tarde, década de 1980, surge o modelo 
de dados orientado a objetos. Este modelo define 
um banco de dados por meio de objetos com suas 
14
propriedades e operações, atendendo à necessidade 
de armazenamento e processamento dos tipos de 
dados mais complexos, como os dados de sistemas 
de geoprocessamento e sistemas CAD/CAE/CAM, 
imagens de satélites etc�
No tocante ao grau de estruturação dos dados, 
temos o seguinte: os dados podem ser classifica-
dos em não estruturados, semiestruturados e es-
truturados (ROB; CORONEL, 2011). Os dados não 
estruturados são os que estão em estado original, 
no formato em que foram coletados, dificultando o 
processamento para a produção de informações� Os 
dados semiestruturados são aqueles que foram par-
cialmente processados� Os dados estruturados são 
provenientes do resultado da obtenção de dados não 
estruturados e de sua formatação, facilitando tanto 
seu armazenamento quanto seu processamento na 
geração de informações�
Arquiteturas de banco de dados
No decorrer do tempo, além dos vários modelos de 
banco de dados, também surgiram várias propostas 
de arquitetura com o intuito de auxiliar os projetos 
de sistemas de computador em camadas, conforme 
sua função ou prioridade� Nesse contexto, surgem 
alguns tipos de arquiteturas, analisadas a seguir�
A arquitetura centralizada concentrava nos main-
frames o processamento de funções do sistema, 
aplicações, programas de interface, entre outros 
15
programas e funcionalidades do SGBD. Os sistemas 
eram acessados pelos usuários via terminais de com-
putadores que apenas exibiam os resultados, sem 
processamento local, pois tudo era realizado nos 
mainframes, que, após processar o dado solicitado, 
enviava ao terminal as informações a serem exibidas 
e os controles (Figura 3):
Terminal Terminal Terminal
Mainframe Banco de 
Dados
Figura 3: Arquitetura centralizada: mainframe e terminais. Fonte: 
Elaboração própria.
Com o surgimento dos computadores pessoais (PC), 
a gradativa queda nos preços do hardware e a po-
pularização de novas tecnologias de comunicação 
de dados, os usuários foram substituindo paulatina-
mente os terminais de computadores (sem proces-
samento local) por computadores pessoais (com 
processamento local).
Tais mudanças resultaram no aparecimento da ar-
quitetura cliente-servidor de duas camadas, a qual 
possibilitou passar parte do processamento para o 
lado cliente (máquinas dos usuários), ou seja, pro-
gramas de interface e aplicação passaram a realizar 
seus processamentos localmente, mas sempre que 
16
precisam acessar o banco de dados, estabelecem 
uma conexão com o programa servidor que viabiliza 
o acesso aos dados via SGBD (Figura 4):
Computador Computador Computador
Servidor Banco de 
Dados
Figura 4: Arquitetura cliente-servidor em duas camadas. Fonte: 
Elaboração própria.
À medida que a internet apareceu e a World Wide 
Web se expandiu, novas necessidades vieram à tona, 
culminando no surgimento da arquitetura cliente-
-servidor de três camadas� Neste tipo de arquitetura, 
existe uma camada intermediária entre a máquina, 
o cliente e o servidor de banco de dados, chamada 
de servidor de aplicação (ou servidor Web), cujo ob-
jetivo é armazenar as regras de negócios, utilizadas 
para ter acesso aos dados no servidor de banco de 
dados (Figura 5).
Computador Computador Computador
Servidor
Aplicação 
ou Web
Servidor de 
Banco de 
Dados
Banco de 
Dados
Figura 5: Arquitetura cliente-servidor em três camadas. Fonte: 
Elaboração própria.
17
Na arquitetura distribuída, temos bancos de dados 
distribuídos através de uma rede de computadores, 
mas que estão logicamente inter-relacionados� O 
sistema de gerenciamento de banco de dados dis-
tribuído (SGBDD) tem o papel de gerenciar os ban-
cos de dados distribuídos, bem como o de tornar a 
distribuição e as transações transparentes para o 
usuário (Figura 6).
Computador
Servidor de 
Banco de 
Dados
Banco de 
Dados
Computador
Servidor de 
Banco de 
Dados
Banco deDados
Computador
Servidor de 
Banco de 
Dados
Banco de 
Dados
Figura 6: Arquitetura distribuída. Fonte: Elaboração própria.
Existem dois tipos de banco de dados distribuídos: 
os homogêneos, compostos por um único tipo de 
banco de dados; e os heterogêneos, compostos por 
mais de um tipo de banco de dados�
18
SAIBA MAIS
Saiba mais sobre o armazenamento de dados e 
sua evolução, assistindo a História do armazena-
mento de dados: trabalho de CAP, que se encontra 
disponível em: https://youtu.be/C87AKC4VQ3s� 
Acesso em: 14 nov. 2019.
19
https://youtu.be/C87AKC4VQ3s
ABSTRAÇÃO DE DADOS: 
MODELOS CONCEITUAL, 
LÓGICO E FÍSICO
Um modelo de banco de dados pode ser definido 
como um detalhamento, utilizando-se de descrições 
textuais, de gráficos ou diagramas, dos tipos de infor-
mações que devem ser armazenadas no banco de da-
dos que se deseja projetar� Isso permite a construção 
de um modelo de dados estruturado e consistente 
com níveis de abstração distintos, auxiliando o en-
tendimento dos usuários e dos diversos profissionais 
envolvidos no projeto�
Os níveis de abstração podem ser o modelo concei-
tual, o modelo lógico e o modelo físico�
O modelo conceitual descreve os dados e suas 
relações, que deverão ser armazenados no banco 
de dados, independentemente do SGBD. A aborda-
gem Entidade-Relacionamento é uma das técnicas 
utilizadas na construção de um modelo de dados 
conceitual, fazendo uso do diagrama Entidade-
Relacionamento, para representar as entidades (ob-
jetos do mundo real), seus atributos (características 
ou propriedades) e os relacionamentos (interações) 
entre entidades�
O modelo lógico possui um maior detalhamento da 
estrutura das tabelas (nome e definição das colunas) 
e seus respectivos relacionamentos, que compõem 
o banco de dados� Dessa forma, passa-se a ter uma 
20
dependência do tipo de SGBD a ser utilizado na im-
plementação, que vai depender de a abordagem ser 
relacional, hierárquica, de rede, orientada a objetos, 
entre outras� Nesse ponto, ainda não há referência a 
características particulares de cada atributo�
O modelo físico possui todo o detalhamento da es-
trutura física para a implementação do banco de 
dados por meio de um SGBD. A definição da estru-
tura do banco de dados é realizada por meio de uma 
linguagem declarativa, como a DDL (Linguagem de 
Definição de Dados) presente no SQL.
21
PROJETO DE BANCO DE 
DADOS
O processo de desenvolvimento de um banco de 
dados envolve um conjunto de fases: levantamento e 
análise das necessidades, projeto conceitual, projeto 
lógico e projeto físico, conforme ilustrado na Figura 7.
Visão Externa 1 Visão Externa n
Modelo conceitual
Modelo lógico
Modelo físico
Dependente do SGBD
Independente do SGBD
requisitosrequisitos
Banco de 
Dados
Figura 7: Projeto Top down de uma base de dados. Fonte: Adaptada 
de Guimarães (2003).
Partindo-se de uma parcela da realidade (minimun-
do), a qual se deseja informatizar, devemos realizar 
(ALVES, 2014):
a) Levantamento e análise das necessidades: por 
meio da utilização de diversas técnicas (entrevistas, 
22
reuniões, questionários etc.) somada à participação 
de cliente e usuários, procura-se entender, documen-
tar e especificar um conjunto de requisitos de dados 
e também de todos os requisitos funcionais, que são 
as operações que a aplicação deve executar sobre 
os dados�
b) Projeto conceitual: com base nos requisitos 
especificados na fase anterior, cria-se um modelo 
conceitual que contém uma descrição dos tipos de 
entidades, relacionamento e restrições� Esse tipo de 
modelo deve ter um alto nível de abstração, como o 
Modelo Entidade-Relacionamento (MER), cujo esque-
ma conceitual é denominado de Diagrama Entidade-
Relacionamento (DER).
c) Projeto lógico: com base no projeto conceitu-
al, nesta etapa é preciso descrever mais detalha-
damente as estruturas que são armazenadas, qual 
abordagem de banco de dados é a mais adequada 
(relacional, hierárquica, de rede...) e definir em qual 
SGBD se faz sua implementação.
d) Projeto físico: esta é a etapa em que se define 
toda a estrutura de armazenamento interno, bem 
como o método de acesso aos arquivos do banco 
de dados; além disso, nesta etapa são projetados os 
programas que posteriormente manipularão esses 
dados.
23
MODELO ENTIDADE-
RELACIONAMENTO
A modelagem conceitual tem por objetivo atingir uma 
descrição de alto nível, independentemente da sua 
implementação em computador, dos dados que serão 
armazenados no banco de dados. Em 1976, Peter 
Chen propôs uma forma gráfica e resumida de mo-
delagem conceitual, denominada Modelo Entidade-
Relacionamento, que, por meio de um conjunto de 
diagramas entidade-relacionamento (DER), descreve 
os dados e seus inter-relacionamentos�
Os conceitos principais da abordagem entidade-rela-
cionamento são entidade, relacionamento, atributo, 
generalização/especialização, entidade associati-
va e notação gráfica utilizada para representar os 
elementos�
24
ENTIDADE
Uma entidade representa um conjunto de objetos 
pertencentes à realidade a ser modelada, cujas 
características ou propriedades desejamos regis-
trar, podendo ter uma existência física ou abstrata 
(Figuras 8).
Figura 8. Entidades com existência física (à esquer-
da) e abstrata (à direita).
Cachorro Departamento
Carro Disciplina
Figura 8: Fonte: Elaboração própria.
25
ATRIBUTOS
Cada entidade possui um conjunto de características 
importantes, dentro do contexto, e que precisam ser 
registrados, os atributos. Todo atributo tem nome 
e valor específicos. Em um projeto, quando surge a 
necessidade de registrar os atributos de várias en-
tidades do mesmo tipo, criamos agrupamentos das 
entidades similares em um conjunto de entidades 
(CE), dando-lhe um nome significativo para identificá-
-lo, sendo que cada entidade em um CE possui a 
mesma lista de atributos, com os valores variando 
de uma entidade para outra�
Quando especificamos um CE, temos que levar em 
consideração o conceito de atributo determinante 
ou atributo chave� Trata-se de um dos atributos do 
próprio CE projetado para identificar de forma única 
qualquer entidade do CE� Dessa forma, um CE se ca-
racteriza no MER, dado o nome do CE, os nomes dos 
atributos do CE e o nome do atributo determinante 
(atributo sublinhado), utilizando-se uma forma textu-
al� Por exemplo, Pessoa(cpf, nome, data_nascimento, 
endereço, línguas)�
Podemos classificar os atributos de uma entidade 
da seguinte maneira:
 ● Atributo simples: armazena dado de um único 
tipo. Não se pode dividir (atômicos), como o atribu-
to data_nascimento�
 ● Atributo composto: pode ser subdivido em partes 
menores e ter tipos diferentes, como o atributo en-
26
dereço, que pode ser subdivido nos atributos tipo_lo-
gradouro, nome_logradouro, número, bairro e cep�
 ● Atributo monovalorado: admite somente um valor 
para o atributo, por exemplo o atributo nome, que 
admite o valor “João José da Silva”�
 ● Atributo multivalorado: admite vários valores para 
o atributo, como o atributo línguas, que admite os 
valores “português”, “espanhol” e “inglês”�
 ● Atributo derivado: pode conter valores derivados 
de outros atributos, como exemplo o atributo idade, 
que será calculado a partir do atributo data_nasci-
mento e a data atual�
 ● Atributo nulo: admite somente o valor nulo�
Observemos agora alguns exemplos desses atributos 
na Figura 9:
Pessoa
tipo_logradouro
nome_logradouro
númeroendereço
cpf
nome
línguas (1,n)
bairro
cep
Figura 9: Entidade Pessoa e seus atributos. Fonte: Elaboração própria.
27
RELACIONAMENTOS
Segundo Guimarães e Lages (2008), um relaciona-
mento entre dois conjuntos de entidades é uma lista 
de pares de entidades, na qual cada par representa 
uma associação entre uma entidade de um CE com 
outra entidade do outro CE, estabelecendo uma re-
lação de interdependência entre essas entidades�
Em um relacionamento entre duas entidades, o nú-
mero de ocorrências de uma entidade associado 
às ocorrências de outra entidade determinao grau 
do relacionamento ou a cardinalidade do relacio-
namento� Dessa forma, temos três possibilidades 
de relacionarmos os dados, ou seja, três graus de 
relacionamento:
Relacionamento 1 para 1 (ou 1:1): este tipo de rela-
cionamento acontece quando uma entidade de um 
conjunto de entidades só pode se associar a uma 
única entidade de outro conjunto de entidades e vice-
-versa (Figura 10):
Pessoa BicicletaPossui
(1,1)(1,1)
Figura 10: Relacionamento 1:1. Fonte: Elaboração própria.
28
 ● Relacionamento 1 para N (ou 1:N): este tipo de 
relacionamento acontece quando várias entidades 
de um conjunto de entidades só podem se associar 
a única entidade de outro conjunto de entidades� No 
sentido contrário, uma única entidade de um conjunto 
de entidades pode se associar a várias entidades do 
outro conjunto de entidades (Figura 11):
Departamento FuncionárioPossui
(1,n)(1,1)
sentido de leitura
sentido de leitura
Figura 11: Relacionamento 1:N. Fonte: Elaboração própria.
 ● Relacionamento N para N (ou N:N): este tipo de 
relacionamento ocorre quando uma entidade de um 
conjunto de entidades pode estar associada a várias 
outras entidades de outro conjunto de conjunto de 
entidades e vice-versa (Figura 12):
Estudante DisciplinaEstuda
(1,n)(1,n)
Figura 12: Relacionamento N:N. Fonte: Elaboração própria.
Os relacionamentos também podem ter atributos da 
seguinte forma (Figura13):
29
Funcionário Departamento
data
Gerência
(1,1)(1,1)
Figura 13: Relacionamento com atributo. Fonte: Elaboração própria.
Em alguns casos, temos a necessidade de fazer o 
relacionamento de um conjunto de entidades consigo 
mesmo, processo denominado autorrelacionamento 
(Figura 14).
Funcionário Supervisiona
supervisor
supervisionado
(1,1)
(1,n)
Figura 14: Autorrelacionamento. Fonte: Elaboração própria.
Os relacionamentos também podem ter restrições: 
razão de cardinalidade, restrição de participação e 
restrição estrutural�
A razão de cardinalidade é um tipo de restrição que 
determina quantas vezes uma entidade pode parti-
cipar de um relacionamento� A restrição de partici-
pação, por sua vez, estabelece a existência de uma 
entidade com a dependência de outra por meio do 
relacionamento entre elas, no caso de uma restrição 
de participação total, todas as entidades devem sa-
30
tisfazer a condição imposta no relacionamento e, no 
caso de uma restrição de participação parcial, ape-
nas parte das entidades participa do relacionamento� 
A restrição estrutural determina os valores mínimos 
e máximos de participações de uma entidade em um 
relacionamento�
Analisando os conjuntos de entidades e seus rela-
cionamentos, podemos encontrar casos em que a 
existência de um conjunto de entidades está condi-
cionada à existência de outro conjunto de entidades� 
Neste caso, um conjunto de entidades é denomina-
do conjunto de entidades fraco quando depende da 
existência de um conjunto de entidades forte� Um 
conjunto de entidades fraco não tem um atributo 
determinante e, em geral, utiliza o atributo determi-
nante do conjunto de entidades forte para gerar o 
seu atributo determinante (Figura 15).
Funcionário DependentePossui
(0,n)(1,1)
Figura 15: Entidade forte e entidade fraca. Fonte: Elaboração própria.
Outro conceito importante que podemos encontrar 
na abordagem entidade-relacionamento é o de gene-
ralização/especialização� Tal conceito nos permite 
atribuir propriedades particulares a um subconjunto 
das ocorrências (especializadas) de um conjunto 
de entidades (CE) genérico. Como complemento ao 
conceito de generalização/especialização, podemos 
pensar na ideia de herança, pois cada ocorrência do 
31
CE especializada além de suas próprias proprieda-
des (atributos, relacionamentos e generalizações/
especializações), também possui as propriedades da 
ocorrência do CE genérico correspondente, conforme 
mostrado na Figura 16.
Filme
Filme Estrangeiro Filme Nacional
Figura 16: Generalização/Especialização. Fonte: Elaboração própria.
Pode-se classificar o conceito de generalização/es-
pecialização em dois tipos: total ou parcial� Na gene-
ralização/especialização total, para cada ocorrência 
do CE genérico há sempre uma ocorrência em um 
CE especializada�
Na generalização/especialização parcial, nem toda 
ocorrência do CE genérico possui uma ocorrência 
correspondente em um CE especializada� Em relação 
ao número de níveis hierárquicos da generalização/
especialização, não há limites, pois um CE especia-
lizada em uma generalização/especialização pode 
ser um CE genérico em outra generalização/espe-
cialização, sendo possível, inclusive, que um mesmo 
32
CE seja especialização de diversos CEs genéricos, 
remetendo à ideia de herança múltipla, ilustrada na 
Figura 17.
Veículo
Veículo Terrestre Veículo Aquático
Veículo Anfíbio BarcoCaminhão
Figura 17: Generalização/Especialização. Fonte: Adaptada de Heuser 
(2008).
Podcast 1 
Na abordagem entidade-relacionamento, não se con-
templa a possibilidade de associar um CE ao seu 
relacionamento, nem mesmo associar dois relacio-
namentos entre si� No entanto, ao se construir ou 
modificar um diagrama entidade-relacionamento, é 
possível surgir condições nas quais seja desejável a 
associação de um CE a um relacionamento ou entre 
relacionamentos� Para que esse tipo de operação fos-
se permitido na abordagem entidade-relacionamento, 
33
https://famonline.instructure.com/files/407280/download?download_frd=1
desenvolveu-se o conceito de entidade associativa 
(Figura 18).
(1,n)
(0,n)
(0,n)
(1,n)
Medicamento
PacienteMédico
Prescrição
Consulta
Consultas
Figura 18: Entidade associativa. Fonte: Adaptada de Heuser (2008).
34
DIAGRAMA ENTIDADE-
RELACIONAMENTO
A construção do diagrama entidade-relacionamento 
envolve alguns passos:
a) Descrição detalhada das operações e a desco-
berta das regras de negócio de uma organização�
b) Identificação inicial das entidades, relaciona-
mentos principais e a construção de um diagrama 
entidade-relacionamento inicial�
c) Identificação de atributos, a determinação do atri-
buto determinante (chave primária) e a cardinalidade 
dos relacionamentos�
d) R e v i s ã o e a n á l i s e d o d i a g r a m a 
entidade-relacionamento�
Podcast 2 
Para a identificação das entidades, dos relaciona-
mentos e dos atributos nos diversos documentos que 
especificam os requisitos, podemos utilizar um con-
junto de regras estabelecidas por Peter Chen, quando 
da criação do modelo entidade-relacionamento e 
do diagrama entidade-relacionamento� Analisemos 
alguns exemplos dessas regras:
a) Entidades: são identificadas por substantivos.
b) Relacionamento: é identificado por verbos 
transitivos�
35
https://famonline.instructure.com/files/407281/download?download_frd=1
c) Atributos de uma entidade: são identificados por 
adjetivos�
d) Atributos de um relacionamento: são identifica-
dos por advérbios�
Quando da construção do diagrama entidade-relacio-
namento, normalmente se usa uma representação 
gráfica dos elementos do modelo entidade-relaciona-
mento proposta por Peter Chen. Observe a Figura 19.
Símbolo Significado
Tipo de Entidade
Tipo de Entidade-Fraca
Tipo de Relacionamento
Tipo de Relacionamento 
Identificador
Atributo
Atributo-Chave
Atributo Multivalorado
Atributo Composto
Atributo Derivado
Participação Total de E2 em R
Razão de Cardinalidade 1:N para 
E1:E2 em R
Restrição Estrutural (min, max) na 
participação de E em R
(min, max)
1
E1 E2
E1
R E
E2
R
R N
Figura 19: Resumo da notação gráfica proposta por Peter Chen. Fonte: 
Adaptada de Alves (2014).
36
As representações gráficas utilizadas neste texto 
correspondem às descritas por Heuser (2008) e 
que foram implementadas na ferramenta brModelo 
(Figura 20).
Conceito Símbolo
Tipo de Entidade
Relacionamento
Atributo
Atributo indicador
Relacionamento 
identificador
Generalização/ 
especialização
Entidade associativa
(U)
Figura 20: Resumo da notação gráfica utilizada. Fonte: Adaptada de 
Heuser (2008).
37
Duranteo processo de revisão e análise, existe a 
possibilidade da descoberta de novas entidades, atri-
butos e relacionamentos, que serão incorporados ao 
diagrama entidade-relacionamento existente� Dessa 
maneira, as atividades serão repetidas até que pro-
jetistas e usuários finais concordem que o diagrama 
entidade-relacionamento representa adequadamente 
a estrutura do banco de dados a ser implementado�
38
CONSIDERAÇÕES FINAIS
Neste texto, apresentamos uma visão geral sobre 
banco de dados com uma breve apresentação his-
tórica sobre os sistemas de arquivos e sistema de 
banco de dados� Estabelecemos conceitos básicos 
sobre dados, informação, banco de dados e sistemas 
de gerenciamento de banco de dados (SGBD), bem 
como a terminologia� Também apresentamos, sucin-
tamente, os tipos e arquiteturas de banco de dados 
e do conceito de abstração de dados (modelos con-
ceitual, lógico e físico). Nesse ponto, aproveitamos e 
descrevemos as fases do projeto de banco de dados�
Em relação à Modelagem Entidade-Relacionamento, 
apresentamos em detalhes seus principais elemen-
tos (entidade, relacionamento e atributos) e des-
crevemos breve e objetivamente os passos para a 
construção do diagrama entidade-relacionamento�
39
SÍNTESE
– Neste e-book, apresentamos uma breve visão histórica da evolução dos meios de 
armazenamento de dados, desde os primórdios das sociedades primitivas, passando 
por sistemas de arquivos e sistemas de banco de dados� Em seguida, abordamos 
conceitos importantes como dados, informação, banco de dados e sistemas de 
gerenciamento de banco de dados (SGBD), esclarecendo as diferenças entre eles�
– Estudamos, ainda, um conjunto de termos utilizados na área de banco de dados, os 
quais nos dão base para diversos assuntos tratados� Depois, os tipos e arquiteturas 
mais utilizados de banco de dados, bem como o conceito de abstração de dados 
(modelos conceitual, lógico e físico)�
– No projeto de banco de dados, fizemos uma breve apresentação das etapas para o 
desenvolvimento de um projeto de banco de dados� Finalizamos com a apresentação 
dos objetivos da utilização do modelo entidade-relacionamento e de seus 
componentes, visando à construção de diagramas entidade-relacionamento�
ESTRUTURA E 
MODELAGEM DE DADOS
MODELAGEM DE DADOS
Referências Bibliográficas 
& Consultadas
ALVES, W. P. Banco de Dados: teoria e desenvolvi-
mento. São Paulo: Érica, 2014.
ASCENCIO, A. F. G.; ARAÚJO, G. S. Estruturas 
de dados: algoritmos, análise da complexidade 
e implementações em JAVA e C/C++. São Paulo: 
Pearson Prentice Hall, 2010 [Biblioteca Virtual].
ELMASRI, R.; NAVATHE, S. B. Sistema de banco 
de dados. 6. ed. São Paulo: Pearson Addison-
Wesley, 2010 [Biblioteca Virtual].
GUIMARÃES, A. M.; LAGES, N. A. C. Algoritmos 
e estruturas de dados. Rio de Janeiro: LTC, 2008.
GUIMARÃES, C. C. Fundamentos de Bancos de 
Dados: modelagem, projeto e linguagem SQL. 
Campinas: Editora da Unicamp, 2003.
HEUSER, C. A. Projeto de banco de dados. 6. ed. 
Porto Alegre: Bookman, 2008 [Minha Biblioteca].
MEDEIROS, L. F.; Banco de dados: princípios e 
prática. Curitiba: InterSaberes, 2013 [Biblioteca 
Virtual].
PUGA, S.; FRANÇA, E.; GOYA, M. Banco de da-
dos: implementação em SQL, PL/SQL e Oracle 11g. 
São Paulo: Pearson Education do Brasil, 2013 
[Biblioteca Virtual].
RAMAKRISHNAN, R.; GEHRKE, J. Sistemas de 
gerenciamento de banco de dados. 3. ed. Porto 
Alegre: AMGH, 2008 [Minha Biblioteca].
ROB, P.; CORONEL, C. Sistemas de banco de da-
dos: projeto, implementação e gerenciamento. 8. 
ed. São Paulo: Cengage Learning, 2011.
TENENBAUM, A. M.; LANGSAM, Y.; 
AUGENSTEIN, M. J.; Estruturas de dados usando 
C. São Paulo: Pearson Makron Books, 2010.
	_GoBack
	INTRODUÇÃO
	BANCO DE DADOS: UMA VISÃO GERAL
	EVOLUÇÃO HISTÓRICA
	DADO, INFORMAÇÃO, BANCO DE DADOS E SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS
	Termos comuns em banco de dados
	Tipos de banco de dados
	Arquiteturas de banco de dados
	Abstração de Dados: Modelos Conceitual, Lógico e Físico
	PROJETO DE BANCO DE DADOS
	MODELO ENTIDADE-RELACIONAMENTO
	ENTIDADE
	Atributos
	Relacionamentos
	DIAGRAMA ENTIDADE-RELACIONAMENTO
	CONSIDERAÇÕES FINAIS
	Síntese

Continue navegando